ffmpeg常用转换命令,支持WAV转AMR
音頻轉(zhuǎn)換:
1.轉(zhuǎn)換amr到mp3:
ffmpeg -i shenhuxi.amr amr2mp3.mp32.轉(zhuǎn)換amr到wav:
ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav3.轉(zhuǎn)換mp3到wav:
ffmpeg -i DING.mp3 -f wav test.wav4.轉(zhuǎn)換wav到amr:
ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr.amrffmpeg.exe -i PA003.wav -ar 8000 -ab 12.2k -ac 1 target.amr? 此方法驗(yàn)證通過(guò)
文章來(lái)自http://blog.csdn.net/tylz04/article/details/9041739
測(cè)試程序下載:http://files.cnblogs.com/xiaofengfeng/WavConvertAmr.zip?已測(cè)試過(guò)將WAV轉(zhuǎn)AMR格式。
下載地址http://ftp.pconline.com.cn/d56bb83a0a66440d54ef5473f548e4b9/pub/download/201010/ffmpeg-20131021.zip
5.轉(zhuǎn)換wav到mp3:
ffmpeg -i test.wav -f mp3 -acodec libmp3lame -y wav2mp3.mp3視頻轉(zhuǎn)換:
1.轉(zhuǎn)換wmv到mp4:
ffmpeg -i sample.wmv -vcodec libx264 -acodec aac out.mp42.抓取H264視頻流:
ffmpeg -i sample.flv -vcodec copy -vbsf h264_mp4toannexb -an out.h264?2.1 vbsf為過(guò)濾方法,即將flv規(guī)定的H264組織方式轉(zhuǎn)換回H264協(xié)議書(shū)規(guī)定的字節(jié)流格式 ?2.2 -an 禁掉源文件中的音頻,因?yàn)槌鰜?lái)的碼流不需要音頻 ?2.3 vcodec copy這個(gè)是必然的
3.將H264視頻流轉(zhuǎn)為mp4:
ffmpeg -i sample.h264 -f mp4 haha.mp44.接收rtsp并存為視頻文件:
ffmpeg -rtsp_transport tcp -i rtsp://streaming1.osu.edu/media2/ufsap/ufsap.mov -vcodec copy -acodec copy -t 30 -f mp4 rtsp-out.mp44.1 -rtsp_transport tcp:指明傳輸方式是tcp方式(也可以是udp)
4.2 -t 30:指明我錄制30秒
?
?
ffmpeg將音頻或視頻編碼為AMR格式音頻
Android編碼的MP4音頻格式可能為AMR,這時(shí)候用以下命令可以從MP4中直接提取AMR音頻:
ffmpeg -i test.mp4 -c:a copy test.amr
將其他格式的音頻或視頻轉(zhuǎn)成AMR的命令:
新寫(xiě)法:
ffmpeg -i test.mp4 -c:a libopencore_amrnb -ac 1 -ar 8000 -b:a 12.20k -y test.amr
舊寫(xiě)法:
ffmpeg -i test.mp4 -acodec libopencore_amrnb -ac 1 -ar 8000 -ab 12.20k -y test.amr
?
?
?
?
系統(tǒng)環(huán)境:Suse 64bit OS 前期準(zhǔn)備: 1、? 下載ffmpeg源代碼:http://ffmpeg.org/download.html,這里選擇版本為0.11.1 2、 ?下載OpenCORE AMR:http://sourceforge.net/projects/opencore-amr/,這里選擇的版本為0.1.3。
并將下載的文件存放與/home/ffmpeg目錄下,以root用戶(hù)登錄系統(tǒng)。
具體步驟:
1、? 編譯安裝opencore-amr,這里需要注意的是在執(zhí)行configure命令的時(shí)候要添加--enable-shared=no --enable-static=yes參數(shù),其主要作用是禁止生產(chǎn)動(dòng)態(tài)鏈接庫(kù)、允許生產(chǎn)靜態(tài)庫(kù)。
| chmod 755 opencore-amr-0.1.3.tar.gz tar -xzvf opencore-amr-0.1.3.tar.gz cd opencore-amr-0.1.3 ./configure --enable-shared=no --enable-static=yes make make install |
?
2、? 編譯安裝ffmpeg,注意configure命令后面所要添加的參數(shù),可以通過(guò)執(zhí)行configure --help命令查看后面所允許帶的參數(shù)
| chomd 755 ffmpeg-0.11.1.tar.gz tar -xzvf ffmepg-0.11.1.tar.gz cd ffempg ./configure --enable-gpl --enable-version3 --enable-nonfree --disable-ffplay --disable-ffprobe --disable-ffserver --enable-libopencore-amrnb --enable-libopencore-amrwb --prefix=/home/ffmpeg/target make make install |
以上命令成功執(zhí)行后將會(huì)在/home/ffmpeg/target目錄下的bin目錄得到ffmpeg文件,該文件已經(jīng)包含amr解碼器
3、? 測(cè)試:
| chmod 755 ffmpeg ./ffmpeg -I PA003.wav -ar 8000 -ab 12.2k -ac 1 target.amr |
?
4、? 注意事項(xiàng):
a)???????? 以上方式都是通過(guò)靜態(tài)庫(kù)的形式編譯,采用靜態(tài)庫(kù)的形式編譯的好處在于:編譯后的可執(zhí)行文件ffmpeg可以不依賴(lài)于amr解碼器,簡(jiǎn)單地說(shuō),可執(zhí)行文件已經(jīng)將amr解碼器包含在內(nèi)了。
b)???????? ffmpeg在編譯時(shí)候會(huì)優(yōu)先查找amr解碼器的動(dòng)態(tài)鏈接庫(kù),如果沒(méi)有找到,則查找amr解碼器的靜態(tài)庫(kù)。在第一步中如果沒(méi)有禁止amr生成動(dòng)態(tài)鏈接庫(kù),則ffmpeg將采用amr的動(dòng)態(tài)鏈接庫(kù)進(jìn)行編譯,其缺點(diǎn)是,編譯后的可執(zhí)行文件ffmpeg將依賴(lài)于amr的動(dòng)態(tài)鏈接庫(kù),如果系統(tǒng)的動(dòng)態(tài)鏈接庫(kù)搜索路徑LD_LIBRARY_PATH不包含amr動(dòng)態(tài)鏈接庫(kù)所在路徑,則ffmpeg將會(huì)報(bào)錯(cuò),無(wú)法正常工作。
c)???????? amr編譯安裝時(shí)不建議添加prefix=XXX參數(shù)(./configure)修改amr安裝路徑,這樣ffmpeg在編譯安裝時(shí)將出現(xiàn)找不到amr解碼器的情況。
轉(zhuǎn)載于:https://www.cnblogs.com/xiaofengfeng/p/3573025.html
總結(jié)
以上是生活随笔為你收集整理的ffmpeg常用转换命令,支持WAV转AMR的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Windows下启动各服务命令
- 下一篇: xsl-mode属性用法