天天看點

直播間搭建過程中較為核心的三個步驟

不知道大家平時有沒有看遊戲直播的習慣,我偶爾會看。目前遊戲直播通常會分成網遊和手遊兩大類,最明顯的差別就是一個需要電腦一個需要手機。但這些在開發者眼中看來,直播間搭建的過程都是比較一緻的。不過其中也存在需要特殊注意的幾個步驟,接下來跟大家簡單分享一下。

1.流媒體的釋出

這一環節對于整個直播平台來說是非常重要的了,因為最終面向的是各個終端使用者,并且需要提供服務的是分布在全網的各個流媒體伺服器。我們也可以這樣認為,流媒體伺服器的穩定性及性能優劣程度決定着終端使用者的産品使用體驗效果和直播平台營運成本。是以在開發過程中需要進行适當的改進。

直播間搭建過程中較為核心的三個步驟

(1)采用C語言實作,以保證流媒體伺服器的運作效率最高。

(2)将之前的多程序模型改為異步IO模型,進而提高伺服器的并發處理性能。(在直播過程中遇到高并發情況時能夠及時得到解決)

(3)在協定層上增加對RTMP和HLS協定的支撐。

(4)為了能夠大規模的進行分布式部署、排程和容錯,可以引入Hadoop分布式架構。

可以通過以上幾點在開發過程中做出改進,使得流媒體伺服器的整體性能在原有的基礎上再進行增高。

2.CDN分發

這一步驟主要是對流媒體資料在全球範圍内的多個節點之間,進行一個快速的分發,以提高app終端使用者的體驗效果。通常會選擇RTMP、HTTP及UDP這三個協定,在CDN的節點伺服器建設上,需要根據國内網際網路的整體布局,采取中心節點—各省級節點—地市級節點的三級架構模式,将最主要的使用者流量最先引到第三級的節點上,然後是第二級節點以此類推。設計這樣的模式主要是為了節省直播間搭建完成之後,後期的營運成本也就是帶寬費用能夠降低一些。最後,為了在一定程度上保障直播平台能夠流暢運作,可以将CDN系統部署在64位的Linux伺服器上。

直播間搭建過程中較為核心的三個步驟

3.終端播放器

就拿遊戲直播來講,不同的使用者會根據自己的喜好和習慣來選擇觀看的管道。也就是PC端和手機端,手機端又分為Android和iOS兩個系統。是以在終端的解碼回放部分,需要分别進行。

(1)PC

基于Adobe的flashplayer來做應用層的開發,這是目前比較成熟的技術路線。在開發過程中,為了有效地縮短開發周期,也可以基于Adobe的OSMF播放器架構來進行開發。當然,這個是需要根據實際情況來靈活變通的。

(2)Android

在Android端的播放器開發過程中,最先需要考慮的就是終端的解碼性能。因為解碼的架構有很多可以選擇的,比如ffmpeg、mediaplayer等。

(2)iOS

iOS與Android端需要考慮的問題是一緻的,需要選擇蘋果提供的videotoolbox的開發接口,通過它能夠直接調用蘋果處理器中自帶的硬體解碼功能。這樣一來,就可以大大地降低裝置功耗,以達到延長電池續航時間的目的。

直播間搭建過程中較為核心的三個步驟

經過以上的内容我們可以了解到,平時我們所看到的直播平台是經過開發者通過一系列的操作步驟完成的。為了能給使用者帶來最佳的産品體驗,在直播間搭建的過程中也是下了不少功夫。不過要是自己開發這樣一個平台的話,還是略微困難了些。

本文聲明原創,轉載請注明出處。

繼續閱讀