【问题标题】:Win/ffmpeg - How to generate a video from images under ffmpeg?Win/ffmpeg - 如何从 ffmpeg 下的图像生成视频?
【发布时间】:2018-08-15 09:18:51
【问题描述】:

我知道这很有可能是相同问题的重复,但我没有得到它的工作。那么如何在windows下生成带有h265编解码器和30fps的一堆图像的mp4视频。

到目前为止,我所做的是尝试从这篇文章中得到这个答案:

Duplicate Question

如果我试试这个:

 C:\\ffmpeg-3.4.2-win64-static\\bin\\ffmpeg -r 1/5 -i img%%03d.jpg -c:v libx264 -vf fps=25 -pix_fmt yuv420p out.mp4

我得到以下输出:

img%%03d.jpg:没有这样的文件或目录

我的文件名是这样的:

img0001.jpg / img0002.jpg 直到 img0030.jpg

所以也许我的文件名语法错误 - 我只是不知道...

我也试过这个命令:

C:\\ffmpeg-3.4.2-win64-static\\bin\\ffmpeg -framerate 29 -pattern_type glob -i img%%03d.jpg -c:v libx265 -crf 28 -c:a aac -b:a 128k output.mp4

但我得到了同样的错误..

请帮帮我,我不是很喜欢这个 ffmpeg 的东西,需要建议!

也许你也可以告诉我如何在 ffmpeg 参数中设置图像目录。

谢谢你和问候!

【问题讨论】:

    标签: image video syntax ffmpeg libx265


    【解决方案1】:

    使用

    ffmpeg -framerate 30 -i "img%04d.jpg" -c:v libx265 -crf 28 output.mp4
    

    由于您的编号有四位数字 (0001..),因此您需要 %04d。

    根据您执行此命令的方式,您可能需要转义 %

    -pattern_type glob 申请通配符匹配,但您的文件名模板是平滑编号序列,因此在此上下文中不正确。

    【讨论】:

    • 您的命令完成了这项工作!谢啦!只是将 03d 更改为 04d 没有工作,我还必须删除 -patter_type glob .. 谢谢伙计!
    • 是否可以选择给 ffmpeg 一个具有原始比特率的参数?不只是 -crf 0 -51 个阶段?
    • 原始码率?如果您只是指目标比特率 - 然后使用 -b:v VALUE 并删除 crf。
    • 我有一个输入视频,我在特定帧中进行了修改,现在我只想用与输入比特率相同的值以原始质量将其写回...我将 -b:v VALUE 给出一个尝试!请让我再问一个问题 - 这是从修改后的输入视频生成视频的最佳方法吗?我真的很感谢你的帮助!谢谢
    • 原始比特率是现代编码器视频再压缩中的红鲱鱼。足够低的 CRF 值(通过主观评估或使用视频质量测量过滤器(如 SSIM)得出)是可行的方法。除非您执行真正的无损编码,否则所有重新编码都会导致一些代损失,这没关系。现代视频编解码器的重点在于,并非所有数据在感知上都很重要,因此它们旨在忽略不重要的数据并保留重要的数据。
    【解决方案2】:

    您需要使用 img%%04d.jpg 而不是 img%%03d.jpg,因为您的文件名包含 4 位数字。

    【讨论】:

    • 如果我能以我的等级投票我会的,因为这种改变也是必要的!谢谢!如果我升级并记住,我会回来的。
    猜你喜欢
    • 2017-12-10
    • 2023-01-30
    • 2021-12-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多