我有一个 IP 摄像机,它可以通过 RTSP 为我提供媒体数据。
我开发了一个用于获取媒体数据的应用程序。
我使用 C++ 和 Qt3。
我创建套接字。在端口 = 554 上将其连接到我的设备 IP。
我先查询
设置 rtsp://192.168.4.160/ufirststream RTSP/1.0\r\n CSeq: 1\r\n 传输:RTP/AVP;client_port=554\r\n\r\n
并得到答案:
RTSP/1.0 200 正常 CSeq:1 日期:2012 年 3 月 24 日星期六 17:24:59 GMT 传输:RTP/AVP;单播;目的地=192.168.4.186;源=192.168.4.160;客户端端口=0-1;服务器端口=2000-2001 会话:413F4DDB
我将其解析为 gettin 会话值,然后执行下一个查询:
播放 rtsp://192.168.4.160/ufirststream RTSP/1.0 CSeq:1 会话:413F4DDB
服务器说:
RTSP/1.0 200 正常 CSeq:1 日期:2012 年 3 月 24 日星期六 17:25:02 GMT 会话:413F4DDB RTP-Info: url=rtsp://192.168.4.160/ufirststream/track1;seq=6716;rtptime=406936711
以及如何获取媒体数据???我认为 PLAY 方法让服务器给我一个流,但它只给我一个 rtsp 和其他信息的 url ......
我需要来自相机的二进制流,你能为我的下一步提供建议吗??