ZLMediaKit / ZLMediaKit

WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT server and client framework based on C++11
https://docs.zlmediakit.com
Other
13.65k stars 3.37k forks source link

GB28181推流警告: address dismatch #267

Closed xia-chu closed 4 years ago

xia-chu commented 4 years ago

问题如图:

image

解答

表面原因:错误是由于在短时间让设备用相同的ssrc推流了两次,这个ssrc如果已经被使用,那么就会绑定一个设备的ip和端口。

深层原因:如果让这个设备用相同的ssrc重新推流,那么设备的端口一般会变化,这边ZLMediaKit发现这个ssrc的源地址发送变化了,不知道到底是原设备离线了还是有两个设备在用相同的ssrc同时推流,如果放任两个设备使用相同的ssrc同时推流,那么服务器会解析码流异常,服务器是根据ssrc来区分是否为一路流的。

解决办法

LustFairy commented 4 years ago

如何将GB28181 RTP的包转为 rtmp?

xia-chu commented 4 years ago

你推流到ZLMediaKit的10000端口就行了。 剩下的事情请看文档:https://github.com/xiongziliang/ZLMediaKit/wiki/ZLMediaKit%E6%8E%A8%E6%B5%81%E6%B5%8B%E8%AF%95

cxssyl commented 3 years ago

ZLMediaKit里面的GB28181的是不是直接与摄像机端直接通信啊,刚刚学这个,想改成ZLMediaKit与信令服务器通信,不知道从哪下手

xia-chu commented 3 years ago

ZLMediaKit里面的GB28181的是不是直接与摄像机端直接通信啊,刚刚学这个,想改成ZLMediaKit与信令服务器通信,不知道从哪下手

请把这篇文章看完,文章最后面的两个推荐文章也看完。

cxssyl commented 3 years ago

ZLMediaKit里面的GB28181的是不是直接与摄像机端直接通信啊,刚刚学这个,想改成ZLMediaKit与信令服务器通信,不知道从哪下手

请把这篇文章看完,文章最后面的两个推荐文章也看完。

好的,谢谢

longqi0505 commented 3 years ago

你好,能说一下2和3方案改配置文件的哪个参数吗?

longqi0505 commented 3 years ago

问题如下:

图片

解答

表面原因:错误是由于在短时间让设备使用相同的ssrc推流了两次,这个ssrc如果已经被使用,那么就会绑定一个设备的ip和端口。

深层原因:如果让这个设备用相同的ssrc重新推流,那么设备的端口一般会变化,这边ZLMediaKit发现这个ssrc的源地址发送变化了,不知道到底是原设备离线了还是有两个设备在用相同的ssrc同时推流,如果放任两个设备使用相同的ssrc同时推流,那么服务器会解析码流异常,服务器是根据ssrc来区分是否为一路流的。

解决方法

你好,能说一下2和3方案改配置文件的哪个参数吗?

xia-chu commented 3 years ago

https://github.com/xia-chu/ZLMediaKit/blob/master/conf/config.ini#L204 https://github.com/xia-chu/ZLMediaKit/blob/master/conf/config.ini#L198 不推荐方案3,方案3有线程安全的风险,容易崩溃