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
14.58k stars 3.55k forks source link

RTP包头扩展信息添加 #4112

Closed wc4410 closed 1 month ago

wc4410 commented 1 month ago

Describe the purpose of this feature, and provide relevant information to describe this feature

您好,我们为了两个网络摄像头画面同步,在rtp头中添加了header extensions。然后用ffmpeg的转流命令推到zlm,在从zlm拉的rtsp流中 没有这个扩展信息。请问怎么能让zlm转发这个header extensions呢? 1736387881611 1736388282044

Is this feature used to improve project defects? If so, please describe the existing defects

不支持header extensions转发

Describe how you expect to achieve this feature and the final effect

支持header extensions转发

描述该功能的用处,可以提供相关资料描述该功能

您好,我们为了两个网络摄像头画面同步,在rtp头中添加了header extensions。然后用ffmpeg的转流命令推到zlm,在从zlm拉的rtsp流中 没有这个扩展信息。请问怎么能让zlm转发这个header extensions呢? 1736387881611 1736388282044

该功能是否用于改进项目缺陷,如果是,请描述现有缺陷

不支持header extensions转发

描述你期望实现该功能的方式和最终效果

支持header extensions转发

TRANS_BY_GITHUB_AI_ASSISTANT

xiongguangjie commented 1 month ago

这个如果rtsp.directProxy 设置为1 ,推拉流都是rtsp,会原样转发的(包含)rtp的ext 部分,其实同步你可以适应rtcp的sr来确定rtp的绝对时间戳

wc4410 commented 1 month ago

rtsp.directProxy 设置为1的情况刚才测试了,抓包看也是没有ext 部分。

xiongguangjie commented 1 month ago

rtsp.directProxy 设置为1的情况刚才测试了,抓包看也是没有ext 部分。

你是rtsp推流吗??

rtsp.directProxy 设置为1的情况刚才测试了,抓包看也是没有ext 部分。

你是rtsp推流吗??

TRANS_BY_GITHUB_AI_ASSISTANT

wc4410 commented 1 month ago

服务器是192.168.211.9,zlm部署在服务器上,在服务器上执行ffmpeg.exe -rtsp_transport tcp -i rtsp://192.168.211.212:8554/0 -an -vcodec copy -f rtsp rtsp://192.168.211.9:554/live/test。然后我在客户端上播放rtsp://192.168.211.9:554/live/test。在客户端上抓包看不到ext。是不是可能因为ffmpeg没处理这个ext部分啊?

xiongguangjie commented 1 month ago

服务器是192.168.211.9,zlm部署在服务器上,在服务器上执行ffmpeg.exe -rtsp_transport tcp -i rtsp://192.168.211.212:8554/0 -an -vcodec copy -f rtsp rtsp://192.168.211.9:554/live/test。然后我在客户端上播放rtsp://192.168.211.9:554/live/test。在客户端上抓包看不到ext。是不是可能因为ffmpeg没处理这个ext部分啊?

ffmpeg 会忽略这个ext的,你是rtsp://192.168.211.212:8554/0 里面有rtp的ext 吧,你可以适应ZLM的addstremaProxy 接口来拉流来测试

服务器是192.168.211.9,zlm部署在服务器上,在服务器上执行ffmpeg.exe -rtsp_transport tcp -i rtsp://192.168.211.212:8554/0 -an -vcodec copy -f rtsp rtsp://192.168.211.9:554/live/test。然后我在客户端上播放rtsp://192.168.211.9:554/live/test。在客户端上抓包看不到ext。是不是可能因为ffmpeg没处理这个ext部分啊?

ffmpeg 会忽略这个ext的,你是rtsp://192.168.211.212:8554/0 里面有rtp的ext 吧,你可以适应ZLM的addstremaProxy 接口来拉流来测试

TRANS_BY_GITHUB_AI_ASSISTANT

wc4410 commented 1 month ago

您好,用addstremaProxy接口 测试了,的确是有ext部分的,感谢。那我去看下ffmpeg怎么添加ext部分。

xiongguangjie commented 1 month ago

star 下本项目

wc4410 commented 1 month ago

已经star了。感谢