轻量级RTSP服务模块和RTSP推流模块适用场景区别
好多開發(fā)者一直搞不清輕量級(jí)RTSP服務(wù)SDK和RTSP推流SDK的區(qū)別(Github下載地址),以下是相關(guān)區(qū)別:
1. 輕量級(jí)RTSP服務(wù)模塊:輕量級(jí)RTSP服務(wù)解決的核心痛點(diǎn)是避免用戶或者開發(fā)者單獨(dú)部署RTSP或者RTMP服務(wù),實(shí)現(xiàn)本地的音視頻數(shù)據(jù)(如攝像頭、麥克風(fēng)),編碼后,匯聚到內(nèi)置RTSP服務(wù),對(duì)外提供可供拉流的RTSP URL,輕量級(jí)RTSP服務(wù),適用于內(nèi)網(wǎng)環(huán)境下,對(duì)并發(fā)要求不高的場(chǎng)景,支持H.264/H.265,支持RTSP鑒權(quán)、單播、組播模式,考慮到單個(gè)服務(wù)承載能力,我們支持同時(shí)創(chuàng)建多個(gè)RTSP服務(wù),并支持獲取當(dāng)前RTSP服務(wù)會(huì)話連接數(shù)。
以下是接口詳解(以Android平臺(tái)為例):
| 調(diào)用描述 | 接口 | 接口描述 |
| 常規(guī)功能 | Android RTMP推送端所有功能依然有效,亦可同時(shí)推送RTMP | |
| SmartRTSPServerSDK | ||
| 初始化RTSP Server | InitRtspServer | Init rtsp server(和UnInitRtspServer配對(duì)使用,即便是啟動(dòng)多個(gè)RTSP服務(wù),也只需調(diào)用一次InitRtspServer,請(qǐng)確保在OpenRtspServer之前調(diào)用) |
| 創(chuàng)建一個(gè)rtsp server | OpenRtspServer | 創(chuàng)建一個(gè)rtsp server,返回rtsp server句柄 |
| 設(shè)置端口 | SetRtspServerPort | 設(shè)置rtsp server 監(jiān)聽端口, 在StartRtspServer之前必須要設(shè)置端口 |
| 設(shè)置鑒權(quán)用戶名、密碼 | SetRtspServerUserNamePassword | 設(shè)置rtsp server 鑒權(quán)用戶名和密碼, 這個(gè)可以不設(shè)置,只有需要鑒權(quán)的再設(shè)置 |
| 獲取rtsp server當(dāng)前會(huì)話數(shù) | GetRtspServerClientSessionNumbers | 獲取rtsp server當(dāng)前的客戶會(huì)話數(shù), 這個(gè)接口必須在StartRtspServer之后再調(diào)用 |
| 啟動(dòng)rtsp server | StartRtspServer | 啟動(dòng)rtsp server |
| 停止rtsp server | StopRtspServer | 停止rtsp server |
| 關(guān)閉rtsp server | CloseRtspServer | 關(guān)閉rtsp server |
| UnInit rtsp server | UnInitRtspServer | UnInit rtsp server(和InitRtspServer配對(duì)使用,即便是啟動(dòng)多個(gè)RTSP服務(wù),也只需調(diào)用一次UnInitRtspServer) |
| SmartRTSPServerSDK供Publisher調(diào)用的接口 | ||
| 設(shè)置rtsp的流名稱 | SetRtspStreamName | 設(shè)置rtsp的流名稱 |
| 給要發(fā)布的rtsp流設(shè)置rtsp server | AddRtspStreamServer | 給要發(fā)布的rtsp流設(shè)置rtsp server, 一個(gè)流可以發(fā)布到多個(gè)rtsp server上,rtsp server的創(chuàng)建啟動(dòng)請(qǐng)參考OpenRtspServer和StartRtspServer接口 |
| 清除設(shè)置的rtsp server | ClearRtspStreamServer | 清除設(shè)置的rtsp server |
| 啟動(dòng)rtsp流 | StartRtspStream | 啟動(dòng)rtsp流 |
| 停止rtsp流 | StopRtspStream | 停止rtsp流 |
2. RTSP推流模塊:RTSP推流模塊,和RTMP推流模塊類似,適用于內(nèi)網(wǎng)或公網(wǎng)環(huán)境下,主要適用于第三方RTSP服務(wù)對(duì)接,如darwin stream server,或者第三方RTSP服務(wù)平臺(tái),如視頻分析平臺(tái)等特定場(chǎng)景的服務(wù)器,支持H.264/H.265,支持TCP、UDP傳輸模式設(shè)定,也支持鑒權(quán)服務(wù),RTSP協(xié)議的優(yōu)勢(shì)主要在于UDP這塊,但是UDP數(shù)據(jù)包,公網(wǎng)容易被block住,而且,網(wǎng)絡(luò)不穩(wěn)定容易丟包,所以,能用RTMP推流的場(chǎng)景,一般建議走RTMP,需要特定系統(tǒng)對(duì)接的,再走RTSP。
以下是接口詳解(以Android平臺(tái)為例):
| 設(shè)置推送RTSP傳輸方式 | SetPushRtspTransportProtocol | transport_protocol:1表示UDP傳輸rtp包; 2表示TCP傳輸rtp包 |
| 設(shè)置推送RTSP的URL | SetPushRtspURL | 設(shè)置推送RTSP的URL |
| 開始RTSP推送 | StartPushRtsp | 啟動(dòng)推送RTSP流 |
| 停止RTSP推送 | StopPushRtsp | 停止推送RTSP流 |
總結(jié)
以上是生活随笔為你收集整理的轻量级RTSP服务模块和RTSP推流模块适用场景区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 科技、体育、创业,三者碰撞是真的野!
- 下一篇: 我把上课的机器学习课件发给了国内300多