On 8/28/20, Michael Koch <[email protected]> wrote: > Am 28.08.2020 um 11:25 schrieb Edward Park: >> Hello, >> >> I am not confident about this info but I've always thought the timebase is >> usually the reciprocal of the framerate *or smaller*. As in, the duration >> of a frame can be represented accurately enough as the difference between >> the timestamps, which aren't counted using seconds, but "ticks" in >> whatever timebase. So smaller fractions could be used as the timebase as >> long as the system is capable, and on the other hand, when you create >> low-fps video like 4fps, obviously the timebase isn't going to be 1/4, >> it'll probably have the same timebase as any other export. (I think of it >> as an analog wall clock, except it doesn't go tick-tock every second, it >> goes tick-tock every 1/90000 seconds.) >> >> Actually, I think for the codec timebase, it is more common for it to be >> 1/2 the reciprocal of the frame rate; if that's codec-specific, I don't >> know why that is. Maybe you've also seen some setpts examples where you >> divide/multiply something by 2 for some arcane reason? Hopefully someone >> can explain further.. >> >> When you delay some frames by whatever amount, it necessarily effects a >> change in the frame rate (but not the timebase). I'm not sure where the FR >> value for setpts comes from, maybe it wouldn't matter if it stays the same >> as the nominal framerate if indicated by the media, but if it is something >> that can change, maybe the effective rate at the end of the chain, >> obviously it wouldn't work as expected. >> >> Just for the sake of curiosity, what has you looking to delay frames using >> setpts? I feel there are easier methods. > > Let's assume the framerate is constant. For example, I want to delay a > video by 5 frames and then hstack the original video and the delayed > version: > > ffmpeg -i test.mp4 -vf > "split[a][b];[b]setpts=PTS+5/(FR*TB)[c];[a][c]hstack" -y out.mp4 > > Are there other / better / easier methods to do the same thing? >
Yes, not using split filter, but using "-i test.mp4" twice. Should generally use less memory for big offsets. > Michael > > _______________________________________________ > ffmpeg-user mailing list > [email protected] > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > [email protected] with subject "unsubscribe". _______________________________________________ ffmpeg-user mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
