ffmpeg-waveform.png:无效参数

ffmpeg-waveform.png:无效参数

我正在尝试在带有 DSM 6.2 的 Synology NAS 上使用 ffmpeg 来创建我的 mp4 文件的波形。

ffmpeg -i aaa.mp4 -lavfi showwavespic=split_channels=1:s=1024x800 waveform.png

[NULL @ 0x24271e0] Unable to find a suitable output format for 'waveform.png' waveform.png: Invalid argument

ffmpeg -i aaa.mp4 -lavfi showwavespic=split_channels=1:s=1024x800 waveform.avi

运行良好,播放 wave.avi 时我可以看到波形

ffmpeg version 2.7.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (crosstool-NG 1.20.0) 20150311 (prerelease)
  configuration: --prefix=/usr --incdir='${prefix}/include/ffmpeg' --arch=i686 --target-os=linux --cross-prefix=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu- --enable-cross-compile --enable-optimizations --enable-pic --enable-gpl --enable-shared --disable-static --enable-version3 --enable-nonfree --enable-libfaac --enable-encoders --enable-pthreads --disable-bzlib --disable-protocol=rtp --disable-muxer=image2 --disable-muxer=image2pipe --disable-swscale-alpha --disable-ffserver --disable-ffplay --disable-devices --disable-bzlib --disable-altivec --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libmp3lame --disable-vaapi --disable-decoder=amrnb --disable-decoder=ac3 --disable-decoder=ac3_fixed --disable-encoder=zmbv --disable-encoder=dca --disable-encoder=ac3 --disable-encoder=ac3_fixed --disable-encoder=eac3 --disable-decoder=dca --disable-decoder=eac3 --disable-decoder=truehd --cc=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ccache-gcc --enable-yasm --enable-libx264 --enable-encoder=libx264
  libavutil      54. 27.100 / 54. 27.100
  libavcodec     56. 41.100 / 56. 41.100
  libavformat    56. 36.100 / 56. 36.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.100 /  1.  2.100
  libpostproc    53.  3.100 / 53.  3.100

怎么了?谢谢。

答案1

尽管有上述评论,但单个图像甚至图像序列仍可能会被写出*。

ffmpeg -i aaa.mp4 -lavfi showwavespic=split_channels=1:s=1024x800 -c:v png -vframes 1 -f rawvideo waveform.png

由于图像编码器生成完整的包,因此多路复用器在这里是有点多余的。

对于序列,输出选项类似于下面的选项,

ffmpeg -i aaa.mp4 -c:v png -segment_time 0.01 -f segment images%d.png

*未经测试旧版本的 FFmpeg < 4.0。

相关内容