日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Linux系統(tǒng)中提取DVD音頻的方法介紹

老婆借了盤DVD,非要讓我把它想辦法留下來 。保存.vob是不現(xiàn)實(shí)了 。為了給老婆展示一下Linux的強(qiáng)大,特地到網(wǎng)上攻讀了一番 。
很可惜的是:工作的最開始還是用了一下Windows,因?yàn)槲业臋C(jī)器都沒有DVD-ROM, 所以用別人的機(jī)器把那些VOB文件copy下來,然后上傳到我的Linux服務(wù)器上 。這臺(tái)機(jī)器上沒有X Window, 所以下面全部的工作都是ssh到服務(wù)器上,然后在命令行下做的 。
1. 音頻編碼:

mencoder -ovc frameno -o frameno.avi;
-oac mp3lame -lameopts abr:br=96 -alang en VTS_01_1.VOB


稍微解釋一下參數(shù)的意思:一般字母o開頭的參數(shù)就是指output的意思了, a就是audio, v是video, c是codec, br是bit-rate(br有幾種:vbr, abr, cbr 。v,a和c意思分別是variable,average和constant 。) alang是指audio language 。en是英文,中文是zh 。有時(shí)可能會(huì)有兩個(gè)聲道,都是中文(zh),一個(gè)普通話,一個(gè)廣東話 。這時(shí)就不能用alang這個(gè)參數(shù)了,要用-aid 。還有,就是這里用了LAME的mp3編碼 。
總之,這行命令中需要改的就是"en"和文件名了 。"96"也可改成128,但最終的文件可能會(huì)比較大 。frameno和frameno.avi不要改 。
【Linux系統(tǒng)中提取DVD音頻的方法介紹】2. 視頻編碼:(1st pass)

mencoder -oac copy -o /dev/null -ovc lavc -lavcopts
vcodec=mpeg4:vbitrate=576:vhq:vpass=1 -vf
scale=640:480,crop=640:344:0:66,lavcdeint VTS_01_1.VOB

這里用了libavcodec來做mpeg4的編碼 。最重要的就是-vf了,vf意思是video filter 。所有的filters要用逗號(hào)隔開 。我用了scale,crop和lavcdeint三個(gè)filters 。scale就是把DVD原本的
720x576變成640x480 。crop就是把已經(jīng)scaled成640x480的圖像繼續(xù)切成640x344 。0:66是告訴mencoder從什么地方開始切,從左上角開始算,橫者數(shù)0,豎者數(shù)66 。注意切出來的圖像最好是8的整數(shù),如上面的344 。lavcdeint就是de-interlace,不知道中文怎么譯 。如果你弄出來圖像上能看到明顯的橫紋,就要加上這個(gè)選項(xiàng) 。
3. 視頻編碼:(2nd pass)

mencoder -oac copy -o mymovie_1.avi -ovc
lavc -lavcopts vcodec=mpeg4:vbitrate=576:vhq:vpass=2;
-vf scale=640:480,crop=640:344:0:66,lavcdeint VTS_01_1.VOB


在first pass里我們已經(jīng)看到,輸出是到/dev/null的,也就是丟掉不要了 。輸出的只有divx2pass.log這么一個(gè)文件 。到了這個(gè)second pass,就要在-o后面放上真正的文件名了 。還有就是把vpass改成2 。我用的vbitrate=576是為了控制2小時(shí)10分鐘片子壓到小于700MB 。我記得音頻部分做完時(shí)會(huì)有一個(gè)建議的vbitrate,可以參考 。
好了,已經(jīng)把第一個(gè)vob變成avi了 。然后刪掉divx2pass.log和frameno.avi,重復(fù)上面的步驟,把所有的vob都變成avi 。
4. 把所有的avi文件用下面的命令處理一下

mencoder -idx mymovie_1.avi -ovc copy;
-oac copy -o mymovie_1_out.avi

5. 合并所有的avi成一個(gè)文件
cat mymoive_1_out.avi mymoive_2_out.
avi ... mymoive_8_out.avi > mymovie.avi
mencoder -noidx -ovc copy -oac copy
-o mymovie_final.avi mymove.avi

OK! 搞定!dvd我們一般把它rip成avi格式 。用的編碼一半是xvid.mpeg4,lavcopts,質(zhì)量較好的編碼一半選用3pass編碼方式,得到的文件大小一般也是700M左右 。就是說要編碼三次 。(可惜不能用rmvb,它就比avi小多了,質(zhì)量也很好) 。
第一次是音頻編碼,可以順便剝離字幕,第二次是第一次視頻編碼,主要為了得到一個(gè)編碼表,第三次就是按照第二次得到的碼表再次編碼,順便把第一次得到的音頻合成進(jìn)去 。
簡(jiǎn)單的就如下:
PHP代碼:

3-pass編碼的例子:dvd-rip
rm frameno.avi -- 移去這個(gè)文件,它可能來自以前的3-pass編碼(它會(huì)干擾當(dāng)前編碼)
mencoder dvd://2 -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3

推薦閱讀