◎ 前言 ◎
許多家庭購買大型電視,卻還看著上個世紀的畫質!世足賽在Internet上的各轉播平台卡到不行,畫質還以為自己在看油畫!螢幕太大還看得到鋸齒的邊線。雖然在各大行動平台也能夠收視,或者用點電腦瀏覽網頁,但是效果慘不能賭,網路上罵聲連連。此時此刻,HEVC 與 Multicast 的優勢就出來了,本文來為大家解析平平是串流,MOD為甚麼會有這麼大的不同!為能達到最佳壓縮品質,有些結果還真的與一般大眾的直覺不盡相同。
許多家庭購買大型電視,卻還看著上個世紀的畫質!世足賽在Internet上的各轉播平台卡到不行,畫質還以為自己在看油畫!螢幕太大還看得到鋸齒的邊線。雖然在各大行動平台也能夠收視,或者用點電腦瀏覽網頁,但是效果慘不能賭,網路上罵聲連連。此時此刻,HEVC 與 Multicast 的優勢就出來了,本文來為大家解析平平是串流,MOD為甚麼會有這麼大的不同!為能達到最佳壓縮品質,有些結果還真的與一般大眾的直覺不盡相同。
1. 何謂群播(multicast)?
對岸也有翻譯作多播,有很多人把群播跟廣播搞混了,群播簡單說,就是對於相同的即時頻道內容,設計良好的群播骨幹網路,只會存在一份串流,而單播(unicast)與廣播卻是N份串流。若有著極優秀的multicast骨幹網路,這也包含支援multicast與IGMP的高效能路由器,就算100萬用戶同時收看世足賽,骨幹只要一份流量。如果是單播呢? 這幾天在Internet收視ELTA LIVE直播的慘劇還記得嗎?油畫看到飽,卡彈吃到飽!
2. IPTV為何多採用UDP協定?
在IPTV的應用上,第一個講究的是real time,整個對於網路或者封包的傳輸條件與品質要求是不同,比如說一邊使用FTP或HTTP抓取一般資料檔,第一講求的是正確性,其次才是速度,所以需要使用TCP這種較嚴謹的傳輸協定。而即時性的IPTV串流呢?比如說現在正在轉播棒球比賽,投手投出去一顆球,這個封包剛好掉包了,這時播放器就以馬賽克(或者開個玩笑,就是某種魔球的方式呈現),為甚麼封包不重傳呢?這種與時間有關的Payload,就算重新傳送,由於應該播放的時間已經過去了,所以重新傳送正確的封包是沒有意義的,因此只要使用協定較簡單的UDP就可以達到這個目的,只要管一直送就好了。
3. RTP與RTSP是一樣的嗎?
這在資訊學院的多媒體通訊課程中有教到,該課程著重於protocol與系統架構的介紹,很大一段時間在講RTP(Real-time Transport Protocol),RTP與RTSP(Real Time Streaming Protocol)是不同的兩個協定,雖然名字很像,都是跟串流有關,RTSP是屬於應用層協定,格式有一點像HTTP,是用來對於多媒體傳輸時,控制快倒轉與暫停與重播,您可以當作是一種網路遙控器協定。RTP的中文資料很少,但是光相關的RFC資料就滿多的,RTP夾在UDP與其上payload的一層協定,主要是用來輔助UDP在多媒體通訊上的應用,但是實際上應用在商轉系統時,也可以選擇不要RTP。
4. 傳輸率足夠,串流就會順嗎?
並不一定,決定觀看品質與網路的穩定性也有關係,不穩定的傳輸品質,有一個名字叫做抖動(jitter),一對夫婦平均有兩顆睪丸,也就是前一秒鐘可能傳輸15Mbps的資料,下一秒傳輸5Mbps,雖然品質還是平均10Mbps,但是這對於某些系統而言,就是一種嚴重的抖動,嚴重的抖動很可能因為播放的資料來不急送到,產生播放品質劣化。抗抖動可以採用較大的暫存緩衝區來解決,但是這表示開始播放時,會有較大的延遲出現,這在轉台或切換節目時,使用者的等待感受是不好的。MS在數年前就有IPTV產品囉,叫MSTV,還運用了不少嶄新技術。例如對抗節目轉台延遲方面,就使用短暫TCP資料提供資料。
5. 何謂HEVC?
HEVC是視訊壓縮標準的一種,講到視訊壓縮,就不能不講到線性轉換,線性轉換是線性代數課程的一部分,常常聽到JPEG、MPEG、MPEG2,都使用離散餘弦轉換(Discrete Cosine Transform),在佐以其他編碼技術,可以將影像壓縮到很小,所以沒有線性代數,就沒有線性轉換,沒有線性轉換,就沒有DVD,沒有DVD就沒有這麼多迷片了,大家看呀,線性代數多重要呀,誰說數學沒有用的。
為甚麼視訊壓縮使用到線性轉換?這個轉換有一個很大的特性,就是轉過去可以轉回來,也就是有DCT就iDCT,我這樣寫大家就懂了。
iDCT(DCT(X)) = X
線性轉換只是將一組正交基底變換成另一組正交基底,轉換前後,純量加法與乘法不變。多項式函數,這個函數空間使用一組基底,三角函數,另外一個函數空間使用另一組基底,在函數空間做變化,只是換了一組基底。
但是裡面這個DCT(X)呢?學問都在這裡面,經過DCT後,由Time Domain轉換到Frequency Domain後,資料量會集中在離散餘弦轉換後的低頻部分,然後呢,如果我們將高頻的地方,選擇性丟掉的話,以陣列型式來表達的話,就是一個稀疏陣列,這個步驟也叫做量化,JPG、VCD、DVD、AVC、HEVC等等主要的失真就在這個量化的丟棄動作,然後只儲存低頻的數值,在iDCT轉換回去,圖片或者影像的畫素還是很接近的說。
● 使用DCT的優點
- 轉換只使用純量加法與乘法,容易使用DSP實現並加速。
- 轉換後大部份的值往低頻移動。
- 離散餘弦變換的去相關性還相當不錯。
- 轉換後大部份的值往低頻移動。
- 離散餘弦變換的去相關性還相當不錯。
這就是視訊壓縮的基礎,也是迷片的基礎。有迷片看,要感謝數學家。
HEVC是H.264/MPEG-4 AVC的繼任者,的壓縮方法也是類似,但更吹毛求疵許多,這部分我還沒有深入研究,但在K完兩本MPEG2 Spec跟一本MPEG4教科書後,要我忽視低劣壓縮格式(比如QSV)在大型液晶電視上表現,幾乎是不可能,低劣壓縮格式過度量化拋棄的高頻訊號、與採用與真實解析度非整數倍率的解析度,看到畫質就真的想轉台!視訊壓縮不是只有FHD、4K解析度的差別,4K或FHD如果遇到不好的壓縮格式,也是可壓得跟油畫一樣,有看到這次Internet某些平台為了節省頻寬的慘狀嗎?
6. 同樣壓縮格式壓出來的畫質就一樣嗎?
非也,以MOD同樣H.264 10Mbps串流而言,VOD明顯就比LIVE來的清晰,這個問題困擾了筆者很久。連續視訊的特質就是,前後畫面往往相當類似,所以會以動態估計(motion estimation)去預測物體的移動,這個移動的以一個二維的向量來表示,稱作動態向量(motion vector),之後再計算兩個區域的差值,只需要對這個差值進行動態補償。由於沒有規定動態向量的尋找方式,不同的演算法、不同的計算力以及不同的計算時間,就會造成兩個區域的差值大小不同。LIVE視訊的特性就是編碼的速度不能比撥放速度慢,特別是在有互動的情況,還必須要求縮短延遲時間,但是VOD可以慢慢算給你看,所以直播平台的編碼器優異與否與畫質也有關係,沒錯MOD購買編碼器花錢絕不手軟。
7. 畫面會依據撥放順序來到撥放端嗎?
非也,由於I Frame包含完整的畫面,所以會優先抵達,後續才能依據I Frame來計算其他畫格。
◎ 結語 ◎
世足賽在Internet上的各轉播平台卡到不行,畫質還以為自己在看油畫!螢幕太大還看得到鋸齒的邊線。此時此刻,HEVC 與 Multicast 的優勢就出來了,2018年是中華電信首度提供獨家的4K畫質的Live轉播,MOD的畫質一級棒!趕快去申辦MOD。也可以透過MOD App或Hami Video用手機或者平板觀看,不過他就是單播就是了!
有圖有真相!
有圖有真相!