FFMPEG Image2pipe产生破碎的视频

时间:2017-09-25 03:35:50

标签: video ffmpeg pipe image2pipe

我正在尝试编写一个程序,将PNG数据传输到FFMPEG中以将其呈现为视频。该程序的视频输出无效,因此我使用PNG屏幕截图作为调试输入。

屏幕截图是在任何图像查看器中正常打开的所有有效PNG文件。但是当我运行命令时:

cat 2017*.png | ./ffmpeg -f image2pipe -r 1 -vcodec png -i - -vcodec libx264 out.mp4

我确实从目录中的2017年开始的每个屏幕截图中获得了一段视频输出。但是,视频完全是黑色的,并且在开始播放视频后立即立即。 (每帧不是一秒或帧)。

这是在Windows上的MSYS,使用Windows版本的FFMPEG,如果它有任何区别。

我可以更改哪些内容实际上可以通过管道输入制作视频?我的第一个猜测是它可能与错误的args或缺少适当的编解码器有关。

1 个答案:

答案 0 :(得分:5)

cat 2017*.png | ./ffmpeg -f image2pipe -framerate 1 -i - -c:v libx264 -vf format=yuv420p -r 25 out.mp4
  • 使用-framerate输入选项代替-r for image2pipe demuxer。

  • 很多玩家都遇到如此低帧率的MP4。添加-r输出选项以使其具有更正常的输出速率。 ffmpeg会复制要匹配的帧,但它仍然看起来好像是1 fps。

  • 添加-vf format=yuv420p(或别名-pix_fmt yuv420p)以使输出使用广泛兼容的像素格式。