Cloud Connect: 使用现有的云基础设施来降低使用云编码的操作成本
正文字數:4416 ?閱讀時長:7分鐘
來自 Bitmovin 的銷售工程師 Ally Yong 將在本文中講述如何使用 Bitmovin 的云端編碼解決方案來構建一個可擴展的內容交付流程,演講將會特別關注在 AWS、 GCP 或 Azure 上使用云帳戶時降本提速的解決方案。Ally還將分享用戶案例:Vuclip ——一個面向新興市場的視頻點播服務——涵蓋了為時間成本對有效交付如此重要,以及基于云的編碼解決方案如何降低成本。
文 /?Ally?Yong
整理 / LiveVideoStack
大家好,歡迎來到2020年度的音視頻峰會。
我是來自Bitmovin的亞太區銷售工程師Ally Yong。今天我講解的主題是我們企業的Cloud Connect云端連接。
首先我會給大家介紹Bitmovin公司的背景,然后和大家分享我們的產品還有我們編碼的功能;我們云端上市場的一些數據,在云端上編碼的一些模式,最后分享一個我們客戶的成功案例。
1
Bitmovin 介紹
Bitmovin是一家在2013年創辦的公司,左圖這位是我們的CTO Chris Mueller,右邊這位是我們的CEO Stefan Lederer。他們兩位在2013年的時候合作推出MPEG-DASH的格式,也同時開始了Bitmovin這家公司。
在Bitmovin我們有三個產品:Encoding的服務、Player和Analytics的服務。今天我們的主題大多是Encoding的服務,但我們這三個服務都可以讓我們的客戶在不同云端上使用地更加便捷。
2
編碼解決方案-Per-Title?Encoding
我們的編碼服務有一個比較獨特的功能叫做Per-Title Encoding
我今天想要跟大家介紹Per-Title Encoding的用途。
一般我們做編碼的時候,我們會在編碼器上手動設定一些限定好的編碼令和解析度。但到Per-Title這個功能的時候,我們把視頻輸入到編碼器時,編碼器就會通過分析,分成不同的視頻的復雜度,再幫它再設計一個編碼率和解析度,最后用最佳的編碼率來編碼出視頻。我們Per-Title Encoding可以把編碼率再降低,同時還能減少儲存和帶寬。后面我們會更詳細的去介紹Per-Title的區別。
不同的視頻一定會有不同的復雜度,如果我們事先是通過手動的方式去設定,那么在很多情況下其實我們可能會使用一些不合適的編碼率或者不適當的解析度去編碼一個視頻。
所以我們以PPT上的圖片為例。平時做設定時,我們會把比較低碼率的設定成低解析度的。我們在這里看到一個360p的視頻,我們分配600kbps去編碼。但是其實同樣的視頻可以通過比較低的碼率就可以編碼成到高清的效果,這究竟是為什么呢?
我們可以看到在這個圖片里,左圖上還有一些比較模糊的情況,但放在1080p的時候這些現象就不會再出現。
我們剛剛說到不同視頻會有不同的復雜度,如果我們用手動設置高解析度還有高編碼率時, 我們有很大概率會發現它的編碼率使用率是比實際情況多得多。反而在編碼率低的時候因為我們給的解析度很低,我們用戶在收看視頻的時候,圖像質量不是很好。
那我們如何合理分配解析度和編碼率呢?上圖展示的是PSNR的對比數據,PSNR就是圖像質量水平的數據,圖中橙色的就是通過Per-Title編碼的設定,藍色的是手動設定好的Profile。
我們在觀察PSNR的數據,發現Per-Title編碼的圖像質量都在34-45之間,為什么會這樣?因為低于34的圖像質量不理想,而超過45就超出了人類的感覺閾限。所以,在這個例子中,雖然我已經達到70dB,雖然數值上它已經翻倍,但是其實用戶并不會有感知。所以我們的Per-Title都會在適當的情況下把不同的Profile提高到合適的水平。
我們在低碼率的情況下,比如左側200K的情況下,它的圖像質量30以下,因為我們在比較低的編碼率的時候都會設計一些比較低的解析度。但是通過Per-Title不同的圖像可以分配更加適當的解析度。
另外如果我們手動設定,我們會發現,雖然這兩個Profile的編碼率的差別很大,但是實際情況下圖像質量的提高并不明顯,所以要通過Per-Title就可以解決或排除這些問題。它專注于增加合適的編碼率來對應Profile。
用Per-Title最大的優點是什么呢?當然視頻可以用最適當的編碼率去做編碼的時,降低CDN的帶寬成本就是Per-Title最大的優勢。同時儲存的成本也會降低,在網絡較差時,我們也提高了解析度和圖像質量。
3-Pass-Encoding也是我們另外一個編碼的功能,一般我們見到的都是2-Pass-Encoding,是讓視頻多跑一層編碼分析再去做編碼的功能。但我們Bitmovin比較獨特的是我們還要跑一層,把圖像質量的水平提高。如果我們同時使用Per-Title和3-Pass編碼器會再做一層,去解析不同的視頻。
通過上面的例子,我們看到通過3-Pass的時候在同樣編碼率的條件下,視頻的圖像質量增長了很多。
所以如果我們將3-Pass-Encoding和Per-Title一起使用,我們最終達到的優勢就是把CDN的帶寬還有存儲的成本減少。
3
2019年云服務市場份額
接下來分享給大家我們云端市場上的數據。近年來我們也觀察到越來越多用戶會選擇用云端來做他們技術的流程。所以我們公司也參考了IDC對云端市場做的調查數據。
上圖是我們在2019年對云端市場占有率的數據,在眾多云端平臺上,占有率最大是亞馬遜公司;排名第二是微軟,它的占有率有18%;接下來是谷歌和阿里巴巴分別在市場上有5%。
同時我們也對編碼的用戶去做了市場調查。我們在調查之中發現近兩年來的趨勢,比如軟件或者是硬件編碼在低端環境都出現了一些減少的現象。
我們在2020年低端的軟件編碼市場上,我們發現它從55%減少到49%,同樣我們在硬件的編碼也是看到同樣的現象。我們在云端上其實也有區分,比如云端的軟件服務、云端的編碼服務也就是CES。我們還看到云端軟件服務也是有一些少許的減少,反而在云端Encoding的服務,是有一些增長的。這也證明了當客戶越來越追求便捷性而不想再考量基礎設備的時候,客戶更有可能會往云端編碼的方向去走。
4
Bitmovin?編碼
我們Bitmovin的編碼過程在云端上一般是怎么樣去操作?通過上圖可以看到,上半部分都是我們的視頻。當視頻輸入到云端編碼的過程中,它會做幾個步驟,剛剛說的Per-Title的分析當然是其中一個步驟。另外,我們還會先把這些視頻做切片處理,切片成比較小片的視頻過后再分配到不同的機器去做編碼,可以看到底層都是不同的機器同時進行編碼,編碼完成之后就會把這些視頻連接成一個完整的視頻最后輸出到儲存里面。
當然我們做編碼的過程也包括其他的服務,比如加密的服務、加字幕的服務或者多層申報的服務,廣告插播的服務都會包括在這個編碼的過程里面。
剛才我們講切片分配到不同的機器,我想更詳細地描述一下這個過程。這一頁看到這些都是我們分的不同的影片,然后不同的影片一般是會把它先切片到4秒鐘的影片,切片過后就會把它給分配到機器去做編碼,這是一臺8-core的機器。然后編碼過后把它連接成一個完整的視頻。
與此同時,所有的切片都會被分配給一臺機器,所以這是一個影片分配到很多臺機器同時去做編碼。
那當我們要編碼很多個視頻的時候,它同時就會在所有的視頻都同樣做切片的步驟,我們有上千臺的機器在同時去做編碼的過程。這也就是說我們在云端上的情況才可以很有效率的做到編碼的步驟,也正是因為在云端上才可以比較有彈性化的去增加或者減少這些機器,而且如果任何情況下這些機器出現問題時,也能很方便的把這些影片分配到另外一臺機器。
以上就是我們云端上編碼的過程。我們發現隨著業內云端上編碼服務的不斷進步,這項技術也逐漸成熟,有越來越多的客戶會選擇云端的平臺進行編碼,因為不用再去考量基礎設備的問題。
另外我們剛剛講到Bitmovin切片分配編碼的過程,這其實也很適合在云端上去使用,因為這可以很有效率地去同時用多臺機器快速地編碼那些很大的儲存或者數量較多的視頻。
同時我們也發現,我們很多客戶他們自己都是擁有云端服務的,甚至有些都有他們自己的云端合約,所以就推出了一些需求想要利用他們原有的云端資源再繼續使用這個編碼服務。我們對這種客戶,我們也有另外一個模式可以符合他們的需求。
第一個模式就是Managed Cloud這個模式。這個模式讓客戶很方便能獲取我們的賬戶,就可以通過API去把這些編碼的過程開始使用。這個編碼的過程、流程,實際情況都是在Bitmovin我們擁有的云端平臺上去做這個編碼的過程,這就是Managed Cloud模式。
另外一個模式就是Customer Cloud Account的模式也就是云端連接的模式。云端連接和Managed Cloud最大的區別就是當客戶選擇用這個Cloud Connect這個模式的時候,他是通過同樣的Bitmovin的API去踢開編碼的過程。但是實際情況下那個編碼的過程是在客戶擁有的云端平臺上發生的,對于這些有自己云端平臺的客戶,他們就可以通過Cloud Connect去使用Bitmovin的編碼功能。這樣做的好處是可以進一步降低成本,因為用戶是通過他們擁有的合約繼續使用他們的資源。
另外一點就是他們的視頻都不用流出他們自己云端平臺或者那個環境。他們所有的視頻都會在他們自己的環境里面被編碼。
通過Bitmovin在云端上編碼的這個過程,我們讓客戶用兩種不同的模式去做編碼,第一個就是Managed Cloud用戶很方便就可以擁有帳號,也可以在云端資源里直接開始編碼的服務。第二個方式就是客戶當擁有自己的云端平臺的時候或者云端資源的時候,他也可以直接使用他們的云端資源,但是是用我們的Bitmovin的API去做編碼。
同時因為Bitmovin的切片分配編碼的過程,可以讓我們用戶很有效率的在云端里面做編碼,而同時也可以選擇去用spot instance去做編碼,稍后帶來更加細致的解釋,以及spot instance和一般VM的不同。
當然我們因為在云端上可以彈性化地開很多臺機器,我們可以做到上千臺的機器處理很多視頻的同時也可以保證編碼完成的速度。
5
成功案例
接下來我們講我們客戶的成功案例。PCCW是香港的一家電信公司。他們底下的一家公司叫做ViuTV(香港電視娛樂有限公司),其中有一款產品叫VuClip。他們在17個國家有OTT平臺,在印度、印尼、馬來西亞、泰國等這些國家都會有OTT平臺,每季度的用戶也超過700萬個用戶。用戶可以在不同的平臺上下載APP(ios、安卓),還有瀏覽器上也可以觀看VuClip不同的節目和視頻。
VuClip選擇Bitmovin有以下幾個原因,首先是因為Bitmovin的服務可以很方便的讓客戶在所有云端平臺上使用;其次是我們同樣的編碼版本,可以讓客戶符合到不同的codec的需求,VuClip的客戶他們擁有的codec是H264 HEVC還有VP9,他們這些不同codec符合的需求都在同一個編碼的版本里面;第三點他們是通過Cloud Connect云端連接去做編碼的過程,所以他們通過切片分配的過程可以很有效率使用他們擁有的云端資源;再次他們同時也用spot instances的模式去做編碼,因為在云端上使用時,他們需要踢開很多機器去處理很多的檔案,他們編碼的速度很快。整個過程都是在云端也不用再去考量基礎設備成本的問題。Per-Title和3-pass一起用的時候,更可以降低CDN和儲存的成本。
剛才說到VuClip是使用spot instances,那這個spot instances同一般機器有什么區別呢?一般云端上我們可以通過一個定好的價格去租一些機器來使用,但我們有另外一種選擇就是用spot instances的機器。這種機器是比一般限定的機器價格成本更加低,但因為客戶們是用切片分配的方式,就可以很有效率的利用成本很低的spot instances去做這個編碼。我們同時在VuClip的項目中,我們觀察到他們整體成本減低到了35%。
總結
回顧一下今天所有的內容,云端編碼技術越來越成熟的時候,更多客戶都會選擇使用云端的服務,因為可以減少基礎設備的考量;Bitmovin的切片以及分配編碼的這個過程,可以很有效率的利用云端去做編碼,同時因為可以彈性的去打開很多機器,也可以很快速地編碼一些很大的存儲;那當我們有一些客戶自己原來擁有云端資源時,他們完全可以把這些資源利用起來并且可以選擇云端連接的方式去做他們的編碼,同時他們也可以把視頻留在他們的環境里以此降低成本。我們在VuClip的客戶觀察到用這些方式可以降低35%的成本。
LiveVideoStackCon 2021?上海站
時間:2021年4月16日-4月17日
我們準備好全新的內容,在上海歡迎您的到來
點擊【閱讀原文】了解大會更多詳情
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的Cloud Connect: 使用现有的云基础设施来降低使用云编码的操作成本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WebRTC视频编解码器性能评估
- 下一篇: 直播预告:与九位专家聊聊Codec和AO