Я не уверен, что это не проблема XY, но вы можете сделать это, увеличив -loglevel
:
$ ffmpeg -loglevel debug -i video.mp4 -vf scale=800:-1 -vsync 0 output/thumbnail-%06d.png
[…]
[image2 @ 0x55f0164248c0] Opening 'output/thumbnail-000001.png' for writing
[file @ 0x55f0166c9f80] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x55f0166450c0] Statistics: 0 seeks, 1 writeouts
[rawvideo @ 0x55f016424440] PACKET SIZE: 230400, STRIDE: 960
[image2 @ 0x55f0164248c0] Opening 'output/thumbnail-000002.png' for writing
[file @ 0x55f0166ca680] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x55f0166c9c80] Statistics: 0 seeks, 1 writeouts
[rawvideo @ 0x55f016424440] PACKET SIZE: 230400, STRIDE: 960
[image2 @ 0x55f0164248c0] Opening 'output/thumbnail-000003.png' for writing
[file @ 0x55f0166cb000] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x55f0166cb100] Statistics: 0 seeks, 1 writeouts
При необходимости обработайте с awk
или подобным:
$ ffmpeg -loglevel debug -i video.mp4 -vf scale=800:-1 -vsync 0 output/thumbnail-%06d.png |& awk -F' ' '/Opening/ { print $5 }'
output/thumbnail-%06d.png.
'output/thumbnail-000001.png'
'output/thumbnail-000002.png'
'output/thumbnail-000003.png'
Это плохой, ленивый awk
пример, но он даст вам хотя бы идею. Возможно, стоит добавить tee
, чтобы вы также могли получить полный вывод stderr.