我们在将多种格式的视频转换成flv格式的时候,我们关注的就是转换后的flv视频的品质和大小。下面就自己的实践所得来和大家分享一下,主要针对avi、3gp、mp4和wmv四种格式来进行分析。通常在使用ffmpeg进行视频转换的时候我们使用到的控制音视频的主要参数有如下:

-ab      bitrate      设置音频码率

-acodec  codec        使用codec编解码

-ac      channels     设置通道,缺省为1

-ar      freq         设置音频采样率

-r       fps          设置帧频,缺省25

-b       bitrate      设置比特率,缺省200kb/s

-qscale  6或4         使用动态码率来设置    对于其他诸如-i、-y、-s等参数基本上都是可以很好理解的了。我们上面提到的几个参数前四个主要是用来设置音频的,后三个主要是用来设置视频的。对于音频的ar(采样率)可以指定为22050、24000、44100或48000,一般来将后两种比较常见;对于音频的ab(码率)一般是选择32、64、96或128这几种;对音频的acodec则是指定编码方式,可以指定为libmp3lame或aac等,这两种分别是指使用mp3和aac格式的音频。在实际的测试过程中我发现在使用mp3进行音频编码时指定ab为64或更高和指定ar为22050或更高对实际的视频音质没有什么大的影响,请参见后面的测试结果。

对于视频的r用来指定帧频,一般设置为29.97;对于视频的b(视频的比特率)可以指定如128、314等数字,对于1500以上则没有效果;对于视频的qscale,属于动态码率,可以设置为4或6,4的质量比6的要高。在测试的过程中我发现设置-b参数对视频的质量并没有过大的改变(指定大指定小都差不多或是一样),而设置qscale则完全不一样,如果我们想获取高品质的话应该使用动态码率而不是指定-b参数,当然了,使用动态码率的坏处就是视频的体积变大了。在使用动态码率的时候使用6的效果和4差不多,但是体积减少了,因此通常建议使用6来设置动态码率。

上面介绍了转换过程中的音视频的配置参数,综合上面,我们在转换的时候通常的命令如下:

高品质:ffmpeg -i infile -ab 128 -acodec libmp3lame -ac 1 -ar 22050 -r 29.97 -qscale 6 -y outfile

低品质:ffmpeg -i infile -ab 128 -acodec libmp3lame -ac 1 -ar 22050 -r 29.97 -b 512 -y outfile

使用这两个命令测试四种格式的视频结果如下,同时在测试的过程中会改变相应的参数进行测试,四个视频的信息如下:

AVI格式的:test.avi      14.1M

3GP格式的:test.3gp      4.30M

MP4格式的:test.mp4      16.4M

WMV格式的:test.wmv      15.0M

1.使用高品质的脚本测试结果如下:

AVI格式转换后的:-qscale 6结果=avi_01.flv   6.61M      -qscale 4结果=avi_02.flv   9.30M

3GP格式转换后的:-qscale 6结果=3gp_01.flv   4.21M      -qscale 4结果=3gp_02.flv   5.30M

MP4格式转换后的:-qscale 6结果=mp4_01.flv   13.1M      -qscale 4结果=mp4_02.flv   17.5M

WMV格式转换后的:-qscale 6结果=wmv_01.flv   15.9M      -qscale 4结果=wmv_02.flv   22.3M

2.使用低品质的脚本测试结果如下:

AVI格式转换后的:-b 512结果=avi_03.flv   2.87M      -b 1000结果=avi_04.flv   2.87M

3GP格式转换后的:-b 512结果=3gp_03.flv   1.73M      -b 1000结果=3gp_04.flv   1.73M

MP4格式转换后的:-b 512结果=mp4_03.flv   5.84M      -b 1000结果=mp4_04.flv   5.84M

WMV格式转换后的:-b 512结果=wmv_03.flv   6.17M      -b 1000结果=wmv_04.flv   6.17M

3.压缩率比较如下:AVI格式转换后的:-qscale 6结果=53.12%   -qscale 4结果=34.04%   -b 512/1000结果=79.65%

3GP格式转换后的:-qscale 6结果=2.093%   -qscale 4结果=123.1%   -b 512/1000结果=59.77%

MP4格式转换后的:-qscale 6结果=20.12%   -qscale 4结果=106.7%   -b 512/1000结果=64.39%

WMV格式转换后的:-qscale 6结果=106.0%   -qscale 4结果=148.7%   -b 512/1000结果=58.87%

通过比较前后的压缩大小我们可以看到在音频保持一致的情况下,使用高品质的转换和使用低品质的转换的巨大差异,同时对于不同格式的视频在转换的过程中也会出现比较大的差异。当然了,这些数据并不一定代表所有这些格式的视频都是如此,具体的要看大家的应用了。不过,我们可以确定的是AVI格式的视频在转换成FLV格式后其压缩率最大,不过对于不同编码的AVI其结果就不一定了。同时我们也还看到,对于某些格式的视频在转换后其体积比原先的还大了,这个我们在应用的时候就需要注意了。

这里没有测试RM和RMVB格式的,因为ffmpeg无法直接转换这两种格式的视频,下次我将使用mencoder来测试转换RM和RMVB格式的视频为FLV的分析。以下是转换前后截取的图片,可以参考看一下.

1.AVI格式截取前、使用-qscale 6和-b 512三个的截图分别如下:

2.3GP格式截取前、使用-qscale 6和-b 512三个的截图分别如下:

3.MP4格式截取前、使用-qscale 6和-b 512三个的截图分别如下:

4.WMV格式截取前、使用-qscale 6和-b 512三个的截图分别如下:

ffmpeg 转换flv压缩大小_[转]ffmpeg转换参数和对几种视频格式的转换分析相关推荐

  1. ffmpeg 转换flv压缩大小_使用ffmpeg进行视频文件转换成FLV整理

    1.首先下载ffmpeg(附件即是) 2.将解压得到的ffmpeg.exe和pthreadGC2.dll文件解压到任何目录(当然也可以是WebRoot中的目录) 3.创建bat文件convertVid ...

  2. ffmpeg 转换flv压缩大小_使用ffmpeg进行视频文件转换成FLV整理 | 学步园

    本系列文章导航 1.首先下载ffmpeg 2.将解压得到的ffmpeg.exe和pthreadGC2.dll文件解压到任何目录(当然也可以是WebRoot中的目录) 3.创建bat文件convertV ...

  3. ffmpeg 转换flv压缩大小_ffmpeg转换参数和对几种视频格式的转换分析

    对于其他诸如-i.-y.-s等参数基本上都是可以很好理解的了.我们上面提到的几个参数前四个主要是用来设置音频的,后三个主要是用来设置视频的.对于音频的ar(采样率)可以指定为22050.24000.4 ...

  4. ffmpeg 转换flv压缩大小_视频压缩工具ffmpeg的使用

    这篇文章中的视频压缩非常适用于教学视频的压缩,因为教学视频中很多帧数的内容都是相同的. 本文作者的CPU是E5-2670,8核16线程.视频压缩工具ffmpeg可以充分利用多线程性能. 原文件大小:1 ...

  5. ffmpeg 转换flv压缩大小_简单几步教你怎样使用FFmpeg工具快速的转换FLV视频为MP4格式...

    前言 无需安装来路不明的软件,教程中直接使用几乎所有格式转换的软件都需要用到的FFmpeg就可以达到我们目的. 程序安装教程 第一步,需要先去FFmpeg官网(点我访问)下载软件,这款软件是官方的,大 ...

  6. ffmpeg 转换flv压缩大小_ffmpeg转换参数和压缩输出大小的比率 参考 最新版本FFMPEG...

    https://blog.cnlabs.NET/3668.html ffmpeg 转换压缩比例 FFMPEG如果是压缩为FLV文件 3个编码可选 1. -c:v flv 标准FLV编码 这个好处是速度 ...

  7. ffmpeg 转换flv压缩大小_ffmpeg 转换 mp4 成 flv

    ① mp4 转 flv 参考资料: https://addpipe.com/blog/flv-to-mp4/ ffmpeg -i demo.mp4 -c:v libx264 -crf 19 demo. ...

  8. linux下ts转mp4,ffmpeg安装及实现视频格式的转换、分片(ts m3u8)

    1.简介 FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视频的完整解决方案 2.相关 系统版本:Cent ...

  9. java flv转mp3_如何使用java代码进行视频格式的转换(FLV)

    一,前言 在给网页添加视频播放功能后,发现上传的视频有各种格式,那么就需要将他么转换成FLV,以很好的支持在线视频播放. 二,准备 drv43260.dll,ffmpeg.exe,mencoder.e ...

  10. 移动设备是一种口袋大小的计算机设备,移动设备视频格式如何转换?

    移动设备,就是手机,很多人外出在旅途中都会观看事先下载好的视频电影,不同移动设备的视频格式间略有所不同,可以通过迅捷视频转换器来转换移动设备的视频格式. 移动设备:也被称为行动装置(英语:Mobile ...

最新文章

  1. 如何在Linux下安装MySQL8.0
  2. C语言——第四次作业
  3. python怎样在已有excel文件指定行写入-Python中使用第三方库xlrd来写入Excel文件示例...
  4. class-5 If语句
  5. 开源在线机器学习Online Learning/Incremental Learning库-creme介绍
  6. Codeforces 474C Captain Marmot 给定4个点和各自旋转中心 问旋转成正方形的次数
  7. python输入数据爬取_python根据用户需求输入想爬取的内容及页数爬取图片方法详解...
  8. SQL Server 数据库构架
  9. Visual Studio 2013 / 2015 完全卸载 - C语言零基础入门教程
  10. 小米MIX4不会采用四曲面屏:结果未必是坏事
  11. k均值聚类算法案例 r语言iris_聚类分析—系统聚类
  12. 线程与进程最通俗易懂的解释(附面试题与答案)
  13. APUE---chap3文件I/O---3.11原子操作
  14. windows桌面美化
  15. 六一儿童节带娃旅游,在曼谷玩哪些景点超好玩?
  16. MP4、 MPEG-4区别
  17. 【Zynq UltraScale+ MPSoC解密学习4】Zynq UltraScale+的APU
  18. HTML网页设计:周杰伦网站
  19. 大气简洁手绘风商务计划书PPT模板
  20. mrcc srcc_mrcc – MapReduce上的分布式C编译器系统

热门文章

  1. Ubuntu 搭建opengrok 流程
  2. 一些奇怪的东西以及寄几需要注意的地方
  3. curl: (1) Protocol “‘http“ not supported or disabled in libcurl的解决方法
  4. 近期java面试总结
  5. _search.php_wholesale_search.php
  6. 悲催:一个80后程序员的爱情故事【视频】-但愿我不是那个陈旭阳!55...
  7. gephi绘制红楼梦关系图
  8. Viddy排名App Store免费应用第二,力压InstagramDraw Sth
  9. 操作系统ready pend subpend区别
  10. 微信小程序订阅消息wx.requestSubscribeMessage使用要点和requestSubscribeMessage:can only be invoked by userTAPgestur