ffmpeg--简介与使用

来源:互联网 发布:ubuntu tweak tools 编辑:程序博客网 时间:2024/04/28 09:14

最近在做视频相关的图像处理工作。简单地说,就是把视频里的图像弄出来,然后进行处理。由于接触到视频处理方面的知识较少,所以在网上进行了一番搜罗,发现了这个视频处理功能比较强大的软件–ffmpeg。这里对它进行简单的介绍和使用说明,最后是自己具体的使用步骤说明。

ffmpeg.exe下载地址:
http://download.csdn.net/detail/zhancf/9247763

1.简介
ffmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。
ffmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。
ffmpeg项目由以下几部分组成:
ffmpeg 视频文件转换命令行工具,也支持经过实时电视卡抓取和编码成视频文件。
FFServer 基于HTTP(RTSP正在开发中)用于实时广播的多媒体服务器,也支持时间平移。
FFplay 用SDL和ffmpeg库开发的一个简单的媒体播放器。
libavcodec 一个包含了所有ffmpeg音视频编解码器的库.为了保证最优性能和高可复用性,大多数编解码器从头开发的。
libavformat 一个包含了所有的普通音视格式的解析器和产生器的库。

2.使用说明
这里罗列了ffmpeg的常用方法,具体如下:
(1)获取视频的信息
ffmpeg -i video.avi

(2)将图片序列合成视频
ffmpeg -f image2 -i image%d.jpg video.mpg
上面的命令会把当前目录下的图片(名字如:image1.jpg, image2.jpg, 等…)合并成video.mpg

(3)将视频分解成图片序列
ffmpeg -i video.mpg image%d.jpg
上面的命令会生成image1.jpg, image2.jpg, …
支持的图片格式有:PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF, SGI

(4)为视频重新编码以适合在iPod/iPhone上播放
ffmpeg -i source_video.avi input -acodec aac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x180 -title X final_video.mp4
说明:
* 源视频:source_video.avi
* 音频编码:aac
* 音频位率:128kb/s
* 视频编码:mpeg4
* 视频位率:1200kb/s
* 视频尺寸:320 X 180
* 生成的视频:final_video.mp4

(5)为视频重新编码以适合在PSP上播放
ffmpeg -i source_video.avi -b 300 -s 320x240 -vcodec xvid -ab 32 -ar 24000 -acodec aac final_video.mp4
说明:
* 源视频:source_video.avi
* 音频编码:aac
* 音频位率:32kb/s
* 视频编码:xvid
* 视频位率:1200kb/s
* 视频尺寸:320 X 180
* 生成的视频:final_video.mp4

(6)从视频抽出声音,并存为Mp3
ffmpeg -i source_video.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 sound.mp3
说明:
* 源视频:source_video.avi
* 音频位率:192kb/s
* 输出格式:mp3
* 生成的声音:sound.mp3

(7)将wav文件转成Mp3
ffmpeg -i son_origine.avi -vn -ar 44100 -ac 2 -ab 192 -f mp3 son_final.mp3

(8)将.avi视频转成.mpg
ffmpeg -i video_origine.avi video_finale.mpg

(9)将.mpg转成.avi
ffmpeg -i video_origine.mpg video_finale.avi

(10)将.avi转成gif动画(未压缩)
ffmpeg -i video_origine.avi gif_anime.gif

(11)合成视频和音频
ffmpeg -i son.wav -i video_origine.avi video_finale.mpg

(12)将.avi转成.flv
ffmpeg -i video_origine.avi -ab 56 -ar 44100 -b 200 -r 15 -s 320x240 -f flv video_finale.flv

(13)将.avi转成dv
ffmpeg -i video_origine.avi -s pal -r pal -aspect 4:3 -ar 48000 -ac 2 video_finale.dv
或者:
ffmpeg -i video_origine.avi -target pal-dv video_finale.dv

(14)将.avi压缩成divx
ffmpeg -i video_origine.avi -s 320x240 -vcodec msmpeg4v2 video_finale.avi

(15)将Ogg Theora压缩成Mpeg dvd
ffmpeg -i film_sortie_cinelerra.ogm -s 720x576 -vcodec mpeg2video -acodec mp3 film_terminate.mpg

(16)将.avi压缩成SVCD mpeg2
NTSC格式:
ffmpeg -i video_origine.avi -target ntsc-svcd video_finale.mpg
PAL格式:
ffmpeg -i video_origine.avi -target pal-svcd video_finale.mpg

(17)将.avi压缩成VCD mpeg2
NTSC格式:
ffmpeg -i video_origine.avi -target ntsc-vcd video_finale.mpg
PAL格式:
ffmpeg -i video_origine.avi -target pal-vcd video_finale.mpg

(18)多通道编码
ffmpeg -i fichierentree -pass 2 -passlogfile ffmpeg2pass fichiersortie-2

(19)从flv提取mp3
ffmpeg -i source.flv -ab 128k dest.mp3

3.具体使用情况
目前,我对于ffmpeg的使用仅限于将视频转化成图片流(格式为jpg),下面是我的使用步骤。
(1)将ffmpeg.exe和需要解码的视频放在同一文件目录下,假设在F:\1\目录下;
(2)cmd进入dos环境,具体步骤如下
这里写图片描述
点击回车,出现以下界面
这里写图片描述
然后等待即可。

注:上面解码指令中的参数一定要加,不然解码出来的图片质量降低,不利于后续处理。

1 0