圖片來源: 

Netflix

站在508公尺高的臺北101大樓最高點,昨天全球Netflix觀眾都看到了美國徒手攀岩大神霍諾德的英姿。這是Netflix直播節目距離地面最高的一個直播現場。

早在3年前,2022年中,全球串流影音龍頭Netflix,Netflix問了自己一個問題,能不能用直播來娛樂全世界?要如何做到?

這一問,啟動了Netflix一項全新的節目形式:直播節目。第一場就是2023年3月4日開播的現場喜劇表演「克里斯洛克的「抓狂有道」,後續更一連直播了數百場節目,從美式足球比賽,到全球最賺錢YouTuber與前世界拳王泰森對決直播,最熱烈的這場拳賽,更吸引超過6500萬人線上同步收看。甚至美國職業摔角聯盟WWE的比賽,每一個禮拜都在Netflix平臺獨家直播到全球。Netflix甚至已經開始計畫,明年在加拿大地區提供,世界盃女子足球比賽的全賽事直播。

昨天剛落幕的霍諾德徒手攀登臺北101大樓,正是這系列直播節目的其中一場,但是這一次的直播現場,是拍攝現場距離地面最高的一次。不只有高空的直升機、無人機,還有從臺北101吊掛鋼索,跟著霍諾德一步步升高的高空攝影師,就吊掛在距離霍諾德幾公尺旁運鏡。101大樓不同高度的露臺,更設置了不少攝影機,來拍攝更多角度的畫面。

根據美國媒體推測,Netflix直播節目收看人數最高的一場是2024年11月,27歲網紅和前世界拳王泰森的直播表演賽,吸引超過6千萬戶家庭,同時上線人數最高達到6,500萬人。美國媒體推測,光靠這場比賽,Netflix第四季的訂戶就暴增了1千萬人。

為了確保直播順暢,Netflix採用了許多開源技術和自製的大規模即時監控技術,每秒可以處理最多到3800萬個資料事件,才足以因應如此龐大規模的全球直播活動。

2022年中,推出串流影音服務超過15年的Netflix,開始思考一個問題,能不能用直播來娛樂全球,也展開了相關的技術架構準備。因為全球規模的直播活動,與Netflix原本的影音串流架構有很大的不同,甚至可說,當時的Netflix技術架構,還無法支撐起全球性的直播活動。

所以,Netflix先用一場劇場中的喜劇節目作為試點,也就是主持過奧斯卡頒獎的克里斯、洛克的脫口秀「抓狂有道」。

不過,Netflix下定決心要做直播節目時,距離這場脫口秀,只剩下9個月的時間準備,需要快速執行,同時又要考慮得日後的規模化和多樣性,來進行架構設計。他們決定要從直播生命週期的角度,涵蓋製作到螢幕播放的全程,來設計這款新的影音節目產品。

顛覆Netflix既有模式的挑戰,直播節目與按需播放的五大不同

從技術層面來看,Netflix擅長的是Video On Demand(按需播放)形式,這和直播節目的Live Streaming形式,有五大不同。從取材角度來看,第一的不同是,從拍攝鏡頭到觀眾螢幕的時間大不同。按需播放形式往往可以擁有好幾天到好幾個月的時間,但是,直播只有幾秒鐘,得完成從畫面捕捉,轉碼,處理成不同影音串流可用的內容形式。

從觀眾角度來說,兩種模式提供的使用者體驗也很不一樣,按需播放提供的是隨時、隨地,隨意裝置都可以收看的內容,但是,直播是預先排定的固定時間,更需要許多事前宣傳和促銷活動。

更進一步來看技術面,第三個不同是觀看模式的差異,這也會帶來截然不同的網路流量高峰變化。按需播放模式有週期性,定期會出現流量高峰,可以善用像CDN來預先配置資源,或是參考歷史流量記錄,運用公雲來分流。但是,直播節目的流量,是完全不確定的爆量,隨時都可以爆量,需要更即時回應和規模調整的負載平衡能力。

回放暫存單位的差異是第四項不同點,按需播放形式的暫存單位以「分鐘」為單位來快取,可以有幾分鐘的快取,但是,直播必須以秒為單位來處理延遲。
最後一項是兩者的運作模式也大不相同。按需播放形式採取了「待命模式(On-call)」,觀眾有需要才會播放,沒人看甚至都不用播放,但是,直播是即時性的節目,一旦有問題得,就得在最快時間內恢復播放。

Netflix的目標是,盡可能支援最多種類的裝置,都可以流暢的播放,也要有能力支援當時全球超過3億名用戶的收看規模。

為支援全球任何地點直播,NetFlix如何設計直播技術架構

為了支援日後可能在全球任何地方舉行的節目,(當初應該沒有想到,有一天會在508公尺的高空拍攝) ,因為不見得每一個地點都有充足的現場直播設施或是妥善的網路連線。Netflix直播技術團隊,採取了分散式的廣播營運中心(Broadcast Operations Center)架構,搭配可以用來偵測和截取訊號、同時又可以處理字幕、圖文和廣告管理的專用系統。盡可能採取可重複利用和高度自動化的架構。

整個直播節目的技術運作架構如下,從直播製作,廣播維運中心(取得影音和檢查),直播編碼流程(進行轉碼,封裝,播放),再將內容傳送到分散式CDN服務,再發送到使用者端的裝置。另外還有一套內容處理的雲端服務,涵蓋了訊息推送,回放服務,探索內容服務(例如推薦功能)。

Netflix直播節目的技術運作架構,關鍵是製作和播放區分成兩套架構。圖片來源:Netflix

Netflix直播節目的設計是將製作和播放區分開來,現場直播節目製造組,只需要將節目內容傳送到播放單位,也就是廣播維運中心,後續全部由廣播維運中心來負責。

廣播維運中心收到的來源,包含了已製作完成的節目,但是還需進行編碼和打包等多項數位處理,才能串流傳輸到不同裝置。這些處理全都透過公雲的服務來處理,舉例來說,透過公雲服務將內容轉碼成各種視訊品質等級的內容版本,可以針對每個節目設計不同的視訊品質。例如第一檔直播的喜劇節目Chris Rock: Selective Outrage,採用了每秒30幀的超高清畫質,而在去年舉辦的多場NFL美國美式足球聯盟聖誕大賽中,則採用了每秒59.94幀的高清畫質,同時包括4種語言的聲音和廣告。數位版權管理 (DRM)、內容管理和內容交付服務也都部署在公雲上。

交付內容時,主要透過Netflix自行開發的CDN服務Open Connect,在靠近觀眾的6千個地點上,建置了超過18,000臺CDN伺服器,並透過專用的 Open Connect骨幹網路,連接到公雲業者的句點,串接影音來源的主機。光是這套Open Connect及時交付架構,Netflix過去十多年來投入超過10億美元的投資。

為了讓多數用戶,不用需升級串流媒體的設備,就可以存取直播節目,Netflix三年前就決定相容性最廣的HTTPS Live Streaming。採用了AVC和HEVC視訊編解碼器,可以支援從高清到 4K畫質等多種影音品質等級的影音轉碼。為了兼顧壓縮效率、基礎設施的負載和傳輸延遲的考量,Netflix最後採取了2秒片段時長的快取設計。直播節目進行時,還有數十隻雲端服務,提供播放配置、個人化調整以及相關顧客數據指標的搜集。

直播架構大量依靠開源技術,也自行開發多套串流工具平臺

直播節目所用的即時監控系統,採用了Netflix內部開發的工具,像是即時串流分析工具Atlas、串流處理即服務平臺Mantis、自助式儀表板工具Lumen,也採用了開源 Kafka和Druid來建置,曾經支援過最大型的直播活動,整套Netflix直播系統,每秒可以處理高達3,800萬個事件,只要幾秒鐘,就可以提供關鍵指標和營運分析。

在每一場直播節目開播之前,他們也有不少準備工作。像是會事先進行收視率預測,來預先配置可能需要的雲端資源和CDN容量,也會提前與ISP業者和雲端合作夥伴共享預測結果,讓他們可以規畫網路和運算資源。

在雲端也有一套即時擴充系統,可以用彌補預測系統的不同,即時擴充系統可以針對不同的使用者行為,如註冊、登入、內容發現和播放服務的變化,即時因應來擴充對應服務的可用資源,來因應超出原本預測收視率,所做的準備工作。

在大型活動現場,也會與關鍵系統的工程負責人設立現場發布室。為了快速檢測和回應可能的問題,Netflix直播團隊會事先制定出一整套的問題指標,作為問題的先期指標,也針對常見的操作問題,預先制定了詳盡的緊急應變手冊,提前演練故障的應對。這份直播緊急應變手冊,不只限於工程部門的操作,還涵蓋了通報到高階主管、客戶服務、生產、傳播或社交等不同部門的協調項目。

在這次臺北101徒手攀登直播開播之前,Netflix就預告,會有10秒鐘的時間延遲,以便有任何突發事故時,可以中斷或調整直播內容。

10秒延遲的應變關鍵,一站式的播放中控系統關鍵平臺Control Room

前面提到Netflix將節目製作和節目播放區分開來,在直播播放團隊有一套Netflix自行開發的播放中控系統,稱為「控制室」(Control Room),可以用來控制和調度,各種直播活動的資源配置。調度人員可以在這個控制室系統上,監看各種數據和畫面,來因應10秒延遲時間出現的各種變化。

Netflix自行開發的播放中控系統,稱為「控制室」(Control Room)。圖片來源:Netflix

這套「控制室」系統,提供了一個統一的控制介面,可以用來監看和控制一場直播活動的雙區域播放架構。每一檔節目都採取了雙雲端區域架構的備援,同時透過兩個公雲區域中心,來播放。

操作人員透過控制室可以協調兩個雲端區域的資源,也可以監控關鍵指標。一旦出現故障,也有故障轉移的手動切換機制,像是其中一個雲端區域塞爆或當機,操作員只要幾秒鐘就能將流量導向另一個正常運作的區域來提供串流服務。

一檔直播活動還可以細分成三個階段,直播前準備階段、編碼和直播階段、支播後清理階段。在這套控制室系統上,操作人員可以監看每一個階段的所有狀態資訊,也能確保觀眾看到的節目時間表,和預先排定節目表一致。因為直播節目沒有預定的結束時間(後面也不會像電視有下一檔節目要播),需要透過人工操作,啟動「結束指令」,來結束這一檔直播節目。

若直播發生中斷,在控制室中也預先安排了不同的中斷事件圖卡,來告知觀眾,目前處於什麼樣的狀態,接下來又會如何接續,是中斷節目,還是稍後多久可以重啟直播等。

Netflix原本的直播節目團隊,只是一個小團隊,但現在已經發展成一個數十團隊協作,來打造和維運這一整套的直播系統,包括了營運和可靠性團隊、開發團隊、內容交付團隊、設備播放團隊、串流媒體演算法團隊、UI工程團隊、搜尋和發現服務、訊息傳輸技術團隊、內容促銷和配銷團隊、資料平臺團隊、雲端基礎架構團隊、資料科學和工程團隊、PM團隊、全球化部門、消費者洞察團隊、廣告團隊、資安團隊、支付團隊、直播產品團隊、體驗設計團隊、產品行銷和客服團隊等。

從這個團隊清單,更可以看出Netflix為一檔直播節目所下的投資和決心,可說是串流之後的戰略級新娛樂模式。

 

熱門新聞

Advertisement