[FFmpeg-user] framecrc
Mark Filipak
markfilipak.imdb at gmail.com
Sun Nov 12 09:36:11 EET 2023
Previous Subject: "rewrite tags in a source's PES headers -- How?"
On 11/11/23 13:41, Paul B Mahol wrote:
> On Sat, Nov 11, 2023 at 7:29 PM Mark Filipak <markfilipak.imdb at gmail.com>
> wrote:
>
>> Here's what I'm doing:
>> -bsf:v setts=time_base=1/24000:pts=N*1001:dts=N*1001
>>
>> Here's the result:
>> frame pts dts
>> 0 0 2002 <= should be 0
>> 1 3003 <= should be 1001 3003 <= should be 1001
>> 2 4004 <= should be 2002 4004 <= should be 2002
>> 3 2002 <= should be 3003 5005 <= should be 3003
>> 4 5005 <= should be 4004 6006 <= should be 4004
>> 5 1001 <= should be 5005 7007 <= should be 5005
>> 6 8008 <= should be 6006 8008 <= should be 6006
>> 7 9009 <= should be 7007 9009 <= should be 7007
>> 8 7007 <= should be 8008 10010 <= should be 8008
>> 9 10010 <= should be 9009 11011 <= should be 9009
>> 10 6006 <= should be 10010 12012 <= should be 10010
>> 11 13013 <= should be 11011 13013 <= should be 11011
>> 12 12012 <= should be 12012 14014 <= should be 12012
>> 13 14014 <= should be 13013 15015 <= should be 13013
>> 14 11011 <= should be 14014 16016 <= should be 14014
>> 15 17017 <= should be 15015 17017 <= should be 15015
>> 16 18018 <= should be 16016 18018 <= should be 16016
>>
>> The source video is 'NTSC'-soft.
>> Can this be explained?
>> Can it be countered?
>>
>> PTSs in frames 1..5 are +2 +2 -1 +1 -4
>> PTSs in frames 6..10 are +2 +2 -1 +1 -4
>> PTSs in frames 11..15 are +2 +0 +1 -3 +2
>> I'm baffled.
>>
>
> N is packet number, and it goes in different order.
Oh, yes, out of order/out of sequence.
> Can be confirmed with:
>
> ffmpeg -i <video> -c copy -f framecrc -
Thank you, Paul. Good of you. How do I interpret the framecrc table?
stream_index packet_duration
| packet_dts | packet_size
| | packet_pts | | 0xCRC
| |________ |_________________ |___ |____ |_________
1 0 0 2880 768 0xb16c8010
1 2880 2880 2880 768 0x1b728309
1 5760 5760 2880 768 0x966977f8
1 8640 8640 2880 768 0x6e078511
0 10878 22890 3003 62500 0x5877c6d3
1 11520 11520 2880 768 0xe49b880c
[framecrc@ 0000000002a9b140] Timestamps are unset ... stream 0 ...
1 14400 14400 2880 768 0x0a217046
0 15382 15382 3003 18300 0xd4f063a2 F=0x0
1 17280 17280 2880 768 0xc13a7e27
0 18385 18385 4504 17924 0x14ae7839 F=0x0
1 20160 20160 2880 768 0x91017a25
0 22890 0x8000000000000000 4504 37160 0xa54ad420 F=0x0
1 23040 23040 2880 768 0xcd087be2
0 25893 25893 4504 18920 0x6230931b F=0x0
1 25920 25920 2880 768 0xca8a79b6
1 28800 28800 2880 768 0x1d5e7a84
0 30398 30398 3003 17172 0xebbc5af9 F=0x0
1 31680 31680 2880 768 0x1c3e7f7d
0 33401 0x8000000000000000 3003 33636 0x2bf50e31 F=0x0
1 34560 34560 2880 768 0x815d7b63
1 37440 37440 2880 768 0x1ac6762d
0 37905 37905 3003 16144 0x5fabbc96 F=0x0
1 40320 40320 2880 768 0x7e2f8d29
0 40908 40908 4504 14960 0xe0a8abb9 F=0x0
1 43200 43200 2880 768 0x951c8f4c
0 45412 0x8000000000000000 4504 34072 0x6bf61d8c F=0x0
1 46080 46080 2880 768 0xf42e82a7
0 48415 48415 4504 14788 0xcc5c4f38 F=0x0
: : : : : :
0 136171401 136171401 3003 23924 0xe65b80f5 F=0x0
1 136172160 136172160 2880 768 0x3b687c8c
0 136174404 0x8000000000000000 3003 52328 0x7a17da08 F=0x0
0 136178908 136178908 3003 23932 0x5bee6d60 F=0x0
0 136181911 136181911 4504 23452 0xc4a6eb3a F=0x0
Why is the above so different from the packets VOBEdit shows and that I manually parse?
I thought all VOB packets were 2048 bytes.
Are the packets above a different type of packet?
The video is 'NTSC'-soft (24/1.001fps). '3003' means ffprobe 'sees' 30/1.001fps.
How can I stop the decoder doing telecine?
Cheers
--Mark.
More information about the ffmpeg-user
mailing list