免费高清特黄a大片,九一h片在线免费看,a免费国产一级特黄aa大,国产精品国产主播在线观看,成人精品一区久久久久,一级特黄aa大片,俄罗斯无遮挡一级毛片

分享

ffmpeg 轉(zhuǎn)換多媒體文件

 xiangyu11 2012-08-22
[url]http://pengyou.:8080/node/1634
[/url]

下面的命令讀出來就是把input.wma文件轉(zhuǎn)換成平均比特率(ab=average bitrate)為32k的文件名為output.mp3的mp3文件。

當然,你也可以指定采樣率(sampling rate),使用ar,應該是average rate之類的。

ffmpeg -i input.wma -ab 64 -ar 22050 output.mp3
命令讀出來就是用ffmpeg將input.wma文件轉(zhuǎn)換成平均比特率為64kb每秒,采樣率為22050hz的mp3文件。

如果你轉(zhuǎn)mp3是為了讓網(wǎng)上的flash播放器播放,那么-ar請設(shè)置為11khz的倍數(shù),比如 11025 22050 44100 ,就是我們常說的多少千赫,前幾個分別是11khz 22khz 44khz。

【補充說明】如果遇到ffmpeg所涉及以外的視頻格式,可以使用其他轉(zhuǎn)換工具先轉(zhuǎn)換,例如mencoder。

 

附錄一(ffmpeg參數(shù)說明):

 

【參數(shù)】 【說明】 【示例】
-i "路徑" 指定需要轉(zhuǎn)換的文件路徑 -i "C:\nba.wmv"
-y 覆蓋輸出文件,即如果nba.xxx文件已經(jīng)存在的話,直接覆蓋  
   控制畫面參數(shù)
-bitexac 使用標準比特率  
-vcodec xvid 使用xvid壓縮  
-s <寬高比> 指定分辨率大小 -s 320*240
-r <數(shù)值> 幀速率(非標準數(shù)值會導致音畫不同步【標準值為15或29.97】) -r 15
-b <比特率> 指定壓縮比特率 -b 1500

-qmin <數(shù)值>

設(shè)定最小質(zhì)量 -qmin 10
-qmax <數(shù)值> 與-qmin相反,可以與-qmin同時使用 -qmax 30
-sameq 使用與源視頻相同的質(zhì)量  
   控制聲音參數(shù)
-acodec aac 設(shè)定聲音編碼  
-ac <數(shù)值> 設(shè)定聲道數(shù):1為單聲道,2為立體聲 -ac 2
-ar <采樣率> 設(shè)定聲音采樣率(8000,11025,22050) -ar 22050
-ab <比特率> 設(shè)定聲音比特率(-ac設(shè)為立體聲時要以一半比特率來設(shè)置,比如192kbps的就設(shè)成96) -ab 96
-vol <百分比> 設(shè)定音量大小,比如設(shè)定200就會比原來的音量大2倍 -vol 200


利用ffmpeg在linux下將mp3文件轉(zhuǎn)換為wma

[ ] 來源: sudone.com 評論: 暫無評論 分享至:

百度權(quán)重查詢 站長交易 友情鏈接交換 網(wǎng)站建設(shè),網(wǎng)站設(shè)計,企業(yè)建站就找313

現(xiàn)在網(wǎng)絡朝寬帶網(wǎng)發(fā)展越來越快了,但服務器托管環(huán)境要變化還是要很多的¥,所以能節(jié)省一分就是一分。在網(wǎng)絡上音頻 文件通常使用mp3格式存儲,mp3格式音質(zhì)可以壓得比較好,但體積稍嫌有些大,而壓低了音質(zhì)的話就比較難聽,而且也壓得還不夠小。wma文件在這點上相 比mp3優(yōu)化很多。經(jīng)測試,使用24k碼率下,5MB的mp3文件可壓到1MB左右的wma,在我這樣的爛耳朵下雖然分得出音質(zhì)的勝負,但還尚能聽。如果 有朋友要做一個翻唱或亂錄音的網(wǎng)站,那么把文件壓成wma格式就合適不過了。

在網(wǎng)上搜了幾十頁,都是講述如何將wma轉(zhuǎn)換為mp3的,零星有幾個mp3轉(zhuǎn)wma的例子,可惜都是windows下的版本,有些還需要花錢。

于是干脆祭出ffmpeg,ffmpeg相信很多處理媒體文件的朋友都用過,是非常之強大,不但可以處理流行的flv等格式,我之前一直用來轉(zhuǎn)換視頻格式(asf、3gp、rm……)到wmv的,wmv既然能轉(zhuǎn),那么wma當然也一定能!

在網(wǎng)上搜尋一陣,找到了ffmpeg轉(zhuǎn)wma的執(zhí)行命令:

ffmpeg -y -ab 24 -ar 22050 -acodec wmav2 -i test.mp3 test.wma

其中-y參數(shù)是指直接覆蓋存在文件而不用確認;-ab參數(shù)是碼率;-ar參數(shù)采樣率;-acodec是指定壓縮格式;-i是指輸入的文件;最后在敲上輸出的文件就可以了。

對文件字節(jié)數(shù)影響最大的就是碼率,wma文件最小的碼率就是24k,不能再小了,唉,我還想用12k一試呢。

于是在命令行運行該命令,沒有能成功,因為我兩年前編譯的這個ffmpeg并沒有能支持wma。

于是到ffpeg的源碼目錄下(嘿嘿,這么多年了,這個源碼目錄居然還存在),忘了怎么編譯?執(zhí)行:

ffmpeg | head

就找回了原先的編譯參數(shù),是不是要加一個參數(shù)就能支持wma,難道還要裝一個lame這樣的東東么?敲上

./configure --help | grep wma

沒有結(jié)果,仔細看了一遍help,也確實沒有發(fā)現(xiàn)有關(guān)的東西。

于是在源碼目錄敲一下:

ss

請允許我有如此跳躍性的思維,其實我是沒思路的時候,習慣性隨手敲的,ss在我的機器上配置為svn up的快捷鍵。

這樣一敲結(jié)果出現(xiàn)神奇現(xiàn)象,這個目錄居然是一個svn拿下來的目錄,而且,那么多年了,居然還能從這個svn地址check下東西,svn團隊居然能把一個svn地址維護那么多年,一直沒中斷,實在是一大奇跡。

看一下這個傳奇的svn地址:

svn://svn.mplayerhq.hu/ffmpeg/trunk

朋友們可以直接敲:

svn co svn://svn.mplayerhq.hu/ffmpeg/trunk

就可以拿下ffmpeg的所有東西了,我不知道ffmpeg現(xiàn)在有沒有出tar.gz的包裹,前些年我就是直接從這個svn地址checkout下來的了。

多年沒更新了,svn up的時間還比較長……

拿下最新的源碼后,直接編譯一下看看,我的編譯參數(shù)是極簡的:

./configure --enable-gpl --disable-debug --prefix=/data/ffmpeg --enable-libmp3lame --enable-pthreads --enable-nonfree

我用的系統(tǒng)是ubuntu,在ubuntu下有ffmpeg的apt,但當時安上去后發(fā)現(xiàn)沒有聲音,于是下載了ffmpeg的svn,并自己裝上lame,才創(chuàng)出了聲音。lame記得是用apt安裝的,不很麻煩:

apt-get install lame liblame-dev

注意要安上liblame-dev的開發(fā)包,否則還是會不能支持mp3。

然后就是:

make; make install

無聊的過程。

裝完后可以一測,嗯,這回能支持了。

總結(jié)(寫到后面我總有點不耐煩):

###############################

#系統(tǒng)是ubuntu6

apt-get install lame liblame-dev

svn co svn://svn.mplayerhq.hu/ffmpeg/trunk

cd trunk

./configure --enable-gpl --disable-debug --prefix=/data/ffmpeg --enable-libmp3lame --enable-pthreads --enable-nonfree

make -j10; make install

###

然后就可以用了:

/data/ffmpeg/ffmpeg -y -ab 24 -ar 22050 -acodec wmav2 -i test.mp3 test.wma

附帶轉(zhuǎn)wmv的,我怕不支持,也小測一把:

ffmpeg -y -acodec mp3 -vcodec wmv2 -i test.rm test.wmv

ffmpeg -y -acodec wmav2 -vcodec wmv2 -i test.rm test.wmv

都可以。




關(guān)于ffmpeg 的總結(jié)(一個linux 下 集 屏幕錄像錄音,音頻視頻轉(zhuǎn)換,合并音頻視頻文件,格式轉(zhuǎn)換于一身的命令)

分類: linux 6461人閱讀 評論(6) 收藏 舉報

 

當然先安裝了 gentoo 下一條命令搞定

emerge  ffmpeg

 格式轉(zhuǎn)換 (將file.avi 轉(zhuǎn)換成output.flv)

     ffmpeg -i  file.avi   output.flv

       -i 表示輸入文件

 :現(xiàn)在有個視頻video.avi,有個音頻 audio.mp3,將其合并成output.avi

兩個命令                     ( video2.avi 是中間文件 ,用完可刪)

ffmpeg -i video.avi -vcodec copy -an video2.avi  
ffmpeg -i video2.avi -i audio.mp3 -vcodec copy -acodec copy output.avi

 -i 表示輸入文件

  -vcodec copy 表示 force video codec ('copy' to copy stream) 這個不知怎么譯 ,估計是直接copy

  -acodec copy   這個說的應該是音頻了   跟上面一樣

-an : 表示  disable audio  估計是audio no 之類的縮寫   表示去掉video.avi 原有的音頻

方法2 好像可以直接指定兩個輸入文件 ,

ffmpeg -i /tmp/a.wav  -i /tmp/a.avi /tmp/a.avi   兩個文件 的順序很重

從視頻里提取聲音(聲音與視頻的分離)

 ffmpeg  -i 人生若只如初見.flv  -vn r.mp3  從flv 文件 中提取聲音并保存為mp3 格式  

       -vn : 表示忽略視頻 估計是video no 之類的縮寫

 ffmpeg  -i 人生若只如初見.flv  -an  r.flv   只留視頻不留聲音

    -an : 表示 忽略 聲音 估計是audio no 之類的縮寫


從視頻里提取圖片( )

ffmpeg -i test.avi -y -f image2 -ss 8 -t 0.001 -s 350x240 test.jpg       
-ss 第8秒處 截一圖

壓縮mp3 文件

如果你覺得mp3 文件 有點大,想變小一點那么可以通過-ab 選項改變音頻的比特率 (bitrate)

ffmpeg -i input.mp3 -ab 128 output.mp3    //這里將比特率設(shè)為128

你可以用file 命令查看一下源文件 的信息

z.mp3: Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, Stereo

其中的192 kbps 就是這個東西

mp3中比特率的含義是:在壓縮音頻文件至mp3時,由壓縮軟件所確定數(shù)碼文件在播放時每秒傳 送給播放器大小,其單位是:千位/秒;英文的含義是:kbps - = kilobits per second?,F(xiàn)在mp3文件的最高數(shù)位率是320 kbps。這樣的文件體積很大,每分鐘的音樂超過兩兆字節(jié)。如果采用可變比特率(VBR)編碼來生成mp3文件,獲得與320 kbps相當音質(zhì),文件的體積會縮小25~50%。請注意:播放時間相同,而歌曲不同,所獲的壓縮mp3文件的一般不相同,這是因為VBR編碼所生成的 mp3文件的大小不僅僅取決于播放時間的長度,還取決于源音頻文件的其它因素。


錄音(要有可用的麥克風,并且如果用alsa 的話,好像得安alsa-oss,重啟)

 ffmpeg  -f oss -i /dev/dsp   out.avi  (should  hava oss or alsa-oss)

 ffmpeg   -f  alsa -ac 2 -i hw:0, 0  out.avi   (should )

 ffmpeg   -f alsa -ac 2 -i pulse  (should hava PulseAudio)

 

   oss 是linux 下的聲音相關(guān)的東西,與alsa 一樣,不過oss 是商業(yè)的, 而/dev/dsp 是oss 用到的麥克的設(shè)備吧,可以這樣理解

屏幕錄像

ffmpeg -f x11grab -s xga -r 10 -i :0.0+0+0 wheer.avi 

ffmpeg -f x11grab  -s 320x240  -r 10 -i :0.0+100+200 wheer.avi

:0:0 表示屏幕(個人理解,因為系統(tǒng)變量$DISPLAY值就是:0.0)  而100,表示距左端100象素,200表示距上端200

-s 設(shè)置窗口大小

  -r 10 好像是設(shè)置頻率,不懂

ffmpeg -f x11grab -s xga    -qscale 5    -r 10 -i :0.0+0+0 wheer.avi 

-qscale 8 設(shè)定畫面質(zhì)量,值 越小越好

屏幕錄像,同時錄音

ffmpeg -f oss -i /dev/dsp        -f x11grab -r 30 -s 1024x768 -i :0.0  output.mkv

ffmpeg   -ac 2 -f oss  -i  /dev/dsp   -f x11grab -r 30 -s 1024x768 -i :0.0 -acodec pcm_s16le -vcodec libx264 -vpre lossless_ultrafast -threads 0 output.mkv

看到這,你會發(fā)現(xiàn)這個命令有多強大,

如果我屏幕上打開了一個窗口,我只想錄這個窗口的內(nèi)容,如何確定這個窗口的坐標位置呢

可以用另外一個命令

xwininfo 輸入這個命令后,用鼠標點選目標窗口,

就會出現(xiàn)目標窗口的坐標,寬高等一系列信息

Absolute upper-left X:  276
  Absolute upper-left Y:  57
  Relative upper-left X:  2
  Relative upper-left Y:  23
  Width: 742
  Height: 499
  Depth: 24
  Visual: 0x21
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x20 (installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +276+57  -262+57  -262-244  +276-244
  -geometry 80x24+274+34 看到這一行了沒 ()

 

比如根據(jù)上面的信息

ffmpeg -f oss  -i  /dev/dsp      -f  x11grab -r 30  -s 1280x752 -i :0.0+0+23  output.avi
Another thing you can change is the video frame rate (FPS). In the example above we used -r 30 which means capture at 30 FPS. You can change this value to whatever frame rate you want.

這個 -r 30 應該是每秒鐘取樣幾次,估計是一秒截三十次屏,

切頭去尾

 ffmpeg -ss 00:00:10 -t 00:01:22 -i 五月天-突然好想你.mp3  output.mp3

只要 從第10秒開始截取,共截取1:22時長的內(nèi)容

視頻文件的連接,如兩個flv 文件 連接成一

好像必須先將文件 轉(zhuǎn)成mpg ,dv 等格式的文件后才能進行連接

  • 連接復數(shù)的AVI影片檔之范例(在此范例中須一度暫時將AVI檔轉(zhuǎn)換成MPEG-1檔(MPEG-1, MPEG-2 PS, DV格式亦可連接))
ffmpeg -i input1.avi -sameq inputfile_01.mpg -r 20
ffmpeg -i input2.avi -sameq inputfile_02.mpg -r 20
cat inputfile_01.mpg inputfile_02.mpg > inputfile_all.mpg
ffmpeg -i inputfile_all.mpg -sameq outputfile.avi
上面將 input1.avi input2.avi 合并成outputfile.avi -sameq 表示 相同的質(zhì)量(可能指的是畫面,不太清楚)
-r 指頻率


=====================================================================下面是wiki 上給的幾個例子

參數(shù)

FFmpeg可使用眾多參數(shù),參數(shù)內(nèi)容會根據(jù)ffmpeg版本而有差異,使用前建議先參考參數(shù)及編解碼器的敘述。此外,參數(shù)明細可用 ffmpeg -h 顯示;編解碼器名稱等明細可用 ffmpeg -formats 顯示。

下列為較常使用的參數(shù)。

[編輯 ] 主要參數(shù)

  • -i 設(shè)定輸入檔名。
  • -f 設(shè)定輸出格式。
  • -y 若輸出檔案已存在時則覆蓋檔案。
  • -fs 超過指定的檔案大小時則結(jié)束轉(zhuǎn)換。
  • -ss 從指定時間開始轉(zhuǎn)換。
  • -title 設(shè)定標題。
  • -timestamp 設(shè)定時間戳。
  • -vsync 增減Frame使影音同步。

[編輯 ] 影像參數(shù)

  • -b 設(shè)定影像流量,默認為200Kbit/秒。( 單位請參照下方注意事項
  • -r 設(shè)定FrameRate值,默認為25。
  • -s 設(shè)定畫面的寬與高。
  • -aspect 設(shè)定畫面的比例。
  • -vn 不處理影像,于僅針對聲音做處理時使用。
  • -vcodec 設(shè)定影像影像編解碼器,未設(shè)定時則使用與輸入檔案相同之編解碼器。

[編輯 ] 聲音參數(shù)

  • -ab 設(shè)定每Channel (最近的SVN 版為所有Channel的總合)的流量。( 單位 請參照下方注意事項
  • -ar 設(shè)定采樣率。
  • -ac 設(shè)定聲音的Channel數(shù)。
  • -acodec 設(shè)定聲音編解碼器,未設(shè)定時與影像相同,使用與輸入檔案相同之編解碼器。
  • -an 不處理聲音,于僅針對影像做處理時使用。
  • -vol 設(shè)定音量大小,256為標準音量。(要設(shè)定成兩倍音量時則輸入512,依此類推。)

[編輯 ] 注意事項

  • 以-b及ab參數(shù)設(shè)定流量時,根據(jù)使用的ffmpeg版本,須注意單位會有kbits/sec與bits/sec的不同。(可用ffmpeg -h顯示說明來確認單位。)
例如,單位為bits/sec的情況時,欲指定流量64kbps時需輸入‘ -ab 64k ’;單位為kbits/sec的情況時則需輸入‘ -ab 64 ’。
  • 以-acodec及-vcodec所指定的編解碼器名稱,會根據(jù)使用的ffmpeg版本而有所不同。例如使用AAC編解碼器時,會有輸入aac與 libfaac的情況。此外,編解碼器有分為僅供解碼時使用與僅供編碼時使用,因此一定要利用ffmpeg -formats 確 認輸入的編解碼器是否能運作。

[編輯 ] 范例

  • 將MPEG-1影片轉(zhuǎn)換成MPEG-4格式之范例
ffmpeg -i inputfile.mpg -f mp4 -acodec libfaac -vcodec mpeg4 -b 256k -ab 64k outputfile.mp4
  • 將MP3聲音轉(zhuǎn)換成MPEG-4格式之范例
ffmpeg -i inputfile.mp3 -f mp4 -acodec libaac -vn -ab 64k outputfile.mp4
  • 將DVD的VOB檔轉(zhuǎn)換成VideoCD格式的MPEG-1檔之范例
ffmpeg -i inputfile.vob -f mpeg -acodec mp2 -vcodec mpeg1video -s 352x240 -b 1152k -ab 128k outputfile.mpg
  • 將AVI影片轉(zhuǎn)換成H.264格式的M4V檔之范例
  • ffmpeg -i inputfile.avi -f mp4 -acodec libfaac -vcodec libx264 -b 512k -ab 320k outputfile.m4v
  • 將任何影片轉(zhuǎn)換成東芝REGZA可辨識的MPEG2格式之范例
  • ffmpeg -i inputfile -target ntsc-svcd -ab 128k -aspect 4:3 -s 720x480 outputfile.mpg
  • 連接復數(shù)的AVI影片檔之范例(在此范例中須一度暫時將AVI檔轉(zhuǎn)換成MPEG-1檔(MPEG-1, MPEG-2 PS
DV格式亦可連接)、
ffmpeg -i input1.avi -sameq inputfile_01.mpg
ffmpeg -i input2.avi -sameq inputfile_02.mpg
cat inputfile_01.mpg inputfile_02.mpg > inputfile_all.mpg
ffmpeg -i inputfile_all.mpg -sameq outputfile.avi
=============================================================================
http:///ffmpeg-doc.html
http:///showthread.php?t=1392026
同時搞明白的一些問題
在alsa 體系中聲卡(也可能是麥克風,)叫hw:0,0 而在oss 體系中叫/dev/dsp (用詞可能不太專業(yè))  Linux在安裝了聲卡后,會有一些設(shè)備文件生成。   采集數(shù)字樣本的 /dev/dsp文件,針對混音器的 /dev/mixer文件,用于音序器的 /dev/sequencer, /dev/audio文件一個 基于兼容性考慮的聲音設(shè)備文件。只要向 /dev/audio中輸入 wav文件就能發(fā)出聲音。而對 /dev/dsp文件讀取就能得到 WAV文件格式的聲音文件。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多