封裝格式的主要作用是把視頻碼流和音頻碼流按照一定的格式存儲在一個文件中。現如今流行的封裝格式如下表所示:
此表來自雷神:[總結]視音頻編解碼技術零基礎學習方法,由表可見:
1.除了AVI之外,其他封裝格式都支持流媒體,即可以“邊下邊播”。有些格式更“萬能”一些,支持的視音頻編碼標準多一些,比如MKV。而有些格式則支持的相對比較少,比如說RMVB。
2.幾乎所有封裝格式都音頻編碼都支持AAC。
雷神博客中還有關於AAC、MP3和WMA等主流音頻編碼格式的對比,對比結果表明在碼率較低的情況下,不同編碼方案的音頻的音質排序爲:
AAC+> MP3PRO > AAC > RealAudio > WMA > MP3
因此,在錄製mp4的時候,都是先把G711a/G711u/G726解碼爲PCM,然後再編碼成AAC。
實現的方法有兩種:
1.使用ffmpeg先解碼再編碼。
2.使用開源庫EasyAACEncoder,EasyAACEncoder 是EasyDarwin開源流媒體服務團隊整理、開發的一款音頻轉碼到AAC的工具庫,