技术宅学会几招FFmpeg

有些时候,我需要对某个视频文件做一些简单的处理。也或者是受亲戚朋友的委托吧(又不好意思推辞,因为人家觉得你是搞技术的,这点小事应该能轻松搞定)。但是,我犯不着为这点事去安装一个笨重的多媒体软件。我也不想去网上随便找个免费的小工具,怕它不干净。总之,我不想安装没有足够信誉的软件。不过,国外的开源软件还是可以信一信的,比如FFmpeg。矫情吧?

FFmpeg都是命令行的,用起来肯定不方便。但是,这对技术宅应该不成问题。下面,我就罗列一些比较实用的使用方法吧。

FFmpeg的下载与安装

FFmpeg是开源的。但我们不必去下载它的源代码。下载已经编译好的exe/dll即可。可以到http://www.ffmpeg.org/download.html,然后点击“Windows Builds”,再根据你当前的机器是32位还是64位来决定下载哪个包。我的机器跑的是Win 7,所以我选择了“Download FFmpeg git-7c210c4 64-bit Shared”。如果你英文不好,也可以直接去我的网盘下载:http://pan.baidu.com/s/1jGgOomy

下载完成之后,解压到硬盘上,假设路径为E:\OpenSrc。启动一个控制台程序,然后执行DOS命令进入FFmpeg工具的bin目录,如下:

应用场景1:格式转换

我想把用iPhone拍的.MOV文件转成.avi文件。最简单了,可以执行下面的命令:

ffmpeg -i D:\Media\IMG_0873.MOV D:\Media\output.avi

意思是,把D:\Media目录下的源文件IMG_0873.MOV(视频:h.264,音频:aac)转换成output.avi(编码格式自动选择为:视频mpeg4,音频mp3),目标文件仍然保存到D:\Media目录下。问题来了:我想自己指定编码格式,怎么办呢?一种方法是,通过目标文件的扩展名(.flv、.mpg、.mp4、.wmv等)来控制,比如:

ffmpeg -i D:\Media\IMG_0873.MOV D:\Media\output2.flv

另一种方法是通过-c:v参数来控制,比如我想输出的视频格式是H.265(警告:编码时间会比较长哦)。命令行如下:

ffmpeg -i D:\Media\IMG_0873.MOV -c:v libx265 D:\Media\output265.avi

注:可以先用ffmpeg -encoders命令查看一下所有可选的编码格式。

不再深究了,我们继续。我发现源文件的图像帧尺寸是1920x 1080,我不需要这么大——能有720 x 480就够了。于是,就要用上-s参数了。为了保证图像缩放后的质量,最好加上码率参数-b:v。如下:

ffmpeg -i D:\Media\IMG_0873.MOV -s 720x480 -b:v 1500k D:\Media\output2.avi

还可以更简单一点,使用-target参数匹配行业标准,参数值可以是vcd、svcd、dvd、dv、dv50等,可能还需要加上电视制式作为前缀(pal-、ntsc-或film-)。如下:

ffmpeg -i D:\Media\IMG_0873.MOV -target pal-dvd D:\Media\output2dvd.avi

又来一个问题:我发现用手机拍的视频中,有些是颠倒的,我想让它顺时针旋转90度。这时候,可以使用-vf参数加入一个过滤器,如下:

ffmpeg -i D:\Media\IMG_0873.MOV -vf 'rotate=90*PI/180' D:\Media\output3.avi

注:如果想逆时针旋转90度,90前面加个负号就可以了。

如果我只需要从源视频里截取一小段,怎么办呢?比如从第2秒的地方开始,往后截取10秒钟。命令行可以这样:

ffmpeg -ss 2 -t 10 -i D:\Media\IMG_0873.MOV D:\Media\output4.avi

注:这种情况下,-ss和-t参数必须放在-i前面,表示是限定后面跟着的输入文件的。

应用场景2:视频合成

我发现,用手机拍的视频有时候背景噪音比较大。怎么把噪音去掉,换成一段美妙的音乐呢?使用FFmpeg也能轻易做到。

第一步:把源文件里的音频去掉,生成一个临时文件tmp.mov

ffmpeg -i D:\Media\IMG_0873.MOV -vcodec copy -an D:\Media\tmp.mov

注:-vcodeccopy的意思是对源视频不解码,直接拷贝到目标文件;-an的意思是将源文件里的音频丢弃。

第二步:把这个无声的视频文件(tmp.mov)与一个音乐文件(music.mp3)合成,最终生成output.mov

ffmpeg -i D:\Media\tmp.mov -ss 30 -t 52 -i D:\Media\music.mp3 -vcodec copy D:\Media\output5.avi

为了保证良好的合成效果,音乐时长必须匹配视频时长。这里我们事先知道视频时长为52秒,于是截取music.mp3文件的第30秒往后的52秒与视频合成。另外,为了保证音频时长截取的准确性,我们这里没有使用-acodec copy,而是让音频重新转码。

还有一种情况:我们希望在一段视频上叠加一张图片。可以简单实现如下:

ffmpeg -i D:\Media\IMG_0873.MOV -i D:\Media\logo.png -filter_complex 'overlay' D:\Media\output6.avi

应用场景3:视频播放

格式转换或合成之后,我们需要试着播放一下。播放器的选择很多。这里顺手用ffplay工具也行:

ffplay -i D:\Media\output6.avi

应用场景4:获取视频信息

有时候,我只是想看看这个视频文件的格式信息。可以用ffprobe工具:

ffprobe -i D:\Media\IMG_0873.MOV

其他应用

FFmpeg的功能非常强大。关键是要理解各种参数的意义,并且巧妙搭配。必要的话,就把在线文档完整读一遍吧:http://www.ffmpeg.org/ffmpeg.html

(0)

相关推荐

  • FFMPEG完美入门资料---002---FFmpeg 支持能力说明

    接着上文写: 写在前面 如果对FFmpeg有需要更多了解的请订阅我的专题:音视频专辑 2.3.1 FFmpeg 对编码解码器的支持 ffmpeg 支持的编解码器种类共有 280 多种, 涵盖了几乎所有 ...

  • Ffmpeg 视频压缩的几个关键参数

    视频压缩用到的参数主要为以下几个: 文件路径:-i 输入文件的路径 码率:-b:v 输出文件的码率 分辨率:-s 输出文件的分辨率: 帧率:-r 输出文件的帧率值 码率 码率,即波特率.值越小,转换后 ...

  • 《FFmpeg Basics》中文版-04-调整和伸缩视频

    写在前面如果您对音视频技术感兴趣,可以订阅我的专题:音视频专辑也可以关注我的简书账户:张芳涛,我后期会发布更多的音视频以及图像处理方面的文章.正文在FFmpeg中调整视频的大小意味着可以通过一个选项改 ...

  • 技术能否一招鲜?

    Tradingninja交易俱乐部,金融技术行业标杆! 大风吹 唐小力 - 中文DJRemix 我们在金融技术行业当中,总会听到专业培训的人士说化繁为简,用一招即可盈利.恭喜你,此时你已经入坑了.记住 ...

  • 必学阴阳烛技术,一招快速识别市场顶底,果断收藏

    必学阴阳烛技术,一招快速识别市场顶底,果断收藏

  • 涨停板套利技术的常见招式:低吸,半路,点火,打板,排板,这些你都懂吗(图解)

    我这里列举最常见的短线操作方法,分别是,低吸,半路,点火,打板,排板 一个完整的涨停板,一个真正意义的涨停板,是由低吸资金,半路资金,点火资金,打板资金和排板资金共同完成的. 只是有可能比较强势的涨停 ...

  • 长沙航空职业技术学院单招计划

    长沙航空职业技术学院单招专业及计划专业名称招收科类招生计划飞行器维修技术(中外合作办学)文理科.职高对口类50飞行器维修技术(飞机维修)文理科.职高对口类50复合材料工程技术(航空复合材料加工与应用技 ...

  • 云南交通职业技术学院单招面试内容

    普通高中生采用"普通高中学业水平考试量化分数+职业适应性综合素质测试(面试)"的评价方式.三校生采用"文化素质考试(综合基础知识考试) +职业技能综合素质测试(面试)&q ...

  • 乒乓球发球技术:一招鲜,吃遍天!

    发球是乒乓球比赛中每一分的开始,它是乒乓球技术中唯一不受对方制约.主动性很强的技术.一个高质量的发球,可以起到先发制人的作用.相反一个低质量的发球也导致了自我的被动局面. 最好的进攻就是最强的防守,尤 ...

  • 2021年云南机电职业技术学院单招专业有哪些?

    云南机电职业技术学院是经云南省人民政府批准.教育部备案.国家公办,能单独招生,具有高等学历教育资格的公办全日制普通高等职业学院.是"国家示范性高等职业院校建设计划"骨干高职院校立项 ...

  • 技术|5招教你如何把握关键分

    "如果你是一个介于中级至高级水平之间的选手,有五种非常重要的击球方式能帮在与强手对抗中拿到关键分.其中的一些或许你已经具备,或者还有待学习.如果你真的希望能在网球场上有所成就,这五招将对你非 ...

  • 美国警察制服坏人的技术!一招让其乖乖听话,轻松控制他

    美国警察制服坏人的技术!一招让其乖乖听话,轻松控制他