多媒體容器與壓縮標準的區別

 通常在操作系統中,多媒體流是以文件的形式存在的,例如某部電影。多媒體文件一般包含兩部分內容:媒體數據(主要指音頻或視頻)的編碼格式和特定的多媒體文件格式。 

在一個多媒體文件中,音頻數據或視頻數據是按照一定的壓縮編碼標準來編碼的,這樣會很大程度上降低數據量。音頻編碼格式包括ac3,ogg,real audio,mp3等;視頻編碼格式包括mpeg-1/mpeg-2/mpeg-4, h.264, real video,DivX,XVid等。這種編碼方式就是我們通常所說的壓縮標準。  

對於一般多媒體文件,其同時包含按一定編碼格式壓縮好的音頻流和視頻流。但這兩種壓縮碼流如何在一個文件中“共存”呢?這就要定義一定的文件"系統"格式:比如音頻數據和視頻數據如何打包,如何交織在一起,播放的時候如何來做到音視頻同步等等。常見的文件系統格式有avi,mpeg,asf,MKV等等。而這些文件系統格式既我們所說的多媒體容器。


很多文件系統格式不限制包含的音頻/視頻數據到底採用哪種編碼格式,這就不難理解“文件容器”一說。比如一個擴展名爲avi的文件,它包含的視頻壓縮格式可能是RGB,YUV,DivX,XVid, mpeg-4,它的音頻格式可能是mp3,real audio等,這些都是合法的。

 

多媒體容器文件格式一般都包括文件頭部分、索引部分和多媒體數據部分。

文件頭

索引

多媒體數據

文件頭部分:文件頭說明了多媒體數據符合的壓縮標準及規範信息,常見的多媒體數據的壓縮標準有:MPEG(Moving Picture Experts Group)系列和H261、H263、H264系列,而多媒體數據的規範信息包括視頻的分辨率、幀率,音頻的採樣率等。

索引部分由於多媒體數據一般包括音頻數據和視頻數據,因此多媒體中的音頻數據/視頻數據通常並不是連續的,而是分成幾塊存儲在文件中,因此需要索引部分建立多媒體數據的存儲位置索引,用來記錄相應數據塊的存儲位置即偏移量,由於各數據塊的大小可能不同,因此也可能需要在索引部分建立各種多媒體數據塊的尺寸大小索引,用來記錄相應數據塊的尺寸大小。此外在索引部分還建立了其他索引,比如音視頻同步索引等等。播放這些多媒體容器文件時,一般是將索引一次性的全部放到內存中,然後在播放中根據操作(快進、快退等)來通過數據索引得到所需的數據。而如何存儲這些音視頻數據,不同的容器之間也有差異。

多媒體數據部分:即按照某種壓縮標準壓縮的多媒體數據,包括視頻數據、音頻數據、文本數據及其他多媒體數據。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章