Here is my first finding.
Can someone who reads 'C' code locate the code and investigate?
It looks suspicious to me because everywhere else, timestamps appear to be truncated in the usual way. Here, to make a PTS, FFmpeg is truncating _up_.

If N*3753.75 is an integer, it's used as PTS. But
if N*3753.75 is a decimal, the PTS becomes int(N*3753.75 + 1).

Here's the proof:
133559*3753.75+2854113=504201209.25
                  ____////////////
                 /////////¯¯¯¯¯¯¯
0,  504201210,  504201210,     3753,      608, 0xdece0f07

Frame 133559 is a B-frame near where I've joined two sections that have both been trimmed on both ends. I chose that frame for no particular reason.

The joined video and audio packet streams appear to be perfectly timestamped, but there is 3 frames of flashing
...black-black-picture-black-picture-black-picture-black-picture-picture...
at the join preceded by a 1 second jump in MPV.

I'm crawling through the framecrc listings of three videos:
The 'prefix' video that has been trimmed.
The 'suffix' video that has been trimmed.
The 'join' video after 'prefix' & 'suffix' have been joined.
Everything looks beautiful. Even the audio packets appear to be smoothly joined. But I'm crawling thorough it all checking everything. I stopped to compose this message because the truncations bother me.

I really need some assistance. This is insanely meticulous work.

--Mark.
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to