mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-06-12 19:24:22 +08:00
feat: 增加webrtc代理拉流 (#4389)
- 增加客户端模式,支持主动拉流、推流: - addStreamProxy接口新增支持whep主动拉流,拉流地址目前只兼容zlm的whep url。 - addStreamPusherProxy接口新增支持whip主动推流,推流地址目前只兼容zlm的whip url。 - 以上推流url格式为webrtc[s]://server_host:server_port/app/stream_id?key=value, 内部会自动转换为http[s]://server_host:server_port/index/api/[whip/whep]?app=app&stream=stream_id&key=value。 - 增加WebRtc p2p 模式: - 增加 ICE FULL模式。 - 增加STUN/TURN 服务器。 - 增加websocket 信令。 - 增加P2P代理拉流。 --------- Co-authored-by: xia-chu <771730766@qq.com> Co-authored-by: mtdxc <mtdxc@126.com> Co-authored-by: cqm <cqm@97kid.com>
This commit is contained in:
@@ -346,11 +346,30 @@ udp_recv_socket_buffer=4194304
|
||||
merge_frame=1
|
||||
|
||||
[rtc]
|
||||
#webrtc 信令服务器端口
|
||||
signalingPort=3000
|
||||
signalingSslPort=3001
|
||||
#STUN/TURN服务器端口
|
||||
icePort=3478
|
||||
iceTcpPort=3478
|
||||
#STUN/TURN端口是否使能TURN服务
|
||||
enableTurn=1
|
||||
#ICE传输策略:0=不限制(默认),1=仅支持Relay转发,2=仅支持P2P直连
|
||||
iceTransportPolicy=0
|
||||
#STUN/TURN 服务Ice密码
|
||||
iceUfrag=ZLMediaKit
|
||||
icePwd=ZLMediaKit
|
||||
#TURN服务分配端口池
|
||||
portRange=50000-65000
|
||||
#rtc播放推流、播放超时时间
|
||||
timeoutSec=15
|
||||
#本机对rtc客户端的可见ip,作为服务器时一般为公网ip,可有多个,用','分开,当置空时,会自动获取网卡ip
|
||||
#同时支持环境变量,以$开头,如"$EXTERN_IP"; 请参考:https://github.com/ZLMediaKit/ZLMediaKit/pull/1786
|
||||
externIP=
|
||||
#当指定了interfaces,ICE服务器会使用指定网卡bind socket
|
||||
#以解决公网IP使用弹性公网IP配置实现(部署机器无法bind该公网ip的问题)
|
||||
#支持环境变量,以$开头,如"$PRIVATE_IP"
|
||||
interfaces=
|
||||
#rtc udp服务器监听端口号,所有rtc客户端将通过该端口传输stun/dtls/srtp/srtcp数据,
|
||||
#该端口是多线程的,同时支持客户端网络切换导致的连接迁移
|
||||
#需要注意的是,如果服务器在nat内,需要做端口映射时,必须确保外网映射端口跟该端口一致
|
||||
@@ -358,7 +377,7 @@ port=8000
|
||||
#rtc tcp服务器监听端口号,在udp 不通的情况下,会使用tcp传输数据
|
||||
#该端口是多线程的,同时支持客户端网络切换导致的连接迁移
|
||||
#需要注意的是,如果服务器在nat内,需要做端口映射时,必须确保外网映射端口跟该端口一致
|
||||
tcpPort = 8000
|
||||
tcpPort=8000
|
||||
#设置remb比特率,非0时关闭twcc并开启remb。该设置在rtc推流时有效,可以控制推流画质
|
||||
#目前已经实现twcc自动调整码率,关闭remb根据真实网络状况调整码率
|
||||
rembBitRate=0
|
||||
|
||||
Reference in New Issue
Block a user