李国帅 取自日志
背景
旧的url
rtsp://192.168.10.111/H.264/ch1/sub/av_stream
rtsp://192.168.10.151/H.264/ch1/main/av_stream
rtsp://192.168.10.111:554/PSIA/streaming/channels/101
rtsp://192.168.10.111:554/streaming/channels/101
admin 12345
新的url
rtsp://192.168.17.249:554/Streaming/Channels/101?transportmode=unicast /*表示以单播方式时取通道1的主码流*/
rtsp://192.0.1.100:554/Streaming/Channels/102/*表示以单播方式取通道1的子码流*/
rtsp://192.0.1.100:554/Streaming/Channels/102?transportmode=multicast /*表示以多播方式取通道1的子码流*/
问题1:
海康dvr第一路流的播放主码流有问题,子码流没问题,第2-4路流没问题。sprop-parameter-sets不正确或者没有。
可能是:1通道不支持主码流播放,子码流可以播。
问题2:图像不完整
通过调试,发现111这台dvr第一路主码流的sps解析出来之后704*288,不过从网页上看,设置的是704*576。
放入解码器播放图像不完整。但并不总是如此。
问题3:tcp和rtcp同时使用
更多的原因是使用tcp模式连接,但是还需要rtcp,而apple的rtsp库如果使用tcp连接是不需要rtcp的。
但是使用udp还是出现了问题,音频数据一直发送,但是视频数据发一点就不再发送。
附:海康rtsp中的配置信息
DESCRIBE rtsp://192.168.10.243:554/PSIA/streaming/channels/102 RTSP/1.0\\r\\n
RTSP/1.0 200 OK
CSeq: 0
Content-Type: application/sdp
Content-Length: 521
v=0
o=- 1347037163964609 1347037163964609 IN IP4 192.168.10.243
s=Media Presentation
e=NONE
b=AS:5100
t=0 0
a=control:*
m=video 0 RTP/AVP 96
b=AS:5000
a=control:trackID=1
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=420029; packetization-mode=1; sprop-parameter-sets=Z0KAHoiLUFgJNCAAAOEAACvyAIA=,aM44gA==
m=audio 0 RTP/AVP 0
b=AS:50
a=control:trackID=2
a=rtpmap:0 PCMU/8000
a=Media_header:MEDIAINFO=494D4B48010100000400010010710110401F000000FA000000000000000000000000000000000000;
a=appversion:1.0
RTSP/1.0 200 OK
CSeq: 0
Content-Type: application/sdp
Content-Length: 456
可能有些设备又是这样的
v=0
o=- 1109162014219182 0 IN IP4 0.0.0.0
s=HIK Media Server
i=HIK Media Server Session Description : standard
e=NONE
c=IN IP4 0.0.0.0
t=0 0
a=control:*
a=range:npt=0.0-
m=video 0 RTP/AVP 96
i=Video media
a=control:trackID=1
a=rtpmap:96 H264/90000
a=fmtp:96 profile-level-id=4D0014;packetization-mode=0;sprop-parameter-sets=DG/Ir/:14194:0:99999:7:::
guest:!:15302:0:99999:7:::
h,
//上面一个参数可能只有 a=fmtp:96 profile-level-id=4D0014;packetization-mode=0
m=audio 0 RTP/AVP 0
i=Audio media
a=control:trackID=2
a=rtpmap:0 PCMU/8000
a=Media_header:MEDIAINFO=494D4B48010100000400000110710110401F000000FA000000000000000000000000000000000000;
a=appversion:1.0