在Ubuntu下如何批量轉換視頻為mp4格式?
Ubuntu10.10的軟件中心里有一個名為Transmageddon軟件,可以很方便地制作如MP4,Ogg,QuickTime等格式。不過如果你有一大批視頻需要轉換,那么使用mencoder程序會比較方便,mencoder幾乎支持所有的視頻格式,而且可調參數豐富、速度快。
H.264(又名MPEG4AVC)是目前比較流行的視頻編碼方式,比起MPEG2在畫質大致相同的情況下能再壓縮2~4倍,即如果一個DVD視頻大小是1GB,用H264編碼后能縮小到250MB左右,同時H264視頻還能用時髦的瀏覽器(比如Firefox,Chrome,ie9等)直接播放,如果你有一堆DVD或者HomeVideo(舊款的家用DV一般是MPEG2格式)想刻錄到光盤存檔,又或者有一大堆RMVB,AVI等想用iPod,iPad播放,那么用H264編碼是一個不錯的選擇。
首選你需要安裝mencoder程序:
- $sudoapt-getinstallmencoder
查看你系統支持哪些視頻和音頻編碼器:
- $mencoder-ovchelp
- $mencoder-oachelp
然后查看你系統支持哪些封裝格式:
- mencoder-ofhelp
如果有MP3lame音頻編碼器和x264視頻編碼器以及MP4格式封裝,那么所有的條件就已經具備了,否則你可能需要安裝相應的音頻和視頻編碼器:
- $sudoapt-getinstallffmpeglibavcodec-extra-52
首先試試壓縮一段MPEG2視頻
- $mencoderm001.mpg-om001.MP4-oacMP3lame-ovcx264-oflavf-vflavcdeint
上面命令中的m001.mpg和m001.MP4分別是輸入和輸出文件名,-oac用于指定音頻編碼器,-ovc指定視頻編碼器,-of指定輸出文件封裝方式,lavf表示輸出文件封裝方式由輸出文件名決定(即你用m001.mp4就用mp4封裝,用m001.avi的話就用avi封裝),最后-vflavcdeint參數用于去除視頻中的拉絲條紋(鋸齒紋),如果沒有的話不要這個參數也可以。
h264的編碼過程比較耗時,在我的電腦(AMD四核2.8G)編碼速度大概是30fps,基本上就是視頻播放有多長時間,編碼就需要多長時間。
如果沒有問題的話,下面我們就可以寫一段腳本用于批量轉換編碼
- #!/bin/bash
- find.-typef\(-name“*.mpg”-o-name“*.mpeg”\)|whilereadline;do
- echo$line
- mencoder$line-o${line}.MP4-oacMP3lame-ovcx264-oflavf-vflavcdeint
將上面的腳本保存在存放原始視頻的文件夾里,然后添加可執行屬性再運行,就可以把文件夾里所有后綴名為“mpg”的視頻編碼為H264+MP4封裝的格式了。
除了mencoder之外,還可以使用ffmpeg來編碼。
總結:
希望本文介紹的在Ubuntu下批量轉換視頻為mp4格式的內容能夠對讀者有所幫助,更多有關linux系統的知識還有待于讀者去探索和學習。
【編輯推薦】