原文為runner365.git大佬的文章
原文鏈接:https://blog.csdn.net/sweibd/article/details/124552793
WHIP接口
- 什么是whip
全稱: WebRTC-HTTP ingestion protocol (WHIP).
rfc地址: rfc-draft-murillo-whip-00
簡單說,就是通過HTTP接口能導入webrtc媒體流。
2. webrtc publish/unpublish
2.1 webrtc publish
webrtc推流接口
方法: http post
uri: http://hostname:hostport/publish/roomId/uid
http post body: offerSdp
返回:
http body: asswerSdp
舉例,向host=192.168.1.98:8090, roomId=2001, 自己作為uid=6547推流.
url為: http://192.168.1.98:8090/publish/2001/6547
post data為offerSdp
返回data為answerSdp
2.2 webrtc unpublish
本方法為優雅的關閉。
也可以暴力的關閉可以直接在客戶端進行PeerConnection.Close(), 或者暴力關閉網頁;
webrtc關閉推流接口
方法: http post
uri: http://hostname:hostport/unpublish/roomId/uid
http post body: null
返回:
http body:
{
“code”: 0,
“desc”: “ok”
}
舉例,向host=192.168.1.98:8090, roomId=2001, 自己作為uid=6547關閉推流.
url為: http://192.168.1.98:8090/unpublish/2001/6547
post data為空
返回data為
{
“code”: 0,
“desc”: “ok”
}
- webrtc subscribe
3.1 webrtc subscribe
webrtc拉流接口:
方法: http post
uri: http://hostname:hostport/subscribe/roomId/uid/remoteUid
其中uid為自己的uid,remoteUid為想要訂閱的遠端uid。
http post body: offerSdp
返回:
http body: asswerSdp
舉例,向host=192.168.1.98:8090, roomId=2001, 自己作為uid=6547,從遠端remoteUid=4489拉流.
url為: http://192.168.1.98:8090/subscribe/2001/6547/4489
post data為offerSdp
返回data為answerSdp
3.2 webrtc unsubscribe
本方法為優雅的關閉。
也可以暴力的關閉可以直接在客戶端進行PeerConnection.Close(), 或者暴力關閉網頁;
webrtc關閉拉流接口
方法: http post
uri: http://hostname:hostport/unsubscribe/roomId/uid/remoteUid
http post body: null
返回:
http body:
{
“code”: 0,
“desc”: “ok”
}
舉例,向host=192.168.1.98:8090, roomId=2001, 自己作為uid=6547關閉對遠端remoteUid=4489拉流.
url為: http://192.168.1.98:8090/unsubscribe/2001/6547/4489
post data為空
返回data為
{
“code”: 0,
“desc”: “ok”
}
- 客戶端demo
提供客戶端web demo: webrtc whip sdk
webrtc sfu服務: cpp_media_server
————————————————
版權聲明:本文為CSDN博主「runner365.git」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/sweibd/article/details/124552793