亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創(chuang)

直播中的延播實現

2023-05-10 09:53:45
18
0

延播需求

直播一般要(yao)求實時(shi)性(xing),但有(you)些需要(yao)審核的場景,則需要(yao)延遲(chi)播放,留出充足的審核時(shi)間。

因而在直播功(gong)能中(zhong),需(xu)要人(ren)為引入延(yan)遲。

直播協議分析

直(zhi)播常用(yong)的(de)協(xie)議(yi)有三種,RTMP(專屬推拉(la)流協(xie)議(yi)),FLV(基(ji)于(yu)(yu)http長鏈接),M3U8(基(ji)于(yu)(yu)http短連接)。

其(qi)中(zhong)RTMP和FLV都是流(liu)式協(xie)議,如果要增加延遲,則需(xu)要在推流(liu)或者拉流(liu)時引(yin)入一個buffer負責緩(huan)存數據。

當緩存(cun)數(shu)據足夠延(yan)遲(chi)的時間時再(zai)將數(shu)據吐(tu)給用(yong)戶(hu)。

對于M3U8協議(yi)來說,用戶首先拉到的(de)是ts列(lie)表,然(ran)后(hou)再選取(qu)列(lie)表中的(de)ts文件進(jin)行下載播放,通過(guo)持續(xu)刷新列(lie)表來實現(xian)直播。

如果要增加延遲,只需要返(fan)回(hui)較舊的ts列表就可以實(shi)現。

ts片已經在服(fu)務器上實現(xian)了數據存儲,因而(er)無需對(dui)數據部分再做更多的處理。

實現方案

1 在直播基礎(chu)上做m3u8的錄制

直(zhi)播(bo)列表通常只返(fan)回最(zui)近的(de)(de)幾個ts片,在做延播(bo)時,需要把最(zui)大延播(bo)時間(jian)的(de)(de)片名都記錄下來,直(zhi)到超過時間(jian)再(zai)做刪(shan)除。對(dui)服務器(qi)上的(de)(de)ts文件,也要適用同樣的(de)(de)刪(shan)除策(ce)略。

2 拉取延播流時(shi),回放錄制的數據

到達(da)延播(bo)時間時,才(cai)允許響(xiang)應(ying)(ying)延播(bo)數據,否則返回(hui)404。延播(bo)數據就從(cong)錄制的(de)ts列(lie)表(biao)中(zhong)返回(hui)。對ts文件(jian)的(de)響(xiang)應(ying)(ying),則與(yu)響(xiang)應(ying)(ying)直播(bo)文件(jian)相(xiang)同。

3 其它協議(yi)通過轉推(tui)實現

如果(guo)有(you)其它協議的延播(bo)流(liu)(liu)需求,則通(tong)過轉(zhuan)(zhuan)碼服(fu)務器(qi),拉取m3u8的延播(bo)流(liu)(liu),轉(zhuan)(zhuan)推到直播(bo)服(fu)務器(qi),就可以實現rtmp和flv協議的延播(bo)流(liu)(liu)。

方案特點

優點

  1. 改造的工作量最小。
  2. 對斷流重推,尤其是推流到不同機器時的兼容性最好。

缺點

  1. 受限于切片時長的限制,延播的時間不能精確控制。

 

0條評論
0 / 1000
張****東
10文章(zhang)數
0粉絲數
張****東
10 文章 | 0 粉絲
張****東
10文章數
0粉絲數
張****東
10 文章 | 0 粉絲
原(yuan)創

直播中的延播實現

2023-05-10 09:53:45
18
0

延播需求

直播一般要求實時(shi)性,但有些(xie)需(xu)要審(shen)核的場景,則需(xu)要延遲播放,留出充(chong)足(zu)的審(shen)核時(shi)間。

因而在直播功能中,需要人(ren)為引入(ru)延遲。

直播協議分析

直播常用(yong)的(de)協(xie)議有三種(zhong),RTMP(專屬推拉流(liu)協(xie)議),FLV(基(ji)(ji)于(yu)http長鏈(lian)接),M3U8(基(ji)(ji)于(yu)http短連接)。

其(qi)中(zhong)RTMP和FLV都(dou)是流式協議,如果要增(zeng)加(jia)延遲,則需要在推流或(huo)者(zhe)拉流時引入一個buffer負責緩存(cun)數據(ju)。

當緩存數據足(zu)夠延(yan)遲的時(shi)間時(shi)再將(jiang)數據吐給(gei)用戶。

對于M3U8協(xie)議(yi)來(lai)說,用戶首先拉到的是ts列表,然后再(zai)選取列表中的ts文件進行(xing)下載播(bo)放,通過(guo)持續刷(shua)新列表來(lai)實(shi)現直播(bo)。

如(ru)果要增加延(yan)遲,只需(xu)要返(fan)回較舊(jiu)的ts列表(biao)就可以實現(xian)。

ts片(pian)已經在服務器上實現了數據存儲,因(yin)而無需(xu)對數據部(bu)分再做更多的處(chu)理。

實現方案

1 在直(zhi)播基(ji)礎上做m3u8的(de)錄制

直播列表通(tong)常只返回最近的幾(ji)個ts片,在做延播時,需要(yao)把最大延播時間的片名都(dou)記錄下來,直到超(chao)過時間再做刪(shan)除。對服務器上的ts文件,也要(yao)適用同(tong)樣的刪(shan)除策略。

2 拉取延播(bo)流時,回(hui)放(fang)錄制(zhi)的(de)數據

到達延播(bo)(bo)時間時,才允許響(xiang)應(ying)(ying)延播(bo)(bo)數據(ju),否則返回404。延播(bo)(bo)數據(ju)就從錄制的ts列表中(zhong)返回。對ts文件的響(xiang)應(ying)(ying),則與響(xiang)應(ying)(ying)直播(bo)(bo)文件相同。

3 其它協議通過轉(zhuan)推實現

如果有其它協議的(de)延播(bo)(bo)流(liu)需求,則通過轉碼服(fu)(fu)務(wu)(wu)器,拉(la)取(qu)m3u8的(de)延播(bo)(bo)流(liu),轉推到(dao)直播(bo)(bo)服(fu)(fu)務(wu)(wu)器,就可以實現rtmp和flv協議的(de)延播(bo)(bo)流(liu)。

方案特點

優點

  1. 改造的工作量最小。
  2. 對斷流重推,尤其是推流到不同機器時的兼容性最好。

缺點

  1. 受限于切片時長的限制,延播的時間不能精確控制。

 

文章來自個人專欄
文章 | 訂(ding)閱(yue)
0條評論
0 / 1000
請輸入你的評論
0
0