Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
6th December 2023, 23:10 | #1 | Link |
Registered User
Join Date: Apr 2006
Posts: 137
|
Understanding ffmpeg output for corrupted files
I've heard a suggestion to use ffmpeg for verifying file integrity. I have a couple questions about it. I am lost in the multitude of params the program takes.
Can I get a position in the stream where the error is detected either as time or bytes? Can I get a report about multiple errors per stream? It seems report only one error. The number in square brackets it gives for what looks like the position keeps changing with multiple invocations. It also seems to print this stuff above other grey text on Windows, which is probably OK. ffmpeg-git\ffmpeg -i acorrupted.ac3 -f null NUL [ac3 @ 00000000005d2680] error decoding the audio block ..... [ac3 @ 00000000004d2680] error decoding the audio block ... [ac3 @ 00000000005c2680] error decoding the audio block |
11th December 2023, 19:23 | #2 | Link | |
Registered User
Join Date: Aug 2013
Posts: 191
|
Quote:
Something I whipped up some time back. I used -v error. Code:
:: ffmpeg check to see if a video is good :: SjB :: 05/23/2019 @echo off echo. echo CHECKING VIDEO FOR ERRORS: echo %1 if [%2] NEQ [] echo [Output to screen only.] echo. pause echo. if [%2] NEQ [] goto 2screenonly @echo on ffmpeg -i "%~1" -v error -f null - 2>&1 | tee "%~1_ERROR.log" echo DONE >> "%~1_ERROR.log" pause exit :2screenonly @echo on ffmpeg -i "%~1" -v error -f null - 2>&1 echo DONE pause :exit :do NOT (specifically) exit, rather just do "nothing" :such that the command prompt window simply "exits" rather then closes |
|
12th December 2023, 01:22 | #3 | Link |
Registered User
Join Date: Apr 2006
Posts: 137
|
"-v error" is useful for suppressing other text output. But when doing a batch of multiple files, the output doesn't include the names. Or anything else apart from the error.
Yes, the "timecode" changes for the same input file. It does sometimes report more than 1 error, and then the number is the same for all errors, which means it is unfortunately not a position in the file. It seems ffmpeg only finds some errors that are in critical places in the bitstream. |
|
|