使用ffmpeg制作每第N个标记图像(.png)的视频(.mp4)

2024-09-23 22:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个图像文件,格式从数字10000开始,每500步一次,如这里所示"Qen_10000.png, Qen_10500.png, Qen_11000.png, Qen_11500.png..."Qen_80500.png

我想把它们结合起来制作一个视频

我试过ffmpeg -r 5 -i Qen_%1d000.png video.mp4和其他一些组合,但是每10000个数字就有一个。你知道吗

我也试过ffmpeg -start_number 10000....,但它显示了无法识别的选项。你知道吗

/usr/bin/ffmpeg -start_number 10000 -r 1 -i   Qen_distribution_*.png  video.mp4
    FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers
      built on Jan 29 2012 23:55:02 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51)
      configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-avfilter-lavf --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab
      libavutil     50.15. 1 / 50.15. 1
      libavcodec    52.72. 2 / 52.72. 2
      libavformat   52.64. 2 / 52.64. 2
      libavdevice   52. 2. 0 / 52. 2. 0
      libavfilter    1.19. 0 /  1.19. 0
      libswscale     0.11. 0 /  0.11. 0
      libpostproc   51. 2. 0 / 51. 2. 0
Unrecognized option 'start_number'

请提出一些选择。非常感谢。你知道吗


Tags: numberpngenableusrvideo图像文件数字start
2条回答
  1. 你的ffmpeg太老了。你应该更新。要么compile要么download把它放在/usr/local/bin

  2. 使用glob模式,如image file demuxer文档中所述。你知道吗

    ffmpeg -framerate 5 -pattern_type glob -i "*.png" -r 25 -vf format=yuv420p -movflags +faststart output.mp4
    
    • 有些玩家可能会拒绝播放如此低的帧速率。在这种情况下,增加-framerate值,或者添加-r 25(或者任何对您的播放器有效的值)作为输出选项。

    • 使用图像文件解复用器时,使用-framerate而不是-r作为输入帧速率。

    • 输出yuv420p像素格式以实现兼容性。

    • 如果通过渐进式下载演示视频,请添加-movflags +faststart

    • 如果得到not divisible by 2,则添加缩放过滤器:"scale=trunc(in_w/2)*2:trunc(in_h/2)*2,format=yuv420p"

尝试使用-pattern_type glob。比如说:

ffmpeg -r 5 -pattern_type glob -i "Qen_*.png" video.mp4

-i参数周围的引号对于防止shell扩展glob而不是ffmpeg非常重要。你知道吗

您可以在wikibooks about ffmpeg中阅读有关全局和文件顺序的更多信息

相关问题 更多 >