ffmpeg将图片合成为视频常用参数介绍

这篇具有很好参考价值的文章主要介绍了ffmpeg将图片合成为视频常用参数介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

FFmpeg系列文章目录



前言

使用ffmpeg将图片合成为视频,一些常用命令参数介绍。


使用ffmpeg将图片合成为视频

本文介绍如何使用ffmpeg将大量图片拼接成一个视频,并介绍其中一些常用参数的含义。

使用ffmpeg将图片拼接成视频前,需要将图片文件名做下预处理,文件名中必须有数字将其次序标记出来,这里我直接使用文件名+时间戳将图片重命名,如下:
图片合成视频的命令,FFmpeg,h.265,h.264,ffmpeg直接使用命令ffmpeg -f image2 -i %d.jpeg output.mp4 就可以将其转为mp4视频,命令中的%d是数字编号占位符,ffmpeg会按次序加载*.jpeg做为输入。这里我们没有指定如何其他参数,所以ffmpeg使用了默认的参数,比如帧率是25fps,视频使用了h264编码,分辨率直接使用了图片原始分辨率……

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.76.100
  Duration: 00:00:10.00, start: 0.000000, bitrate: 28144 kb/s
  Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/unknown/unknown), 2816x2160 [SAR 1:1 DAR 176:135], 28141 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]

我们可以调整其参数,生成更符合我们需求的视频,下面介绍下几个常见的参数。

-r 调整帧率

不指定帧率的话,ffmpeg会使用默认的25帧,也就是1秒钟拼接25张图片,我们可以通过调整帧率的大小来控制最终生成视频的时长。

ffmpeg -r 10 -f image2 -i %d.jpeg output1.mp4

如上命令每秒会拼接10张图片,250张图片最终会生成25秒的视频。
这里需要注意-r 10 参数的位置,在-i %d.jpeg前面和在后面的效果是不一样的。放在-i后面只会改变输出的视频帧率,而输入的还是默认值25 ,比如ffmpeg -f image2 -i %d.jpeg -r 10 output1.mp4,250张图片依旧只会生成10s的视频,但视频的播放征率会减小到10。

-b:v 调整视频码率

-b:v bitrate of video。如果原始图片比较大,默认参数生成的视频大小会比较大。比如上文中我使用的图片都是2k的高清图,最终生成的10s视频就有35MB,码率有近30Mb/s(码率是只1s播过的数据量,注意这里单位是小b)。

ffmpeg -r 10 -f image2 -i %d.jpeg -b:v 4M output2.mp4

这里额外提醒下,改变码率会影响到视频清晰度,但并不意味着高码率的视频一定比低码率的视频清晰度更高,这还取决于视频编码格式,比如h265编码可以用更小的码率生成h264同等的视频质量,像av1、v8、v9等编码也优于h264。

-crf 调整视频质量

-crf Constant Rate Factor,用以平衡视频质量和文件大小的参数,FFMPEG里取值范围为0-51,取值越高内容损失越多,视频质量更差。 ffmpeg的默认值是23,建议的取值范围是17-28。

ffmpeg -r 10 -f image2 -i %d.jpeg output3.mp4

-c:v 调整视频的编码格式

-c:v codec of video。目前ffmpeg针对于mp4默认使用的是h264,你可以使用-c:v libx265生成同等质量,但文件更小的h265视频。

ffmpeg -f image2 -i %d.jpeg -c:v libx265 output4.mp4

output4.mp4相比于上文中生成的output.mp4,视频文件大小减少了60%,但视频质量不变。你也可以使用-c:v libvpx -c:v libvpx-vp9分别生成v8和v9编码的webm文件。

ffmpeg -f image2 -i %d.jpeg -c:v libvpx output-v8.webm #注意webm默认生成的是低质量的视频,可使用-crf或者-b:v参数调整视频质量。

-vf scale 调整视频分辨率

-vf scale: Video Filter Scale

ffmpeg -f image2 -i %d.jpeg -s 640x480 output5.mp4

上面的命令会将视频直接调整为640x480的分辨率,如果原始图片不是4:3 肯定是会对原始图像做拉伸的。可以使用下面的命令等比例缩放

ffmpeg -f image2 -i %d.jpeg -vf scale=-1:480 output5.mp4 #-1表示比例缩放,也可-vf scale=640:-1固定宽度缩放高度

以上就是几个常用的参数,这几个参数不仅限于图片转视频,视频转视频时也可以使用。文章来源地址https://www.toymoban.com/news/detail-626832.html


到了这里,关于ffmpeg将图片合成为视频常用参数介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FFmpeg最常用命令参数详解及应用实例

    FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器,提供了录制、转换以及流化音视频的完整解决方案。 ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件] ffmpeg [[ options ][ -i input_file ]]... {[

    2024年01月24日
    浏览(36)
  • 音视频 ffmpeg命令图片与视频互转

    截取一张图片 转换视频为图片(每帧一张图): 图片转换为视频: 从视频中生成GIF图片 将 GIF 转化为 视频 推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家: 零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核) https://xxetb.xet.tech/s/VsFMs

    2024年02月10日
    浏览(40)
  • 【FFmpeg】ffmpeg 命令行参数 ⑧ ( 使用 ffmpeg 转换封装格式 | 音视频编解码器参数设置 | 视频 帧率 / 码率 / 分辨率 设置 | 音频 码率 / 采样率 设置 )

    音视频 文件 从 采样 - 处理 - 得到原始数据帧队列 - 音视频编码 - 音视频包队列 - 格式封装 的过程如下 : 封装格式 参考 【音视频原理】音视频 “ 采样 - 编码 - 封装 过程 “ 和 “ 解封装 - 解码 - 播放 过程 “ 分析 ( 视频采集处理流程 | 音频采集处理流程 | 音视频文件解封装

    2024年04月17日
    浏览(63)
  • FFMPEG常用命令 音视频合并

            目录 一、音频合并 1.获取音频时长 2.合并两段音频 3.合并音频插入空白 二、视频加背景图 三、音视频合成 1.保留视频声音 2.不保留视频声音 四、合并视频         本文将用几个实例,介绍ffmpeg命令的综合使用,主要涉及音频处理、视频处理和音视频合成。 参数

    2024年02月10日
    浏览(59)
  • 【FFmpeg】ffmpeg 命令行参数 ⑦ ( 使用 FFmpeg 提取 PCM 音频数据 | PCM 音频格式 | 提取 PCM 音频格式常用参数 | 查询文档方法 )

    PCM 全称 \\\" Pulse Code Modulation \\\" , 脉冲编码调制 , 该 音频数据 是未经压缩的 采样裸数据 , 只有 知道该数据的 采样率 / 采样位数 / 通道数 才能将该音频数据播放出来 ; PCM 数据是 最原始的音频数据 , 音频内容完全无损 , 但是 PCM 数据体积庞大 , 对 PCM 音频数据压缩 分为 无损压缩

    2024年04月11日
    浏览(41)
  • 音视频学习之ffmpeg常用基础命令整理

    基于windows环境安装好必要的ffmpeg后,对ffmpeg基础命令进行一些了解:   有时候写入MP4文件会不成功,改成flv就好 1:视频裁剪:   2:文字水印: 编译的时候需要支持 FreeType、FontConfig、iconv,系统中需要有相关的子库, 在 FFmpeg 中增加纯字母水印可以使用 drawtext 滤镜进行支持

    2024年02月12日
    浏览(34)
  • ffmpeg 将多个视频片段合成一个视频

    网络视频 6 分钟的诅咒。 新建文本文件 filelist.txt 单引号内是视频片段名字,如果文件名有奇怪的字符,要在 filelist.txt 中转义。 ffmpeg -f concat -i filelist.txt -c copy output_set.mp4 [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

    2024年04月11日
    浏览(25)
  • ffmpeg2段视频合成一段

    都是在帧率和分辨率以及编码器相同的情况下 ffmpeg -i \\\"concat:input1.mp4|input2.mp4\\\" -c copy output.mp4 这种是不知道为什么尝试了很久,都只能生成一个视频,合成出来的结果不对,必须用txt来弄。 而得  file.txt file \\\'rs.mp4\\\' file \\\'rs2.mp4\\\' 然后代码得 ffmpeg -f concat -i \\\"file.txt\\\" -c:v copy ttt3.mp4

    2024年02月16日
    浏览(23)
  • 【音视频】基于ffmpeg对视频的切割/合成/推流

    基于FFmpeg对视频进行切割、合成和推流的价值和意义在于它提供了一种高效、灵活且免费的方式来实现视频内容的定制、管理和分发。通过FFmpeg,用户可以轻松地剪辑视频片段,根据需要去除不必要的部分或提取特定时间段的内容,从而优化观看体验和提高内容的价值。视频

    2024年01月18日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包