日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

视频直播技术详解(0)开篇

發(fā)布時間:2025/7/25 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 视频直播技术详解(0)开篇 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

(原標題:《視頻直播技術(shù)詳解》系列之一:開篇)

   文|何李石

隨著互聯(lián)網(wǎng)用戶消費內(nèi)容和交互方式的升級,支撐這些內(nèi)容和交互方式的基礎(chǔ)設(shè)施也正在悄悄發(fā)生變革。手機設(shè)備拍攝視頻能力和網(wǎng)絡(luò)的升級催生了大家對視頻直播領(lǐng)域的關(guān)注,吸引了很多互聯(lián)網(wǎng)創(chuàng)業(yè)者或者成熟企業(yè)進入該領(lǐng)域。  


七牛云作為一家以基礎(chǔ)服務(wù)能力見長的云計算公司,于 6 月底發(fā)布了一個針對視頻直播的實時流網(wǎng)絡(luò) LiveNet 和完整的直播云解決方案,很多開發(fā)者對這個網(wǎng)絡(luò)和解決方案的細節(jié)和使用場景非常感興趣。

結(jié)合七牛實時流網(wǎng)絡(luò) LiveNet 和直播云解決方案的實踐,我們將用七篇文章,更系統(tǒng)化地介紹當下大熱的視頻直播各環(huán)節(jié)的關(guān)鍵技術(shù),幫助視頻直播創(chuàng)業(yè)者們更全面、深入地了解視頻直播技術(shù),更好地技術(shù)選型。

本系列文章大綱如下:

(一)開篇

(二)采集和處理

(三)編碼和封裝

(四)推流和傳輸

(無)現(xiàn)代播放器原理

(六)延遲優(yōu)化

(七)SDK 性能測試模型 


本文是《解密視頻直播技術(shù)》系列之一:開篇,我們將從整體介紹直播中的各個環(huán)節(jié)。  

 

1.采集

采集是播放環(huán)節(jié)中的第一環(huán),iOS 系統(tǒng)因為軟硬件種類不多,硬件適配性較好,所以比較簡單。Android 則不同,市面上硬件機型非常多,難以做到一個庫適配所有硬件。PC 端的采集也跟各種攝像頭驅(qū)動有關(guān),推薦使用目前市面上最好用的 PC 端開源免費軟件 OBS。

2.處理

「80% 的主播沒有美顏根本沒法看。」不光是美顏,很多其它的視頻處理如模糊效果、水印等也都是在這個環(huán)節(jié)做。目前 iOS 端比較知名的是 GPUImage 這個庫,提供了豐富端預(yù)處理效果,還可以基于這個庫自己寫算法實現(xiàn)更豐富端效果。Android 也有 GPUImage 這個庫的移植,叫做 android-gpuimage。同時,Google 官方開源了一個偉大的庫,覆蓋了 Android 上面很多多媒體和圖形圖像相關(guān)的處理。

3.編碼

編碼主要難點有兩個:1. 處理硬件兼容性問題。2. 在高 fps、低 bitrate 和音質(zhì)畫質(zhì)之間找到平衡。iOS 端硬件兼容性較好,可以直接采用硬編。而 Android 的硬編的支持則難得多,需要支持各種硬件機型,推薦使用軟編。

4.推流和傳輸

傳輸涉及到很多端:從主播端到服務(wù)端,從收流服務(wù)端到邊緣節(jié)點,以及再從邊緣節(jié)點到觀眾端。

推流端和分發(fā)端理論上需要支持的并發(fā)用戶數(shù)應(yīng)該都是億級的,不過畢竟產(chǎn)生內(nèi)容的推流端在少數(shù),和消費內(nèi)容端播放端不是一個量級,但是他們對推流穩(wěn)定性和速度的要求比播放端高很多,這涉及到所有播放端能否看到直播,以及直播端質(zhì)量如何。

很多人吐槽現(xiàn)在的 CDN 不靠譜,我也承認傳統(tǒng)的 CDN 在新時代顯得心有余力不足。你能夠借助 CDN 快速實現(xiàn)大規(guī)模的流分發(fā),但是穩(wěn)定高速的推流上傳可能還需要自己做很多工作。因此,我們七牛打造了一個直播專屬的實時流網(wǎng)絡(luò),接下來我們會重點介紹這個網(wǎng)絡(luò)和傳統(tǒng) CDN 的差別。

5.轉(zhuǎn)碼

為了讓主播推上來的流適配各個平臺端各種不同協(xié)議,需要在服務(wù)端做一些流處理工作,比如轉(zhuǎn)碼成不同格式支持不同協(xié)議如 RTMP、HLS 和 FLV,一路轉(zhuǎn)多路流來適配各種不同的網(wǎng)絡(luò)狀況和不同分辨率的終端設(shè)備。

同時,為了配合一些運營需求,比如一些監(jiān)管部門的要求,我們在服務(wù)端也提供了內(nèi)容識別如鑒黃的功能。

6.解碼和渲染

解碼和渲染,也即音視頻的播放,目前 iOS 端的播放兼容性較好,在延遲可接受的情況下使用 HLS 協(xié)議是最好的選擇,我們也提供了能夠播放 RTMP 和 HLS 的播放器 SDK。Android 的硬件解碼和編碼一樣也存在兼容性問題,目前比較好的開源播放器是基于 ffplay 的 ijkplayer,我們也基于此實現(xiàn)了一個更好的 Android SDK

除了 SDK 的介紹之外,我們將重點介紹播放器的原理,以及現(xiàn)代視頻播放器的基本架構(gòu)。

7.直播場景化解決方案

除了整個直播流程的介紹之外,我們將圍繞當下最火的直播場景如社交直播和游戲直播,介紹它背后的技術(shù)方案。這些技術(shù)方案不僅涉及到七牛這樣的直播基礎(chǔ)服務(wù),還可能涉及到和場景相關(guān)的其它技術(shù),如社交直播下的聊天、點贊和彈幕的支持。


總結(jié)

以上是生活随笔為你收集整理的视频直播技术详解(0)开篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。