英雄會是CSDN旗下針對國內IT技術領域專家展示和交流的平臺。通過線下線上的互動形式,為CSDN社區專家提供更多學習、合作、宣傳的機會。英雄會后續將在北上廣深等國內一二線城市建立分會,各個分會后期將組織技術交流活動。
恰逢11月18日-20日,SDCC2016將在北京舉辦,屆時將在大會現場召開SDCC英雄會,正式成立CSDN英雄會北京分會,所在北京的重量級社區專家將受邀參加此次英雄會,面對面進行技術交流。
為了讓大家更好地認識CSDN英雄會的成員,我們特別開設了【CSDN英雄會】采訪專欄,講述他們的技術成長之路。
本期邀請的嘉賓是嗶哩嗶哩彈幕視頻網多媒體技術開發殷汶杰。殷汶杰介紹說,嗶哩嗶哩一直以來就有貢獻開源工程的傳統和氛圍,除了彈幕引擎之外,還有很多項目都在行業內產生了巨大影響。例如,移動視頻播放框架。
嗶哩嗶哩彈幕視頻網多媒體技術研發工程師
任何一個合格的多媒體技術工程師,都有成為全棧架構師的潛質
CSDN:請和大家介紹下你和目前所從事的工作。
殷汶杰:Hi,各位好,我是殷汶杰,目前在B站(嗶哩嗶哩彈幕視頻網)從事多媒體技術開發工作,主要職責包括移動平臺(iOS/Android)播放器以及主站HTML5播放器等方面的開發、維護和技術預研等工作。曾經在某互聯網視頻以及某世界500強安防企業從事視頻技術研發工作,主要工作和研究興趣包括視頻編解碼技術、移動視頻技術開發、流媒體技術、應用于多媒體領域的云計算/大數據/模式識別/數據挖掘、視頻異構開發等領域。
CSDN:您是如何一步步走上多媒體技術研發之路的?
殷汶杰:之所以選擇從事多媒體技術的研發,主要是由在校期間的研究方向決定的。2010年我考入上海大學通信與信息工程學院讀碩士研究生,在那幾年間以視頻編解碼算法作為主要研究方向。我所在的實驗室主要以自主知識產權的視頻編碼標準AVS/AVS+/AVS2為主要研究方向,幾位導師也都是AVS標準工作組的核心成員。經過幾年的研究和學習,我從一個完全不了解多媒體技術開發的學生,逐漸了解的多媒體技術研發的基本概念,得到了最基礎的知識儲備。
在畢業之后我處于最大化地發揮和利用自己已有的知識基礎的目的,先后選擇了進入某知名的互聯網視頻公司和某大型安防外資企業工作。這些經歷給予了我很大的幫助。不過相比于多媒體技術研發領域內的知名專家,我依然只能算一名新人,相比于已經學到的東西,新興技術和未知的領域只會有更多需要繼續學習的內容。
CSDN:請問多媒體架構是怎么實現的,用了哪些技術?
殷汶杰:其實無論是多么復雜精密的多媒體系統,其整體架構都離不開這幾個結構,以視頻信號為例,視頻采集→視頻預處理→視頻編碼與封裝→數據的存儲/傳輸→視頻解封裝/解碼→視頻后處理→視頻輸出。根據系統的規模和需求不同,每一個模塊的復雜度和規模可能有非常巨大的不同。
例如,視頻采集,傳統的視頻采集可能以攝像機、監控探頭為主,而近期直播的興起,使得包括手機還有錄屏軟件都成了視頻采集的重要設備。而且隨著新興業務的發展,還可能有更多目前想不到的視頻采集設備產生。
在預處理階段,不同類型系統所采用的技術可能完全不同。最常用的有像視頻的去噪、圖像增強等。對于各種直播軟件,各種美顏工具也極為重要。
視頻的編碼和封裝可謂是整個系統的心臟,很多時候甚至直接決定了整個系統的性能和使用體驗。編碼/封裝器用于將數據量龐大的圖像數據壓縮為某種格式的視頻碼流,壓縮的性能直接影響后期進行存儲和傳輸的代價,編碼的運算速度又影響了整個系統的輸入——輸出延遲。因此,這一步驟的工作常常成為整個系統的焦點所在。
視頻的存儲和傳輸在多年的發展中產生了巨大的變化。從最初的有線電纜、錄像帶到后來的無線電視廣播、DVD,到再后來的云存儲、P2P、CDN技術,發展的核心在于更低地花銷代價和更強的實時性。另外,在很多時候,在這一部分還可能進行多種視頻處理,如視頻轉碼、數據分析等。
解碼和解封裝通常與編碼端是同步發展,與編碼端略有不同的地方在于,解碼端在移動端、嵌入式系統上的應用更為廣泛。因此,對低復雜度優化、低功耗等方面要求常常會更高。
視頻的后處理的最顯著的用途之一可謂是視頻水印。例如電視臺的臺標、字幕等附加信息都是視頻重要的組成部分。
視頻渲染的設備最初以電視、顯示器為主。近年來,隨著新技術和設備的發展,越來越多的視頻觀看的設備涌入了我們的生活,例如使用手機、平板電腦等移動設備的機會大有取電視電腦而代之的趨勢。在未來可能還會有更多新型設備占領我們的視野,如VR/AR設備、全息顯示,甚至一些我們目前還無法想象的東西。
CSDN:多媒體技術,有什么心得和體會可分享?
殷汶杰:多媒體技術所涉及的技術領域相當廣泛,而且發展也是相當快。任何一項其他技術或業務的發展都有可能使得多媒體領域三天一小變,五天一大變。因此,從事多媒體技術的開發必須始終保持對新生事物的敏感以及較高的學習能力才能保證不在技術變革中落伍。
CSDN:您對代碼有著怎樣的情感?對多媒體技術有什么特別的喜好嗎?
殷汶杰:對于一名軟件開發工程師而言,代碼是他用于改變世界,實現理想,讓世界變得更加美好的“武器”。同時,代碼也是工程師的名片和自己的商標。世界上最優秀的工程師所開發的代碼甚至會成為經典,流傳給一代代的后輩供其膜拜。
至于多媒體技術,我認為我能進入這一領域進行學習、研究和工作是幸運的。
首先,多媒體領域與多種技術領域都存在著很強的交叉關系,因此,可以與多種技術形成相互促進的“互利共生”的局面,使之永遠充滿了活力。近年來,火熱的VR就是最好的例證之一。
其次,音頻、視頻永遠是所有用戶的剛性需求,無論是站在社會最頂端的精英人群還是最基層的普通勞動者,他們的生活都不可能脫離多媒體信息而存在。因此,在整個信息產業的網絡中,多媒體技術可謂是擁有最大市場的細分技術領域之一。這就給了無論是新興技術發展、新興商業模式還是全新的“技術+生活”結合的生態系統足夠的營養、成長空間和資源支持,發展空間不可限量。
再次,多媒體技術由于其技術復雜、數據量龐大,是倒逼整個信息產業基礎設置發展的重要力量之一。例如高清、超高清視頻的出現,對數據的存儲、傳輸和計算能力提出了更高的要求。這些新興的需求對高密度存儲器件、高速網絡傳輸和異構計算、云計算等技術的發展起了巨大推動作用。
最后,對于從事多媒體技術開發的個人而言,多媒體技術是鍛煉自身的技術能力的絕佳“訓練場”。如果想要真正掌握多媒體技術,只學習某一門知識絕對遠遠不夠,甚至必須要稱為“多專全能”型的人才,從數學基礎、網絡技術、多端開發(server/client/web)、多種不同的編程語言(如C/C++/asm/Java/Objective-C/JS等)、多種不同系統平臺(如Windows/Linux/MacOS/iOS/Android)等。還需要了解多種不同的系統架構等知識。可以說,任何一個合格的多媒體技術工程師,都有成為全棧/架構師的潛質。
彈幕增強了視頻趣味性和可交互性
CSDN:嗶哩嗶哩彈幕視頻網,可見在體現彈幕這一新媒體特征,請問彈幕是如何實現的?彈幕的價值體現在哪兒?
殷汶杰:事實上,視頻中添加彈幕在現在的視頻媒體中已經不是一個特別新鮮的特征,然而能做得像B站這般如此特點鮮明的,整個行業內還是相當稀少的。所謂的視頻彈幕,其本質上是與視頻信息聯系緊密、與時間軸具備強關聯的輔助信息的一種。視頻彈幕目前主要是以豐富格式的文字信息為主,通過準確標定彈幕出現的時間與視頻內容在該時刻的場景相結合,增強了觀眾在觀看視頻時的趣味性和可交互性,使得這樣一種原本單向接受的行為轉化為一種更加互動化的活動。
與傳統的視頻節目的評論不同,彈幕在發送過程之后,需要對其發送時間進行記錄,并在其他觀眾播放到某個時間點時進行播放。在包含彈幕的視頻播放時,顯示設備(移動/網站播放器)會在原始視頻上新建一個用于顯示彈幕的層,并在某個指定的時刻通過相應的文字信息繪制方法(例如OpenGL ES等),將彈幕信息繪制在這一層中。由于這一層原本是透明的,并疊加在原始視頻上方。因此,在觀看時便會產生某個時刻彈幕信息從視頻上方飛過的感覺。如果希望了解更深的細節,可以到Github上研究一下B站開源的彈幕引擎DanmakuFlameMaster:https://github.com/Bilibili/DanmakuFlameMaster。
值得一提得是,嗶哩嗶哩一直以來就有貢獻開源工程的傳統和氛圍,除了彈幕引擎之外,還有很多項目都在行業內產生了巨大影響。例如,移動視頻播放框架ijkplayer:https://github.com/Bilibili/ijkplayer, html5視頻轉碼內核flv.js:https://github.com/Bilibili/flv.js,歡迎多媒體技術圈里的朋友多參與我們的這些項目。
CSDN:能解釋下H.264/AVC、H.265/HEVC、AVS、AVS+之間的區別嗎?在技術的實現上有什么區別?
殷汶杰:實際上目前主流的視頻壓縮編碼標準的思想和設計思路都是一致的,都采用了一種“塊結構的混合編碼方案”,其核心思想都是利用種種方式盡可能壓縮運動圖像中的時間、空間、視覺和統計冗余。不同標準的發展主要在于在各個模塊中采用了更新、更復雜的新算法來增強其編碼的性能,或者對運算復雜度和并行性等方面做了相應的優化。例如,H.264/HEVC相比于H.264/AVC采用了更加靈活的像素塊分割方法、更加多樣化的幀內/幀間預測模式、對并行計算更加友好等。AVS/AVS+/AVS2的發展過程也是與此類似。
CSDN:經典的開源編碼器X264/X265是否真的無法超越?
殷汶杰:單純從性能來考慮,無論是x264或x265都不可能完美適應所有業務的需求,在一些要求比較特殊的場合(如計算資源匱乏或缺乏相應平臺支持)下,x264/x265可能并不是最佳選擇,拋開這兩者進行自主開發也是比較常見的情況。而在大多數場合下,使用x264/x265可以在滿足大部分需求的情況下,最大化地降低開發成本,提升開發效率。因此,真正使得x264和x265相對于其他方案無法超越的原因不在于它們的性能多么強大,而是在滿足了較好地性能情況下,使用場合最為廣泛,獲取支持最方便。
成長永遠是需要付出代價的
CSDN:研發上,您是如何學習成長的?
殷汶杰:成長永遠是需要付出代價的,就看我們如何對其進行取舍了。幾年來,我曾經有過一些成果,也走過不少彎路,經驗教訓都還算印象深刻。第一,從走出學校開始,應當在一個學生的思維上加入一個工程師的思維,不再把完成任務作為終點,而是將工作看成不斷武裝自己,完成自身進化的過程,這就需要對自身的特長和發展規劃有一個比較明確的認識,并在擇業的時候保持一個清晰的頭腦;第二,不要隨便給自己加入限制。在明確了自己的目標之后,所有的努力都是朝著這一個方向,所有的資源都可以拿來為這一過程鋪路。不要隨便把自己限制在某個技術領域甚至編程語言里,比如把自己僅僅定位成一個“C++程序員”或“Java程序員”或“測試工程師”,這樣只會讓自己的核心競爭力慢慢喪失,越來越泯然眾人。
CSDN:在你眼中,一個優秀的程序員應該具備哪些技能和修養?
殷汶杰:首先應該是一個健康的體魄,畢竟身體才是玩兒命的本錢)。即使再忙,也不要忘了積極鍛煉身體。我自己的日常里,健身、游泳、籃球,每年多次的馬拉松已經成為生活中不可分割的一部分。
然后需要保持一種充分的求知欲和好奇心,如同喬布斯喬幫主所說的:”Stay hungry, Stay foolish”。在這種特質的驅動下,我們才能不斷地探究技術內在精髓,才能在某項技術上進行足夠深度的鉆研。
另外,最好有一點輕度的強迫癥。這樣在遇到某些困難或者“節”的時候,可以想方設法地突破過去,并在這個過程中獲得成長,而不是遇到困難就思考怎樣繞過或者尋找替代方案。只是這個過程需要把握一個“度”。
CSDN:你認為程序員如何“擠”出時間來提升自己或在技術上提升自己?
殷汶杰:讀書和培訓都已經傳統的方式,只采用這樣的方式在現在已經不夠。個人感覺其實目前對自身提高最有效率的方式莫過于分享。分享有多種形式,包括在技術研討會上做報告、寫博客和開源項目都是很好的方式。比如CSDN的博客/論壇、微信公眾號、微博文章等媒體都是相當有效的渠道。
CSDN:您是從何時知道CSDN的,又怎樣在CSDN上開啟您的技術之旅的,這些年您對CSDN已不陌生,CSDN對您的大感受是什么?給您帶來了怎樣的改變?
殷汶杰:最初接觸CSDN應該是大學期間,那時自己的角色純屬一個獲取者,主要的活動是在CSDN上下載別人上傳的代碼,而且常常苦于沒有積分而下不了相應的的資源。后來逐漸開始在CSDN上寫一些博文,主要也是出于對學習過程中一些知識點記錄。隨著現在整個CSDN社區越來越健全,包括學院、知識庫等板塊的完善,也給了我們越來越大的活動空間,可以做更多從前想做卻沒有資源推進的事情。說到建議,我個人希望在各種技術領域方面,各個板塊可以更加細分,這樣無論是文章還是資源都可以更有針對性。
殷汶杰CSDN博客地址:https://blog.csdn.net/shaqoneal
[【CSDN英雄會】 阿里巴巴劉士濤:我是如何拿到阿里巴巴offer的]2016年畢業后加入阿里巴巴集團阿里云事業群劉士濤。他分享了一些面試心得。他認為,面試是一個展示的過程,你可以通過一個問題的擴展來展示你的技能,將你研究比較深的技術或者比較有價值的想法展示給面試官,這才是面試的真諦。
[【CSDN英雄會】張冰洋:深度學習必將成為未來熱門的研究方向]他目前研究的領域是機器學習算法,就是用機器學習,深度學習的方法對高能物理實驗產生的粒子實現更好的鑒別。
[【CSDN英雄會】滬江徐宜生:掌握工具使用技巧,是提高工作效率的最佳途徑]
上海滬江教育科技有限公司Android高級工程師徐宜生。徐宜生在文章中指出,這兩年Android的技術日新月異,我們需要利用好每種技術的優勢,在合適的場景下,發揮他們的優勢。
[【CSDN英雄會】 易寶支付架構師、移動產品線技術負責人程超:走在Java的路上]人們常說,一個架構師工作的好壞決定了整個軟件開發項目的成敗。可見架構師的重要性所在,在程超看來做好一名構架師要做到“言傳身教”,架構師作為技術工作的最頂層,“身教”要能夠大于“言傳”,寫不了好代碼的架構師無法在技術方面指導其他工程師。
[【CSDN英雄會】專訪東平軟件研發中心CEO翟東平:微信是移動端的主要力量]預計微信的未來會很火,最近的小程序就是例證。小程序現在還沒有正式版發布。但是,騰訊已經發布了相關技術文檔。從技術角度說小程序使用了Java、css相關技術。
[【CSDN英雄會】大眾點評黃俊東:Android開發者經驗談]他在本科期間屬于典型的“問題學生”,不住學校,很少上課,大學4年逃了3.5年的課,基本都在比賽或者比賽的路上。本科期間獲得4斤多重、近30張的獲獎和榮譽證書。黃俊東是一個很能折騰的“問題學生”。
[【CSDN英雄會】恒信彩虹趙中:我的十年CTI技術]
趙中具有十多年CTI系統軟硬件集成、開發、維護和運營經驗。他給程序員的建議是,要遵循“一萬小時定律”,對軟硬件底層到高層的實現原理和運行機制有一個基本了解。注重實踐,避免空談。
[【CSDN英雄會】好未來教育陳剛:Swift是怎樣練成的]這位出過書具有豐富的Swift面向協議實編程戰經驗的陳剛。是什么吸引了他一頭扎進Swift?
[【CSDN英雄會】囯炬CEO張代浩:做寫架構、做制定游戲規則的人]北京國炬信息技術有限公司創始人兼CEO張代浩,是JEECG開源社區創始人。他不僅身兼多職、切跨度大,從互聯網金融到微信移動應用再到融資租賃等業務領域。在他看來每個選擇和轉變既是偶然也是必然的,一個選擇的經驗積累,會驅動出另外一個選擇。
[【CSDN英雄會】黃帥:安全不是獨行俠而是系統性的運維過程]黃帥工作五年以來從事過十幾款安卓應用的研發,平時熱衷于研究移動設備的安全問題,針對常見的安卓安全漏洞。在他看來,安全不是獨行俠而是系統性的運維過程,自己做好了安全防范也應該協助和確保合作的其他第三方安全無漏洞。
歡迎加CSDN英雄會:https://t.cn/RV9mzUX
轉載請注明來自夕逆IT,本文標題:《新雙模迷你高清電腦IntelAtomN270云計算機linux嵌入式終端機》

還沒有評論,來說兩句吧...