免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 10098 | 回复: 4
打印 上一主题 下一主题

关于RTSP 返回“461 Unsupported transport”的问题?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-09-02 14:16 |只看该作者 |倒序浏览


大家好,最近在研究VOD点播,遇到了如下问题,还请高手点拨点拨,不甚感激!
问题如下:
1、建立RTSP 连接,发送Request [truncated]: DESCRIBE rtsp://172.16.243.90:554/vod/000 ... id=XXXXX&vcdnid…………

2、服务器正常返回,Response: RTSP/1.0 200 OK\r\n

3、然后我提取信息后,继续发送SETUP rtsp://172.16.243.90:554/vod/00000000020000195445.mpg/trackID=1 RTSP/1.0
其中SETUP 消息中的Tansport我是这样写的:
Transport : MP2T/RTP/UDP;unicast;destination=172.18.68.61;client_port=8352-8353,MP2T/RTP/TCP;unicast;destination=172.18.68.61;interleaved=0-1,MP2T/UDP;unicast;destination=172.18.68.61;client_port=8352-8353,MP2T/TCP;unicast…………
并且我知道,服务器支持第一种传输方式

4、但是,服务器始终回复:Response: RTSP/1.0 461 Unsupported transport

但是我百思不得其解,明明是可以按照第一中方式传输的,为啥当我用PC 机模仿编程实现时就出现问题了??

还有一点:

上面的Transport中,“client_port=8352-8353” 端口号是怎样确定的??难道是自己任意填的

谢谢

论坛徽章:
0
2 [报告]
发表于 2010-09-03 10:21 |只看该作者
1. 试试去掉其他的transport方法,只保留UDP或者TCP中的一种。按照RTSP SPEC,client是可以提供多种transport给server,然后server pick一种,但是有些RTSP server实现的时候不支持这个。所以要client明确指定一种。

2. 8352-8353是随便填的,一般来说,linux下可以调用函数让系统自由分配端口,只要是没有使用过的就OK。server知道了端口之后,将会将数据发往我们给出的端口,一个RTP,一个RTCP

论坛徽章:
0
3 [报告]
发表于 2010-09-03 12:46 |只看该作者
你好 kartwall ,我刚才就你说的那方法尝试了下 ,但是 也是不行
你说那个端口号只要是空闲的就行,那就好 ,这个可以排除了

谢了

论坛徽章:
0
4 [报告]
发表于 2010-09-03 13:06 |只看该作者
是不是你的RTSP server不支持RTP阿?我以前试过Real公司的HelixServer,他有自己的实时传输协议实现。叫什么名字忘了。

论坛徽章:
0
5 [报告]
发表于 2010-09-03 14:18 |只看该作者
本帖最后由 永福1986 于 2010-09-03 14:21 编辑

你好,我看过 机顶盒 与 服务器 交互的 信息了 ,我 抓了下包 ,服务器 响应 setup 的消息 如下:
Transport: MP2T/RTP/UDP;unicast;destination=172.18.68.61;client_port=8356-8357;server_port=10552-10553;source=172.16.243.89

说明 他支持 RTP

我现在的问题是 :

我 用 PC 机作测试 ,用同样的 物理链路,是不是传输方法就不一样了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP