iOS 直播專題1-直播流程原理

前言

當(dāng)前app最火的幾個(gè)技術(shù)專題無(wú)非就是直播、手游、跨平臺(tái),只要精通其中任何一個(gè),那工資都是爽的不要不要的,很多人想學(xué)苦于無(wú)法入門,這里就帶大家來(lái)了解下直播技術(shù)。
直播難,難在專業(yè)技術(shù)點(diǎn)多,專業(yè)概念也多,涉及到音視頻壓縮算法處理、CDN分發(fā)、即時(shí)通訊等,單個(gè)技能就夠你學(xué)個(gè)好幾年了。怎樣快速搭建一個(gè)直播呢?當(dāng)然是站在大神的肩膀上!

效果圖

IMG_3797.PNG

完整的直播功能

根據(jù)效果圖猜猜產(chǎn)品設(shè)計(jì)的功能:

聊天

  • 聊天、表情、彈幕、排行榜、貴賓榜、房間增刪查改切換、黑名單等

送禮

  • 普通禮、豪華禮、普通??糧、特權(quán)、包裹、充值、提現(xiàn)等

直播

  • 錄制、美顏、推流、解碼、實(shí)時(shí)播放、歷史播放、轉(zhuǎn)播、禁播、超管、鑒黃等

個(gè)人

  • 登錄、注冊(cè)、搜索、關(guān)注、粉絲、收入等

平臺(tái)

  • 個(gè)人統(tǒng)計(jì)、主播統(tǒng)計(jì)、收入統(tǒng)計(jì)、業(yè)務(wù)埋點(diǎn)等

完整直播app流程

圖片.png

1.音視頻采集

從設(shè)備(手機(jī))的攝像頭、MIC中采集音頻、視頻的原始數(shù)據(jù)

2.前置處理

  • 對(duì)視頻添加美顏、水印、濾鏡等
  • 對(duì)音頻進(jìn)行混音、消除環(huán)境音、聲音特效等

3.音視頻編碼

原始的音視頻數(shù)據(jù)是很大的,需要進(jìn)行壓縮編碼,方便快速傳輸。
常用的編碼類型有:

  • 視頻編碼:H.264、H.265、VP8、VP9
  • 音頻編碼:aac、Opus、mp3

編碼方式又分為軟編碼、硬編碼

  • 軟編碼: 使用CPU進(jìn)行編碼
  • 硬編碼: 不使用CPU進(jìn)行編碼,使用顯卡(GPU)進(jìn)行硬件加速,專用的DSP、FPGA、ASIC芯片等硬件進(jìn)行編碼

4.推流

將編碼好的音視頻根據(jù)流媒體協(xié)議格式封裝數(shù)據(jù),推送到流媒體服務(wù)器。
常用的流媒體協(xié)議有:
RTMP、RTSP、HLS、RTP/RTCP、FLV

5.流媒體服務(wù)器

接收到音視頻流,服務(wù)器處理步驟:

  • 鑒黃處理
  • 截屏
  • 錄制保存
  • 實(shí)時(shí)轉(zhuǎn)碼,常用的格式為RTMP、RTSP、HLS、FLV,方便iOS、Android、pc等根據(jù)自身情況拉取各自符合格式的流
  • CDN緩存分發(fā)

常用的流媒體服務(wù)器有:
nginx、SRS、BMS

6.拉流

各個(gè)客戶端根據(jù)自身情況拉取流媒體服務(wù)器轉(zhuǎn)碼的音視頻流

7.音視頻解碼

拉取下來(lái)的流都是經(jīng)過(guò)第3步編碼后的,需求根據(jù)編碼協(xié)議進(jìn)行解碼才能播放

8.播放

各端根據(jù)原生提供的API進(jìn)行音視頻播放

iOS直播技術(shù)

圖片.png

如果覺(jué)得可以就點(diǎn)個(gè)??吧,歡迎粉絲收藏,土豪打賞,您的關(guān)注就是我們創(chuàng)作的動(dòng)力!

讀者有什么想看的相關(guān)技術(shù)篇章,歡迎評(píng)論留言!

QQ交流群:908058499

上一篇:無(wú) 目錄 下一篇:iOS 直播專題2-音視頻采集

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容