版权申明:本文为博主原创文章,未经允许不得转载。

“ffmpeg -i 音频 -i 录像 输出录像”

 

ffmpeg是Linux中改造音频视频文件的常用工具。

例:

先是当然是供给设置ffmpeg软件包,可以直接从源中实行安装!但本身设置后并不能够得逞试行前面所供给实施的转换命令,所以自身不能不重复从源码编写翻译安装ffmpeg:

mp4 to mp3:

“ffmpeg -i sdcard/soundtouch.wav -i sdcard/input.mp4
sdcard/output.avi”

(1卡塔尔下载ffmpeg源码包,注意版本不可能太高,应该与一向从源中安装的本子大略特别最棒;小编刚开头下的版本比较高,编写翻译时提示说有四个编写翻译选项找不到,作者到网络也没搜出什么结果,所以只可以又下降了本子,最后选拔的是ffmpeg-0.4.9-p二〇〇五0906.tbz!

ffmpeg -i $ID.mp4 -acodec libmp3lame -ac 1 -ar 16000 $ID.mp3

ffmpeg -i $ID.mp4 -vn -ab 128k -ar 16000 -y $ID.mp3

注:

(2卡塔尔(英语:State of Qatar)参照他事他说加以考查文书档案  实行编写翻译安装,在编写翻译的时候恐怕还有那些荒唐提示,但大非常多是出于有些头文件找不到所致,所以直接从源中安装提供那几个头文件的包就能够(技术唤起,能够在源中央司法机关接搜索头文件*.h去掉后缀.h的称谓*就能够,日常须要设置其相应的*-dev包)!

-i: 表示输入的音频或录像

出口录像的格式不为.DVD的来由,好像是ffmpeg的版权原因,独有DVD的解码库,未有编码库

设置收尾之后就能够展开转码操作了:

-ac: channel 设置通道3, 默以为1

(二零一四,8,11修正,音频录制顺序是能够变的,以往自身用的通令行为

(1卡塔尔(قطر‎ 对于日常的avi摄像文件,能够直接动用命令:
ffmpeg -y -i “tt.avi” -vcodec xvid -s 400×240 -r 29.97 -b 1500 -acodec
aac -ac 2 -ar 48000 -ab 128 -vol 200 -f mp4   “tt.mp4”

-ar: sample rate 设置音频采集样本率

-i sdcard/iutput.mp4 -i sdcard/handclap.wav -vcodec copy -s 768×1024
-f avi sdcard/output.avi

参数解释如下:

-acodec: 使用codec编解码

-vcodec
前面不必然要跟copy,能够改为h264之类的录制编码,但是这么会扩张调换的小时

-y 覆盖输出文件,即只要tt.DVD文件已经存在的话,不经提醒就覆盖掉了
-i “tt.avi” 输入文件名,能够团结改进路线和名字
-vcodec xvid 使用XVID编码压缩录像,无法改的
-s 400×240 输出的分辨率,注意片源一定假如16:9的不然会变形
-r 29.97 帧数 (通常用25就能够了卡塔尔(英语:State of Qatar)
-b 1500 摄像数据流量,用-b
xxx表示使用固定码率,数字可改进;还足以用动态码率如:-qscale 4和-qscale
6,4的质量比6高(常常用800就能够了,不然文件会异常的大)
-acodec aac 音频编码用AAC
-ac 2 声道数1或2
-ar 48000 声音的采样频率
-ab 128 音频数据流量,日常接纳32、64、96、128
-vol 200
200%的轻重,可改革(假诺源文件声音十分小,能够荣升10到20倍(1000%~二〇〇三%卡塔尔(英语:State of Qatar),笔者试过,效果还能够!但不可能太大,二零零四00%本人也试验过,但嘈杂声太大了)
-f mp4 输出mp4格式
“tt.VCD” 输出文件名,也能够改良路径和称号

-ab: bitrate 设置音频码率

-s 为钦点录像分辨率

至于这么些参数的值是何等获得的,那就得看您的播音设备(mp3,psp,手提式有线电话机等等卡塔尔了!刚买播放设备的时候,里面断定会预置有生龙活虎对录制文件,通过查阅这么些预置文件就能够得到你的广播设备所支撑录制的每一类参数!最简便的措施,能够到windows下用龙卷风影音或KMP播放器打开叁个预置录制文件(KMP列出的比沙暴影音还要详细),然后通过翻看属性就能够得到全数你要求的参数了!

-vn: 不做录像记录

于是增多了 -vcodec 和-s 是因为原先调换出来,后半有的录像变模糊.

(2卡塔尔(英语:State of Qatar)对于wmv9,rm,rmvb等录制格式,ffmpeg还十分的小概剖析,但能够透过四次调换来达指标:
先用mencoder将其更换到avi格式:
mencoder tt.rmvb -ovc lavc -oac mp3lame -o tt.avi 
接下来再接纳(1卡塔尔(英语:State of Qatar)中的命令对该avi文件进行更动就可以!

libmp3lame: 使用libmp3lame编码mp3

)

参数表明:

-y: 覆盖输出文件

“-i 输入摄像 -f 格式 输出摄像”

tt.rmvb 输入文件(可本人改革路线及称号)
-ovc lavc 录像编码格式(DVD录制)
-oac mp5lame 音频编码格式(DVD音频)
-o tt.avi 输出文件(可本人纠正路径及称号)

mp4 to wav:

例:

mencoder是与mplayer一同安装的,安装了mplayer,系统料定就能够有mencoder!
mencoder与ffmpeg好像都有windows版的!
mencoder的功效也很有力,至于何以不要mencoder三次性调换成位?那一个主题素材自身也还在抽时间研商,因为它的参数使用更为头晕目眩,作者今天尚未考试成功!

ffmpeg -i $ID.mp4 -ac 1 -ar 16000 $ID.wav

“-i sdcard/input.mp4 -f avi sdcard/output.avi”

有关其余的录像文件格式,作者用的相当少,所以也没测量试验过,不过相应都能使用(1卡塔尔(英语:State of Qatar)中的命令举办消除!

webm to mp3:

  1. AVI转FLV

就那样,你兴奋的影视就能够与你寸步不离了!

ffmpeg -i $ID.webm -acodec libmp3lame -ac 1 -ar 16000 $ID.mp3

ffmpeg -i video_origine.avi -acodec libmp3lame -ab 56K -ar 44100 -b
200K -r 15 -s 320×240 -f flv video_finale.flv

补给有个别:

webm to wav:

2.AVI转成divx编码mpeg4的AVI

本人个人比较钟爱单个的录制文件,所以借使叁个录像文件被分为了四个,也能够透过mencoder对其开展归总(好像仅协助avi录像格式的统风流倜傥卡塔尔国!

ffmpeg -i $ID.webm -ac 1 -ar 16000 $ID.wav

ffmpeg -i video_origine.avi -s 320×240 -vcodec msmpeg4
video_finale.avi

朝气蓬勃经有五个rmvb文件cd1.rmvb和cd2.rmvb,反正也是个别要求转移成avi格式的,那么转换成avi之后,就能够透过命令:
mencoder t1.avi t2.avi -ovc copy -oac copy -o all.avi 
对细分的文本进行归并,合併完之后,再将其调换到mp3即可!首假设看个人的爱好了!

wav to mp3:

  1. 把AVI里的韵律保存成DVD文本

参数表达:

ffmpeg -i input.wav -vn -ar 44100 -ac 2 -ab 192k -f mp3 output.mp3

ffmpeg -i audio.wav -acodec libmp3lame audio.mp3

ffmpeg -i source_video.avi -vn -ar 44100 -acodec libmp3lame -ac 2 -ab
192K -f mp3 sound.mp3

t1.avi t2.avi
输入文件(可自个儿矫正路线及称谓,还足以越来越多,空格分开,注意顺序,还会有这几个输入文件的码流也亟需平等)
-ovc copy 表示录像编码格式不改变(因为是联合实际不是改动,所以没必要变)
-oac copy 表示音频编码格式不改变(同上)
-o tt.avi 输出文件(可和睦纠正路线及称谓,按输入文件的相继进行连接的)

-f:
强制行使某种输出格式,日常输入文件的格式是自动物检疫查测验的,输出文件的格式根据后缀估算,所以超越二分之一景色不须求安装
-f 

  1. 转换成3gp

 

wav to flac:

ffmpeg -y -i test.mpeg -bitexact -vcodec h263 -b 128 -r 15 -s 176×144

-acodec aac -ac 2 -ar 22500 -ab 24 -f 3gp test.3gp

  15条常用的录像音频编辑脚本命令(mencoder/ffmpeg等卡塔尔

ffmpeg -i input.wav output.flac

能够把它当急迅简易参照他事他说加以调查看,首要的效果有:

flac to wav:

ffmpeg -y -i test.wmv -ac 1 -acodec libamr_nb -ar 8000 -ab 12200 -s
176×144 -b 128 -r 15 test.3gp

  1. 录制格式转变
  2. 音频格式转变
  3. 切割录制及音频
  4. 连年两段录像
  5. 录像音频同步
  6. 将图像连串转变到摄像     
ffmpeg -i input.flac output.flac
  1. 转换成mp4

这里是百鬼丸早前采撷的少年老成局地命令行录制音频编辑脚本命令,平昔在温馨的记事本里随即用,今后认为今日头条编辑器够方便,速度也够快,以为把它们坐落于博客上更合适些。那么些命令都是依靠一些开源无需付费软件,如mencoder,ffmpeg,
lame, sox,perl,
ffmpeg2theora等,那些软件日常都还未有图形分界面,必要在命令行窗口输入试行。因而对家庭客商大概并不是太适宜,需求花不菲时光理解驾驭。但对批量拍卖也许后台管理录制音频很实用。当您不想购入商业软件或许选取linux操作系统时,能够试试。 

aac to mp3:

ffmpeg -i source_video.avi -b 300K -s 320×240 -vcodec xvid -ab 32K
-ar 24000 -acodec aac final_video.mp4

 

ffmpeg -i audio.aac -acodec libmp3lame -ac 2 -ab 160 audio.mp3
  1. 从3gp里dump出m4v(直接拷贝 不另行编码卡塔尔国

 

aac to wav:

ffmpeg.exe -i test.3gp -vcodec copy -f m4v test.m4v

 

ffmpeg -i audio.aac audio.wav

任务1: 延迟录制部分 (对avi文件有效)

aac to ac3:

ffmpeg.exe -i test.3gp -f m4v test.m4v

mencoder -delay 0.7 -oac copy -ovc copy input.avi -ooutput.avi

ffmpeg -i audio.aac -acodec ac3 audio.ac3
  1. 转码 把.f4v转码成.asf

 

aac to ogg:

ffmpeg.exe -i TF2_Trailer2.f4v -vcodec copy -acodec copy -f asf 1.asf

解释:让摄像轨比近年来的音频轨落后0.7秒钟

ffmpeg -i input.aac -libvorbis output.ogg
  1. 一心无损的高中级摄像格式

 

wav to ogg:

ffmpeg -i t_needss_e309_excl_hd.mov -vcodec huffyuv -acodec
pcm_s16le 2.avi

 

ffmpeg -i input.wav -acodec libvorbis output.ogg

9.多wav合并

 

wav to aac:

ffmpeg -i Lt.wav -i Rt.wav -map 0,0 -map 1,1 -acodec copy Stereo.mov

任务2: 延迟音频部分(对avi文件有效)

ffmpeg -i input.wav -acodec libfaac output.aac

mencoder -oac copy -ovc copy -audio-delay -0.7 input.avi -ooutput.avi

wav to ac3:

 

ffmpeg -i input.wav -acodec ac3 output.ac3

解释:让音频轨比近年来的录像轨落后0.7分钟

实质上wav, DVD, aac, ac3, ogg之间的相互作用转换是经常的:

 

输出是mp3:  -acodec libmp3lame

 

输出是aac: -acodec libfaac

 

输出是ac3: -acodec ac3

任务3:切割录像轨

输出是ogg: -acodec libvorbis

mencoder -ss 00:00:10 -endpos 60 -ovc copy -oac copy input.avi-o
output.avi

关于别的参数选项,视要求使用。

 

 

解释:切割录制片段,从0分10秒在此之前,到1分10秒,时长为60秒。将结果存款和储蓄为output.avi 

 

 

 

任务4: 连接两段录像 (必得比特率相近)

mencoder -oac copy -ovc copy -idx -o output.avi
input1.aviinput2.avi         

or(不要求bitrate相同):

ffmpeg -i test1.avi -i test2.avi -vcodec copy -acodec copy -vcodec copy
-acodec copy test12.avi -newvideo -newaudio

 

 

解释

 

任务5: 将一星罗棋布静止图像和一个mp5文件转变为AVI录像文件

mencoder “mf://snap*.bmp” -mf fps=25 -oac mp3lame
-lameoptsabr:br=128:mode=3 -audiofile test.mp3 -ovc lavc
-lavcoptsvcodec=msmpeg4v2:vpass=1:vbitrate=2560000:mbd=2:keyint=132:vqblur=1.0:cmp=2:subcmp=2:dia=2:mv0:last_pred=3-o
leadnull

 

mencoder “mf://snap*.bmp” -mf fps=25 -oac mp3lame
-lameoptsabr:br=128:mode=3 -audiofile test.mp3 -ovc lavc
-lavcoptsvcodec=msmpeg4v2:vpass=2:vbitrate=2560000:mbd=2:keyint=132:vqblur=1.0:cmp=2:subcmp=2:dia=2:mv0:last_pred=3-o
lead.avi

 

解释:mono=3 代表单声道音频输出, mono=0
代表立体声音频输出。下边使用的录像编码是微软的msmpeg4,因而这一个AVI文件能够平昔在Windows
mediaplayer中播放,无需其它安装插件。 上面两条命令,表示四回压缩。
为狠抓速度,也足以只实用第一条做单次压缩。输出摄像的fps为25。

 

 

 

任务6: 切割DVD音频文件

 

mplayer -ss 00:01:59 -endpos 102.5 input.mp3 -ao pcm

 

sox audiodump.wav result1.wav fade t 3

 

sox result1.wav result2.wav fade t 0 102.5 3.5

 

lame result2.wav -o fighting.mp3 -b 160

 

解释:那些进度由四条命令组成。 上边包车型大巴例子中,

首先步:切割部分为1分59秒在这里早前,到3分41.5秒停止,长度102.5秒。客户需和睦计算切割部分,设定上述参数。 

第二步:用sox对旋律开首3分钟做三个淡入效果(声音慢慢升高)

其三步:用sox对旋律截止3.5分钟做叁个脱离效果(声音慢慢衰减)

第四步:将lame管理好的节拍重新编码成160kbps的mp5文件

 

其间,第二、第三步是能够简轻易单的。 

 

 

 

任务7: 将wma文件转变为mp5文书

 

mplayer input.wma -ao pcm

 

lame audiodump.wav -o output.mp3 -b 160

 

解释:风流倜傥共两条命令。第一条将wma转变为wav文件,第二条再将wav调换为DVD文本,比特率为160kbps. 

 

 

 

任务8: 将一文山会海图像文件转变为flv录像文件

 

mencoder  “mf://snap*.bmp” -mf fps=25-audiofile test.mp3 -o output.flv
  -afresample=22050:0:0 -sws 9 -vf scale=448:-3,expand=448:336 -of
lavf-ovc lavc
-lavcoptsvcodec=flv:vbitrate=260:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:vpass=1

 

mencoder  “mf://snap*.bmp” -mf fps=25 -ooutput.flv -audiofile test.mp3
 -afresample=22050:0:0 -sws 9 -vf scale=448:-3,expand=448:336 -of
lavf-ovc lavc
-lavcoptsvcodec=flv:vbitrate=260:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:qns=2:vpass=2

 

解释:若干次压缩,将生机勃勃多元snap001.bmp,
snap002.bmp,…图像和二个VCD文本”test.mp5″转变来fps=25的摄像。音频采集样本率设定为22050,摄像镜头大小为448×336,录像的比特率为260kbps。 

只要你希望改革录像中的keyframe,你能够在首先条命令施行后,手动编辑三个divx2pass.log文件。文件中”Type:1″表示关键帧keyframe
(也许叫iframe卡塔尔, “Type:2″表示p-frame,正是只记录相邻帧变化部分的帧。 

 

 

 

任务9: 将风华正茂密密层层图像文件调换为ogg录像文件

 

ffmpeg2theora -f image2 snap%05d.bmp -V 320 -ooutput.ogg

 

解释:ogg录制照旧有一点用的,wikipedia,
wikimeida都在用。上面的摄像比特率为320kbps

 

 

 

任务10: 将生龙活虎各类图像转化为与NTSCDVD包容的mpeg2格式文件。 

 

mencoder -oac lavc -ovc lavc -of mpeg -mpegoptsformat=dvd:tsaf -vf
scale=720:480,harddup -srate 48000 -aflavcresample=48000
-lavcoptsvcodec=mpeg2video:vpass=1:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9-ofps
30000/1001 -o ntscdvd.mpg “mf://snap*.bmp” -mf fps=25-audiofile
test.mp3

 

mencoder -oac lavc -ovc lavc -of mpeg -mpegoptsformat=dvd:tsaf -vf
scale=720:480,harddup -srate 48000 -aflavcresample=48000
-lavcoptsvcodec=mpeg2video:vpass=2:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9-ofps
30000/1001 -o ntscdvd.mpg “mf://snap*.bmp” -mf fps=25-audiofile
test.mp3

 

解释:三回压缩,输入图像帧率为25fps,
输出帧率为29.97fps,录像编码mpeg2, 音频编码192kbpsac3.  

 

 

 

任务11: 将后生可畏多级图像文件调换为与PALmp5宽容的mpeg2格式摄像文件

 

mencoder -oac lavc -ovc lavc -of mpeg -mpegoptsformat=dvd:tsaf -vf
scale=720:576,harddup -srate 48000 -aflavcresample=48000
-lavcoptsvcodec=mpeg2video:vpass=1:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9-ofps
25 -o paldvd.mpg “mf://snap*.bmp” -mf fps=25 -audiofiletest.mp3

 

mencoder -oac lavc -ovc lavc -of mpeg -mpegoptsformat=dvd:tsaf -vf
scale=720:576,harddup -srate 48000 -aflavcresample=48000
-lavcoptsvcodec=mpeg2video:vpass=2:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9-ofps
25 -o paldvd.mpg “mf://snap*.bmp” -mf fps=25 -audiofiletest.mp3

 

解释:四回压缩,输入为snap001.jpg,
snap002.jpg…和test.VCD,图像连串的fps为25, 输出录像文件的fps为25.
录制编码为mpeg2, 音频编码为192kbpsac3. 

 

 

 

任务12: 将录像文件转变为风华正茂多种图像

用ffmpeg命令如下

 

ffmpeg -i test.avi snap%05d.bmp

 

也得以用mplayer完成同样效劳

 

mplayer video.avi -vo png -ss 00:00:10 -endpos 5.0 -vfcrop=480:360:80:60

 

解释:这里mplayer的事例中,还提供了额外的切割选取功效。切割的片段从0分10秒起首,到0分15秒甘休,长达5秒。同偶然候画面也被切割,切割的岗位从坐标(80,60卡塔尔(قطر‎开头,宽度480像素,中度360像素。这里坐标系以显示器左上角为(0,0卡塔尔(英语:State of Qatar). 

 

 

 

任务13: 将midi文件调换为mp4文书

 

timidity input.mid -Ow

 

lame -b 160 -h -k input.wav output.mp3

 

解释:第一条命令使用timidity将midi转变为wav文件,第二条命令用lame将wav调换为160kbpsVCD文件。 

timidity配置和设置依旧相比费心的。还需求格外安装高格调的sf2声音字体文件,配置sf2文件也万分轻易出错。总体效果与利益还可以够接收。但无法接纳这几天风靡的vst,因而可能会被渐渐淘汰掉。 

 

 

 

任务14: 将一文山会海图像转换为swf格式的flash文件(必要perl卡塔尔 

 

flv2swf  input.flv output.swf

 

解释:一时候大概用swf来保存摄像比flv更有益于。固然图像数据非常少的话,能够动用swftools来实行转变 

大器晚成旦图像数据众多的话,首先大家用任务8中的命令将图像调换为八个flv文件。然后大家得以用adobe的各样软件十分轻巧的将flv视频参与叁个flash项目里,最后输出为swf. 假使您熟习perl的话,也得以用三个perl脚本将flv文件调换到swf.CPAN(Perl公共模块库)有二个FLV::info的模块,安装后就能够动用flv2swf命令了。

 

 

 

 

任务15: 将mp4文书转换为wma文件

 

mplayer input.mp3 -ao pcm

 

ffmpeg -i audiodump.wav -acodec wmav2 -ab 128000test.wma1

 

解释:有时也急需那么些效率的。第一步,将mp4文件调换为wav文件,第二步用ffmpeg将wav文件转换为wma. 

 

 

若是你只必要将大幅图像如某些封面,和二个VCD统10%贰个录像文件,请参见前大器晚成篇博文。 

将生龙活虎幅图像和一个VCD文本归拢成录制文件的小工具

 

参谋链接

上述命令基本上是参照他事他说加以考察了mplayer的客商手册,videohelp.com的论坛帖子写的。

 

软件主页

mencoder的Windows binary: 

ffmpeg的Windows binary: 

lame的Windows binary: 

sox: 

ffmpeg2theora: 

cpan: 

Active perl的Windows版本:

 

上述软件被布满利用,其源代码部分从没怎么难点,但因为专利和版权的标题,公布其Windows的二进制可执行文件则或然触犯了有些国度的法度,近些日子合法性那几个主题材料还比较模糊。

 

 

wav转aac命令 可参考

ffmpeg -i soundtrack.wav -acodec aac -ab 128kb output.m4a

相关文章