MediaArea / MediaInfoLib

Convenient unified display of the most relevant technical and tag data for video and audio files.
https://mediaarea.net/MediaInfo
BSD 2-Clause "Simplified" License
634 stars 175 forks source link

frame crc tests in ffv1 #515

Open dericed opened 7 years ago

dericed commented 7 years ago

With this sample (using the noise bitstream filter) I expect the output to have an invalid frame crc reported.

ffmpeg -f lavfi -i testsrc2=s=120x80 -f lavfi -i sine -c:a flac -ar 8000 -vframes 2 -c:v ffv1 -level 3 -slicecrc 0 -bsf:v noise=0.1 -c:a flac -g 1 -y FFV1-FRAME-CRC-VALID.mkv

however the output of mediaconch -mi -mt -fx FFV1-FRAME-CRC-VALID.mkv

includes:

<data offset="505" name="ec">0</data>
<data offset="505" name="intra">1</data>
<data offset="543" name="CRC-32">1581863383</data>
JeromeMartinez commented 7 years ago

With this sample (using the noise bitstream filter) I expect the output to have an invalid frame crc reported.

You are fuzzing the frame, then test the ConfigurationRecord (which is still OK).

-slicecrc 0

Incompatible with "invalid frame crc reported", there is no CRC to check so no invalid CRC.


I see that I reject the ConfigurationRecord completely without informing that the CRC is wrong in case hte CRC is wrong, I'll modify the output (currently nothing displayed) to a "NOK" CRC one.

JeromeMartinez commented 7 years ago

(in other words, "FFV1-SLICE-crc_parity - crc_parity" is fine IMO but I first need to improve "FFV1-HEADER-crc_parity - crc_parity")

JeromeMartinez commented 7 years ago

In relation with https://github.com/MediaArea/MediaInfoLib/pull/517.