[FFmpeg-devel] [PATCH v2 2/2] ffmpeg: add option -isync

Gyan Doshi ffmpeg at gyani.pro
Fri Jul 1 14:03:04 EEST 2022

On 2022-07-01 03:33 pm, Anton Khirnov wrote:
> Quoting Gyan Doshi (2022-06-25 10:29:51)
>> This is a per-file input option that adjusts an input's timestamps
>> with reference to another input, so that emitted packet timestamps
>> account for the difference between the start times of the two inputs.
>> Typical use case is to sync two or more live inputs such as from capture
>> devices. Both the target and reference input source timestamps should be
>> based on the same clock source.
> If both streams are using the same clock, then why is any extra
> synchronization needed?

Because ffmpeg.c normalizes timestamps by default. We can keep 
timestamps using -copyts, but these inputs are usually preprocessed 
using single-input filters which won't have access to the reference 
inputs, or the merge filters like e.g. amix don't sync by timestamp.

What this option does is allow keeping 0-start timestamps but offset the 
target input relatively. Then it's possible to filter/merge in sync.


More information about the ffmpeg-devel mailing list