1. 程式人生 > >視訊編碼的守望者——專訪x264核心開發者“Dark Shikari”詹森·蓋瑞特格拉澤

視訊編碼的守望者——專訪x264核心開發者“Dark Shikari”詹森·蓋瑞特格拉澤

詹森·蓋瑞 特-格拉澤(Jason Garrett-Glaser),網名Dark Shikari,現x264專案核心開發者,同時也是ffmpeg等專案的開發者。詹森目前就讀於美國哈維姆德學院,一所以培養科學家、工程師和數學家而 聞名的私立文理學院。 Dark Shikari在視訊處理與高清愛好者群體中影響頗大,他的一些觀點以及部落格文章(比如《尋找最適合動 漫的視訊編 碼》(婦聯評論譯文)、《橘化為枳——探究為何各種 H.264編碼器表現良莠不齊》(婦聯評論譯 文))廣為流傳。

近日,詹森接受了婦聯記者專訪,談及x264支援藍光編碼對高清業界的影響,以及開源社群與視訊編碼的相關話題。

事 件小引
x264專案組核心成員詹森·蓋瑞特-格拉澤(網名Dark Shikari)於2010年4月26日在其部落格“一個x264開發者的日誌”上宣佈x264編碼器正式支援藍光視訊編碼,這使得x264成為第一款支援 藍光視訊編碼的自由軟體。

x264是一個基於GNU通用公共許可證(GPL)釋出的H.264/AVC視訊編碼函式庫,是一款自由軟體。在藍光視盤支援的三種視訊編碼之 中,H.264/AVC的編碼質量最高,使用最為廣泛。

詹森指出,x264將大大降低一般使用者製作高清視盤的成本。專業級藍光視訊編碼器價格不菲,比如據說售價十萬美元的SONY Blu-code,而且質量良莠不齊。“得益於x264強大的壓縮效率,”詹森稱,“藍光級別的視訊能夠在保持合理質量的前提下,使用DVD光碟作為載 體,這樣消費者就無需購買昂貴的藍光燒錄機。”

但詹森同時也指出,由於自由軟體藍光編輯工具的缺失,目前僅使用自由軟體尚無法完成藍光視盤的創作。

根據x264的開發日誌和Doom9論壇的相關討論,x264專案對藍光視訊編碼支援的開發歷時逾兩年,並於2010年3月27日進入Git程式碼庫,公開 提供支援。

問:

您今日早些時候在部落格上宣佈x264正式支援藍光編碼。作為一款自由軟體藍光視訊編碼器,x264會對藍光產業產生影響麼?比如價格上 的。
詹森:我想不會。各大傳媒公司完全壟斷了藍光產業。舉個例子,只有《鋼鐵俠》的版權所有人才能授權生產發行《鋼鐵俠》 的藍光光碟。這意味著他們可以對其漫天要價,因為沒有別的途徑可以合法地獲得《鋼鐵俠》藍光光碟。雖然自由軟體使得藍光光碟的生產成本降低了,但這也只會 讓他們獲得更多利益,而不會對價格造成影響。
實際上,我認為x264將更有助於無法承擔昂貴專業工具的小型發行機構和業餘愛好者(來製作藍光光碟)。

問:作為一名使用者,我切身體會到了x264編碼器的強大。但是鑑於H.264/AVC標準並不是一個開源標準,這會不 會對自由軟體x264的應用,尤其是商業應用,造成影響呢?
詹森:
事實上並不存在這個問題。從MPEG-LA(動態視訊專家組授權組織)獲取H.264授權的條款是無差別的,也 就是說他們有義務以同樣費用向任何申請者授權(即不能因為是自由軟體就不受理申請或者漫天要價)。需要分發100000份以上x264編碼器的公司可以向 MPEG-LA申請授權;而在100000份以內,這個授權是免費的。這和其他編碼器的授權模式是一樣的:由經銷商而非開發者支付授權費用。

問:我曾經聽到過一種說法:H.264/AVC將成為最後一個傳統的、基於DCT(離散餘弦變換)的視訊編碼。但就如 您的博文《小波編碼的 一些問題》告訴我們的,迄今仍然沒有一種成熟的新型視訊編碼體系問世。那麼您認為,H.264/AVC編碼還有多長壽命呢?
詹森:
我預計H.264/AVC還有至少5到10年的壽命。

問:您認為最有前途的下一代視訊編碼是什麼?
詹森:現在JVT(聯合視訊工作組,主要由ISO/IEC的MPEG(動態影象專家組)和ITU的VCEG(視訊編碼 專家組)組成)有一些很有意思的提案,其中BBC和三星的聯合提案看上去尤其有前途。值得注意的是,所有這些提案都沒有背離傳統的基於DCT的方法:即使 是最為激進的BBC提案,其中的32x32和64x64變換用到了一種近似於小波變換的方法以在僅使用16位內部精度的條件下實現精確計算,但其核心仍然 是DCT。
不過,還需要做很多工作來削減現在數量繁多的各種提案,以及避免過高的編解碼複雜度,從而形成一個可行的方案。即使形成了可行方案,還需要撰寫和確定規格 標準,並且為之編寫高效的編解碼器。集萬千寵愛於一身的H.264,在2005年之前也幾乎沒有得到任何支援,直到近兩年來才開始大規模取代舊的視訊格 式。

問:您認為x264能為世界帶來哪些變化?
詹森:x264可以為世界進步做出以下三個方面的貢獻:
1. 網路頻寬並沒有像我們所預期的那樣高速增長;與此同時,ISP卻在不斷抱怨網路視訊對頻寬的需求。x264能讓壓縮比更高、把視訊壓得更小,這樣我們就能 在網上看到更多高清視訊。
2. x264對低延時視訊流技術做出了傑出貢獻。這項技術為視訊會議、流媒體等應用開拓了一片全新的領域。
3. x264最大的貢獻並不在於它的出色,而在於它的開放。作為一個開源專案,在絕大多數應用中x264都能比其商業對手更為出色。 在這一刻,“最好”和“免費”達成統一,實現了人人平等:為所有人提供最出色的壓縮比,而不僅僅為能一擲千金購買昂貴軟體的少數公司。

問:作為一個大學三年級學生,您如何平衡開源社群的工作與學業呢?
詹森:如履薄冰(笑)。不過其實最大的問題在於學費,哈維姆德學院學費高昂,而我並不富裕。

問:您覺得開源社群的工作對您電腦科學專業的學習有幫助嗎?
詹森:或許有幫助吧,起碼這些工作讓我初級課程的學習十分輕鬆。

問:您每週要花多少時間在x264專案上?
詹森:這取決於具體情況,一般每週要花15到30小時吧。

問:您平常看電視嗎?從您幾次編碼實驗的素材來看,您似乎對動漫情有獨鍾,請問您是宅嗎(笑)?
詹森:我算不上是個動漫迷——事實上我一年到頭也看不上一次電視。我與動漫社群關係緊密主要是因為他們與x264的關 系:他們總是樂於使用新技術,比如H.264編碼、Matroska容器、Vorbis編碼、AAC編碼、可變幀速率、SSA\ASS字幕等等。

問:繼續上面的問題,我注意到x264開發團隊,乃至視訊編碼這個領域中有許多人喜歡或者接受動漫亞文化,儘管其中鮮 有日本人。請問您認為是不是程式設計師和電腦科學家這個群體更樂於接受外來文化呢?
詹森:我認為,不應該簡單地把這些人歸為一類。這就好比把《暮光之城》和霍金的粉絲歸為一類,只因為他們都喜歡書。 “動漫迷”是一個過大的概念,我想你並不會把看《迷失》和《英雄》的人都叫做“電視迷”吧。

不過我認為日本確實對西方科技文化有著長久的影響。起碼,幾乎所有的電玩都是他們製作的(笑)。
時至21世紀,在這個全球化的世界裡,我們完全有理由相信,相當數量的人能夠接受來自祖國以外的文化。

相關推薦

視訊編碼守望者——專訪x264核心開發者Dark Shikari·

詹森·蓋瑞 特-格拉澤(Jason Garrett-Glaser),網名Dark Shikari,現x264專案核心開發者,同時也是ffmpeg等專案的開發者。詹森目前就讀於美國哈維姆德學院,一所以培養科學家、工程師和數學家而 聞名的私立文理學院。 Dark Shikari

(十四) x264視訊編碼、faac音訊編碼、rtmpdump推流

#include "hjcommon.hpp" #include "x264.h" #include "rtmp.h" #include "faac.h" extern "C" { #include "queue.h" } // video static x

即時通訊中視訊編碼技術H.264與AVS視訊標準核心技術比較

視訊編碼技術在過去幾年最重要的發展之一是由ITU和ISO/IEC的聯合視訊小組 (JVT)開發了H.264/MPEG-4 AVC[8]標準。在發展過程中,業界為這種新標準取了許多不同的名稱。ITU在1997年開始利用重要的新編碼工具處理H.26L(長期),結果令人鼓舞,於是

掘金 AMA:我是阿里 Node 基礎框架 EggJS 的核心開發者:天豬,你有什麼問題要問我?

掘金 AMA(ask me anything) 是掘金沸點的一個話題,掘金團隊會邀請一位技術大牛通過「你問我答」的形式回答你的問題,讓大家在技術、工作、生活方面有所成長。 AMA 嘉賓 掘金 AMA 第十期嘉賓是 阿里 Node 基礎框架 EggJS 的核心開發者-- 天豬。

即時通訊音視訊開發(五):認識主流視訊編碼技術H.264

前言 即時通訊應用中的實時音視訊技術,幾乎是IM開發中的最後一道高牆。原因在於:實時音視訊技術 = 音視訊處理技術 + 網路傳輸技術 的橫向技術應用集合體,而公共網際網路不是為了實時通訊設計的。 系列文章 《即時通訊音視訊開發(三):視訊編解碼之編碼基礎》 《即時通訊音視訊

如何成為一個Linux核心開發者(經典)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

視訊編碼名詞引數解釋

GOP(Group of Pictures) 策略影響編碼質量:所謂GOP,意思是畫面組,一個GOP就是一組連續的畫面。MPEG編碼將畫面(即幀)分為I、P、B三種,I是內部編碼幀,P是前向預測幀,B是雙向內插幀。簡單地講,I幀是一個完整的畫面,而P幀和B幀記錄的是相對於I幀的變化。沒有I幀

下一代開放視訊編碼標準AV1(轉自搜狐)

 本文整理自RTC大會,陳悅的演講《下一代開放視訊編碼標準AV1》。 陳悅 谷歌 Chrome Media 視訊編碼軟體工程師 負責開發新一代開源視訊壓縮演算法AV1。清華電子本科,加州大學聖塔芭芭拉分校電子與計算機工程博士。研究方向為視訊編碼和通訊。 在講

視訊檔案格式--視訊封裝格式--視訊編碼格式區分

前言 什麼是影片?其實就是一組(很多張)圖片,時間間隔很小的連續展示出來,人們就覺得畫面中的人物在動,這就是影片。 那電影的實質就是N多張圖片的集合。那每張圖片和幀又有什麼關係呢? 事實上,如果一部影片裡面的圖片,我們原封不動的全部存起來,空間會很大很大很大,但是如果

LiveVideoStack線上交流分享 ( 四 ) —— 面向QoE的感知視訊編碼

為了給大家提供一個學習,交流的平臺,暢聊音視訊技術開發新趨勢,新實踐。我們推出了LiveVideoStack線上交流分享活動,在每週四晚19:30,邀請1名業內資深技術專家進行線上分享技術乾貨,解答熱點問題。你可以通過以下方式參與: 關注LiveVideoStack公眾號【

iOS音視訊—FFmepg基礎知識:命令列工具使用&封裝格式&視訊編碼音訊編碼資料瞭解&視訊畫素音訊取樣資料格式

iOS音視訊相關目錄 FFmepg基礎知識 封裝格式 1、封裝格式:mp4、mov、flv、wmv等等… 2、作用:視訊流+音訊流按照格式進行儲存在一個檔案中 3、MPEG2-TS格式:傳輸流,又稱TS、TP、MPEG-TS或M2T,用於音效、影象與資料的通訊協議。屬於

視訊編碼格式全面解析

下文轉載自:http://www.jianshu.com/p/4def60dd594f   我們在詳解各種主流的視訊格式之前,先拋開各種視訊格式的定義,來討論這樣一件事情:你覺得目前的視訊格式編碼混亂嗎?相信這個問題問出來,許多、、不同知識層次的人有不同的思考,但是答案卻都有一個共同點

可分級視訊編碼

一、為何需要對視訊進行可分級編碼  網路傳輸視訊資訊的時候,頻寬限制了資料的傳輸,而我們通過某種方法使得視訊流擁有可分級性,當網路頻寬較小的時候,只保持基本的視訊資訊被傳輸,並根據實際的網路環境決定是否傳增強的視訊資訊以使得影象質量得到加強,以此得到自適應性.這樣的方式可以保持擁有網路連線的大部分

H264編碼器5( x264原始碼簡單分析:x264_slice_write() 與H264 編碼簡介)

  x264原始碼簡單分析:x264_slice_write() 來自:https://blog.csdn.net/leixiaohua1020/article/details/45536607     H264 編碼簡介 https://blo

H264編碼器4( x264原始碼簡單分析:概述)

來自:https://blog.csdn.net/leixiaohua1020/article/details/45536607   ===================================================== H.264原始碼分析文章列表:

H264編碼器3( x264重要結構體詳細說明(1): x264_param_t)

來自:https://blog.csdn.net/explorer_day/article/details/52239009   結構體x264_param_t是x264中最重要的結構體之一,主要用於初始化編碼器。以下給出了幾乎每一個引數的含義,對這些引數的註釋有的是參考了網上的資

H264編碼器2(x264命令列引數解釋)

來自:https://www.cnblogs.com/rainbowzc/archive/2007/04/08/2422203.html   本文對應的是x264命令列模式,VFW方式也用相同的引數,不過是圖形介面,可以自己找對應的英文。    

嵌入式視訊方案學習第十二篇——視訊編碼模組VENC 一般初始化過程

在Sample_comm_venc.c中SAMPLE_COMM_VENC_Start實現venc的啟動 在SAMPLE_COMM_VENC_Start中首先獲取圖片大小 然後建立組HI_MPI_VENC_CreateGroup 然後根據編碼型別配置不同的引數,建立通道 HI_

基於QoE的實時視訊編碼優化:低功耗,低延時,高質量

在實時通訊領域,只有當Codec的優化適應了當前的網路狀況,裝置平臺及應用場景,使用者才能得到最佳的體驗。在LiveVideoStackCon2018大會中聲網Agora視訊工程師吳曉然詳細介紹瞭如何設計與實現基於QoE的實時視訊編碼優化。本文由LiveVideoSt

ffmpeg libx264視訊編碼過程中幀內預測模式a->i_predict4x4[idx]的獲取問題

analyse.c的函式static void x264_mb_analyse_intra(...)中有這麼一段程式碼: if( i_best > 0 )  //註釋來自leixiaohua大神                 {