* Bo Berglund on Friday, July 09, 2021 at 08:14:28 +0200:
<ffmpeg-user@ffmpeg.org> wrote:
It did. See the line I highlighted above. All you need to do now is
something like filter the output of ffmpeg like:

ffmpeg -i bluearrow.mp4 -vf "freezedetect=n=0.01:d=5" -map 0:v:0 -f null - | 
grep -q 'lavfi.freezedetect.freeze_start: '
nofreeze=$?

I tested the command using two different video snippets as input (with and
without the blue arrow) and the screen output shows the line:

[freezedetect @ 0x555be8939800] lavfi.freezedetect.freeze_start: 0
for *only* the bluearrow.mp4 video so this is a step forward!

However, the grep command does the same (nothing) in both cases!

ffmpeg writes the log output to stderr, so redirect it to stdout:

ffmpeg -i bluearrow.mp4 -vf "freezedetect=n=0.01:d=5" -map  0:v:0 -f null - 
2>&1 | grep -q 'lavfi.freezedetect.freeze_start: '

I tested by replacing the | grep ... stuff with a redirect to file instead
ffmpeg -hide_banner -i bluearrow.mp4 -vf "freezedetect=n=0.01:d=5" -map 0:v:0 -f
null -  > freezeoutput.txt

This showed the same screen output but the freezeoutput.txt file is created but
is empty!
So grep has no chance of ever detecting anything....

See above.

But for writing the log into a file look into ffmpeg's -report option, that's what it's for.

--
LAST SHIP HOME                      --->> https://lastshiphome.de
Official Selection                          DOK.fest München 2018
German Ocean Film Award                        CineMare Kiel 2019
Best Documentary Feature   Wales International Film Festival 2020
_______________________________________________
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