一、釐清概念
formats :視頻文件格式(簡稱:文件格式)
codecs :視頻封裝格式(簡稱:視頻格式)
codecs 負責在保證視頻清晰度的基礎上儘可能的壓縮視頻,所以 codecs 同時需要對應的編碼器和解碼器。
而 formats 只是一個承載被壓縮的視頻的容器而已。他負責把視頻、音頻綁定起來,並且高級的 formats 會提供如支持內嵌字母,支持分章節等擴展功能
舉例:xxx.avi 的 formats 是 avi,codecs 是 H.264。
碼率:視頻碼率就是數據傳輸時單位時間傳送的數據位數,一般我們用的單位是kbps即千位每秒。碼率越高,視頻越清晰。
但為了節約視頻的體積,在畫面變化幅度不大或者色調比較單一的時候,主流的做法是採用 VBR 可變碼率來收錄畫面。
二、formats
1、常見的 formats
格式公司備註MP4AVI微軟WMV微軟MOV蘋果QuickTime 影片格式M4V蘋果基於 MP4 的封裝RM / RMVBrealplayFLVflashWebMgoogle
注:RMVB 比 RM 多了 VB,就是加入了可變碼率(VBR)的技術
2、主流視頻網站使用的 formats
視頻網站格式優酷MP4騰訊視頻MP4bilibiliFLVYoutubeWebM
注:html5 中的 照理說不支持 FLV 格式,bilibili 是如何做到的呢,答案就在這個庫:https://github.com/Bilibili/flv.js/
三、codecs
下面是制定 codecs 視頻壓縮技術的幾個主流組織:
1、MPEG
MPEG (Moving Picture Experts Group):國際標準化組織(ISO)和國際電工委員會(IEC)下屬的“動態影像專家組”
MPEG-1(VCD)、MPEG-2(DVD)、和MPEG-4(互聯網)
注:沒有 MPEG-3
2、ITU
ITU :國際電傳視訊聯盟( International Telecommunication Union )
3、H.264
MPEG 跟 ITU 合作弄出了 H.26X 系列(H.261 H.262……),其中 H.264 是現在使用最多的。
注:一般會跟 MP4 搭配,稱之為 MP4 + H.264
比如我電腦上隨機找一個視頻文件:
不過,H.264 是一種專利視頻格式。它的專利被一家 MPEG-LA 公司控制。
既然有專利,那就有專利到期後續費被惡意抬價的風險,所以誕生了民間的開源的 Theora。
但為什麼現在大家都在用 H.264 而不是 Theora 呢?
第一個原因:沒有一家實體公司來承擔 Theora 的專利責任
第二個原因:一些主要的大公司,本身就是 MPEG-LA "專利池"的所有者,比如蘋果公司和微軟公司。
第三個原因:H.264 也有免費授權,前提是你使用得是非商業目的。
4、VP8
在最新的一代 H.265 到來之前,攪局者 Google 帶著 VP8 出現了,基於 VP8 的 formats 稱為 WebM。
VP8 比起前面提到的 Theora 來說,要更加的優秀,而且還有強大的社區作為其後盾,特別是 Google 的支持,所以他率先用在了 Youtube 上。
而且 VP9 也快來到了。
VP8 跟 H.264 比最大的好處應該就是沒有專利權問題。
VP8 跟 H.264 比不足的就是,H.264 有眾多硬件支持,而 VP8 暫時只能靠軟解碼,所以誰快誰慢不言而喻。
四、html5支持的視頻格式
按熱門從上到下排序:
MP4 + H.264
WebM + VP8
Ogg + Theora + Vorbis
五、常用軟件操作
1、final cut pro 做好視頻後導出為mp4保存
需求:不想默認保存為蘋果的 mov 格式怎麼辦?
2、Aimersoft Video Converter Ultimate —— Mac 下的“格式工廠”
同樣是蘋果開發的格式轉換軟件 compressor,竟然不支持轉換到 mp4
所以我們用 Aimersoft Video Converter Ultimate
[拓展]
硬解 vs 軟解
硬解碼是用GPU解碼,不會造成過多的CPU負載
軟解碼是用CPU解碼,會導致是CPU佔用率很高
推薦看視頻打開硬解碼,好處如下:
(1)高清視頻下硬解碼效果會好於軟解碼
(2)硬解碼更省電
閱讀更多 小蔣不素小蔣 的文章