目錄
視頻編碼格式
編輯視頻編碼格式,是一種內容表示格式用于存儲或傳輸數字視頻內容(例如,在一個數據文件或比特流)。它通常使用標準化的視頻壓縮算法,通常基于離散余弦變換(DCT)編碼和運動補償。視頻編碼格式的示例包括H.262(MPEG-2第2部分)、MPEG-4第2部分、H.264(MPEG-4第10部分)、HEVC(H.265)、Theora、RealVideo?RV40、VP9和AV1。能夠將特定視頻編碼格式壓縮或解壓縮的特定軟件或硬件實現稱為視頻編解碼器;Xvid是視頻編解碼器的一個示例,它是幾種不同的編解碼器之一,該編解碼器以軟件的形式實現以MPEG-4 Part 2視頻編碼格式對視頻進行編碼和解碼。
一些視頻編碼格式由稱為視頻編碼規范的詳細技術規范文檔記錄。一些這樣的規范被標準化組織書面并批準為技術標準,因此被稱為視頻編碼標準。術語“標準”有時也用于事實上的標準以及正式標準。
使用特定視頻編碼格式編碼的視頻內容通常與AVI、MP4、FLV、RealMedia或Matroska等多媒體容器格式內的音頻流(使用音頻編碼格式編碼)捆綁在一起。因此,用戶通常沒有H.264文件,而是具有.mp4視頻文件,該文件是一個MP4容器,其中包含H.264編碼的視頻以及通常與AAC編碼的音頻。多媒體容器格式可以包含多種不同的視頻編碼格式中的任何一種。例如,MP4容器格式可以包含以下格式的視頻:MPEG-2第2部分或H.264視頻編碼格式等。另一個示例是文件類型WebM的初始規范,該規范指定了容器格式(Matroska),但確切說明了Matroska容器內部使用的視頻(VP8)和音頻(Vorbis)壓縮格式,即使Matroska容器格式本身也是如此能夠包含其他視頻編碼格式(后來將VP9視頻和Opus音頻支持添加到WebM規范中)。
“格式”和“編解碼器”之間的區別
編輯盡管有時將諸如H.264之類的視頻編碼格式稱為編解碼器,但在規范及其實現之間存在明顯的概念差異。視頻編碼格式在規范中進行了描述,以給定視頻編碼格式對未壓縮視頻進行編碼/解碼的軟件或硬件是這些規范的實現。類似地,視頻編碼格式H.264(規范)對于編解碼器?OpenH264(特定實現),而C編程語言(規范)對編譯器GCC(特定實現)。請注意,對于每個規范(例如H.264),則可能有許多實現該規范的編解碼器(例如x264、OpenH264、H.264 / MPEG-4 AVC產品和實現)。
在文獻中,這種區別并未在術語上始終如一地體現出來。H.264規范調用H.261、H.262、H.263和H.264?視頻編碼標準,并且不包含編解碼器一詞。聯盟開放媒體明確區分AV1的視頻編碼格式和編解碼器,他們正在開發的陪同,但調用視頻編碼格式本身就是一個視頻編解碼規范。所述的VP9規范要求視頻編碼格式VP9本身編解碼器。
作為合并的一個示例,Chromium的和Mozilla的頁面列出了它們的視頻格式,同時支持兩種呼叫視頻編碼格式,例如H.264編解碼器。再舉一個例子,在思科發布的免費啤酒視頻編解碼器中,新聞稿將H.264視頻編碼格式稱為“編解碼器”(“通用視頻編解碼器的選擇”),但稱思科為之后不久便實現了H.264編碼器/解碼器的“編解碼器”(“開源H.264編解碼器”)。
視頻編碼格式并不規定實現該格式的編解碼器使用的所有算法。例如,視頻壓縮通常如何工作的很大一部分是通過找到視頻幀之間的相似性(塊匹配),然后通過復制先前編碼的相似子圖像并在必要時添加小的差異來實現壓縮。找到這樣的預測因子和差異的最佳組合是一個NP難題,這意味著實際上不可能找到最佳解決方案。盡管視頻編碼格式必須支持跨比特流格式的此類壓縮,但是通過不必要地強制使用特定算法來查找此類塊匹配和其他編碼步驟,實現視頻編碼規范的編解碼器仍可以自由選擇進行優化和創新算法。例如,H.264規范的第0.5節指出,編碼算法不屬于該規范的一部分。自由選擇算法還允許不同的時空復雜度?對于相同的視頻編碼格式,需要進行權衡取舍,因此現場直播可以使用快速但空間效率低的算法,而一次性DVD編碼用于以后的批量生產可以將較長的編碼時間用于空間效率的編碼。
無損、有損和未壓縮的視頻編碼格式
編輯消費類視頻通常使用有損視頻編解碼器進行壓縮,因為與無損壓縮相比,這將導致文件xxx縮小。盡管有一些視頻編碼格式是專門為有損或無損壓縮而設計的,但某些視頻編碼格式(例如Dirac和H.264)都支持這兩種格式。
未壓縮的視頻格式(例如Clean HDMI)是在某些情況下(例如,通過HDMI連接將視頻發送到顯示器時)使用的無損視頻的一種形式。一些高端相機也可以直接以這種格式捕獲視頻。
幀內視頻編碼格式
編輯幀間壓縮使編碼視頻序列的編輯變得復雜。相對簡單的視頻編碼格式的一個子類是幀內視頻格式,例如DV,其中視頻流的每個幀都獨立壓縮,而無需參考流中的其他幀,因此不嘗試采用連續圖片之間隨時間變化的相關性的優勢,可以實現更好的壓縮。一個示例是Motion JPEG,它只是一系列單獨的JPEG壓縮圖像。這種方法是快速和簡單的,其代價是編碼視頻比支持幀間編碼的視頻編碼格式大得多。
因為幀間壓縮將數據從一幀復制到另一幀,所以如果僅剪切原始幀(或在傳輸中丟失),則后續幀將無法正確重建。在進行視頻編輯時,在幀內壓縮視頻中進行“剪切”幾乎與編輯未壓縮視頻一樣容易:人們找到每一幀的開始和結尾,然后簡單地逐位復制要保留的每一幀,然后丟棄該幀。不需要一個。幀內和幀間壓縮之間的另一個區別是,對于幀內系統,每個幀使用相似數量的數據。在大多數幀間系統中,某些幀(例如MPEG-2中的“?I幀”)不允許從其他框架復制數據,因此與附近的其他框架相比,它們需要更多的數據。
可以構建一個基于計算機的視頻編輯器,以發現當我的幀被編輯而其他幀需要它們時引起的問題。這樣就可以將HDV等較新的格式用于編輯。但是,與以相同圖片質量編輯幀內壓縮視頻相比,此過程需要更多的計算能力。但是,這種壓縮對于任何音頻格式都不是很有效。
配置文件和級別
編輯視頻編碼格式可以定義對編碼視頻的可選限制,稱為配置文件和級別。可能有一個解碼器僅支持解碼給定視頻格式的配置文件和級別的子集,例如使解碼器程序/硬件更小、更簡單或更快速。
甲輪廓其中編碼技術限制是允許的。例如,H.264格式包括配置文件baseline、main和high(以及其他)。雖然在所有配置文件中都支持P切片(可以基于先前的切片進行預測),但在主要和高級配置文件中都支持B切片(可以基于先前的切片和后續的切片進行預測),但在基線中不支持。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/117318/