[FFmpeg-user] Force target DTS == source DTS -- How?

Mark Filipak markfilipak.imdb at gmail.com
Thu Jan 11 00:28:25 EET 2024


On 1/10/24 16:50, Devin Heitmueller wrote:
> On Wed, Jan 10, 2024 at 4:26 PM Mark Filipak <markfilipak.imdb at gmail.com> wrote:
>> The change from 1048560 to 1174560 has to be happening inside the muxer, wouldn't you say? We now
>> know that what's going into the muxer is right. Here is what went to the target file in the last run:
>>
>> 0,    1170806,    1174560,     3753,   640646, 0x900a1a7a, S=1,        1
> 
> Try setting -muxdelay 0 on the output options.  If not specified it
> defaults to 0.7, and the delta between 1174560 and 1048560 is exactly
> 1.4 seconds.  I don't know why you're getting exactly 2x the mux delay
> rather than just being off by 0.7s, but I suspect it's the muxdelay
> that is causing you to get PTS values which are not what you would
> expect.

Devon, you're a lifesaver. That did it. Look:

0,    1044806,    1048560,     3753,   640646, 0x900a1a7a, S=1,        1

So, to summarize, I needed '-copyts' before '-i' and '-muxdelay 0' after '-i'. Is there any reason I 
should _not_ make those permanent and do them every time?

Thanks so much for your help. I could _never_ have done that on my own. Now that there's fewer 
moving parts, I can maybe make more progress in my main task: Towards better trims & concatenations. 
But first, I have about 30 work files to delete.

-- Mark.



More information about the ffmpeg-user mailing list