音視頻編碼簡介

來源:互聯網
上載者:User

音視頻編碼簡介

1、用到的工具:

    MPlayer(基於命令列的播放器)

    mencoder(基於命令列的轉碼器)

    Firefox(圖形介面的瀏覽器)

2、任何影片的播放都分為3個步驟:拆包->解碼->渲染
,分別對應播放器的分離器(demuxer)->解碼器(decode)->渲染器

 

    (1)拆包

,即是播放器調用分離器,將封包中的視頻軌道和音頻軌道正確的取出來的過程。

      使用mplayer –demuxer help命令可以查看系統支援分離器。

 

     (2)解碼

,當分離器正確的從封包中取出視頻軌道和音頻軌道以後,播放器識別檔案編碼格式,然後調用相應的解碼器進行解碼。

    使用mplayer –vc help命令可以查看系統支援的視頻解碼器;

    使用mplayer –ac help命令可以查看系統支援的音頻解碼器。

 

    (3)渲染

,解碼器將音頻視頻翻譯完畢,由渲染器輸出的過程。可以理解為畫面出來了,顯示在螢幕上,聲音處理好了,從喇叭出來的過程。

    使用mplayer -vf help命令來查看渲染效果。

 

3、關於MenuCoder

 

    (0)安裝相應的解碼器:sudo apt-get install ffmpeg libavcodec-extra-52

    (1)安裝:sudo apt-get install mencoder

    (2)查看系統支援的音頻、視頻編碼:mencoder -ovc help、mencoder -oac help。

    (3)查看系統支援的封裝格式:mencoder -of help

    (4)壓縮一段視頻:mencoder m001.mpg -o m001.mp4 -oac mp3lame -ovc x264 -of lavf -vf lavcdeint。

    上面命令中的 m001.mpg 和 m001.mp4 分別是輸入和輸出檔案名,-oac 用於指定音頻編碼器,-ovc 指定視頻編碼器, -of
指定輸出檔案封裝方式,lavf表示輸出檔案封裝方式由輸出檔案名決定(即你用m001.mp4就用mp4封裝,用m001.avi的話就用avi封
裝),最後 -vf lavcdeint 參數用於去除視頻中的拉絲條紋(鋸齒紋),如果沒有的話不要這個參數也可以。

    (5)批量轉換指令碼:

    #!/bin/bash
    find . -type f /( -name “*.mpg” -o -name “*.mpeg” /)|while read line;do
    echo $line
    mencoder $line -o ${line}.mp4 -oac mp3lame -ovc x264 -of lavf -vf lavcdeint

 

5、ffmpeg也可以實現上述操作。參見連結:http://www.opensoce.com/?p=1018

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.