UDP传输H264编码流媒体视频只在公网上无法接收。

西厂程序员 2016-03-24 11:13:32
整个系统是:内网端树莓派采集480p视频并作H264编码,然后传输到阿里云公网服务器(峰值带宽1M),最后转发到内网客户端解码播放。
--------------------------------------------------------------------
现在是服务器放在局域网正常流畅播放,而放在公网上客户端一点反应都没有,如果丢包的话不会都丢了吧!
--------------------------------------------------------------------
通过测试,在公网上时,上传到服务器的数据以及再转发到播放客户端,以及转发到客户端的地址和端口绑定都是正确的!也就是说就相当于服务器转发到播放客户端时,虽然的确按照正确的地址和端口转发出去了,然而并没有成功到达目的地!
--------------------------------------------------------------------
同时已经用小程序测试,当向公网发送字符数据时,公网服务器能正常接收并把接收的数据再转发回去!也就是客户端和服务器已经是是可以双向打通的!
-------------------------------------------------------------------
考虑是带宽影响,但是不会所有的数据都丢失吧,监控客户端一点反映都没有!系统在局域网正常运行时,播放客户端接收时的带宽占用是150~250bps。查看系统在公网运行,公网服务器的上行带宽(也就是转发到播放客户端时)的宽带占用是100~150bps
-------------------------------------------------------------------
各位大神,求解决啊!实在想不到其他的问题所在了,这连个星期各种参数的测试和记录,也没发现问题出在哪里,简直崩溃了!
-------------------------------------------------------------------
...全文
953 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jieting4986 2016-11-29
  • 打赏
  • 举报
回复
你好博主,请问安卓客户端的demo可以参考一下吗?
西厂程序员 2016-04-05
  • 打赏
  • 举报
回复
引用 6 楼 sharkka 的回复:
看看打包后,udp的mtu设置的是否合理, 同时抓包看看,公网不太清楚还涉及哪些环节
我已经解决了,原因是接收客户端请求用的端口和和转发视频的端口不一致!导致学校内网无法识别为已经“NAT打洞”,所以被拦截了!也就是“端口受限NAT”导致的!
百灵工作室 2016-03-30
  • 打赏
  • 举报
回复
看看打包后,udp的mtu设置的是否合理, 同时抓包看看,公网不太清楚还涉及哪些环节
rightorwrong 2016-03-29
  • 打赏
  • 举报
回复
你可以使用抓包工具确定客户端是否接收到了数据 使用公网服务器时,若客户端的命令端口和流数据采用的是同一个端口,不需要打通 若客户端采用了新的端口接受流数据,则需要用流socket先连接下公网服务器,然后才能收到数据
rightorwrong 2016-03-29
  • 打赏
  • 举报
回复
引用 3 楼 jiess 的回复:
呵。这版块没有人气。
流媒体版块比较冷清,这个板块有几个有经验的,有时不一定能碰上
西厂程序员 2016-03-24
  • 打赏
  • 举报
回复
更新:最近把视频客户端也放在了公网平台上运行,带宽都是1M,发现也能运行!
西厂程序员 2016-03-24
  • 打赏
  • 举报
回复
引用 1 楼 u011552404 的回复:
更新:最近把视频客户端也放在了公网平台上运行,带宽都是1M,发现也能运行!
就是正常接收画面!
红牛哥110 2016-03-24
  • 打赏
  • 举报
回复
呵。这版块没有人气。

2,542

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧