Android 将播放我从 rtp 服务器提供的音频和视频(AAC、h263),但是当我提供 AAC/H264 流时,我只得到音频而没有视频。
在工作场景中,Android 为两个轨道 id 发出 SETUP 命令,但 H264,android 从不为第二个 Video 轨道发出 SETUP 命令。
我的 SDP 文件是否正确?我认为 profile-id 和 sprops 是正确的,因为它们是直接从 H264 编码器的 sps 和 pps NAL 复制而来的。视频是baseline@2.1
Android 是否无法响应或识别第二首曲目?
如果我使用 live555 单独流式传输视频文件,它可以正常工作,并且我已经将它生成的 SDP 文件与我自己的文件进行了比较。
有任何想法吗?谢谢
H264/AAC SDP 文件:
v=0
o=xxx IN IP4 192.168.13.43
s=live.3gp
u=http:///
e=admin@
c=IN IP4 0.0.0.0
b=AS:187
t=0 0
a=control:rtsp://192.168.13.43:555/live.3gp
a=isma-compliance:1,1.0,1
a=range:npt=0- 2630.336000
m=audio 0 RTP/AVP 97
a=rtpmap:97 MP4A-LATM/44100/2
a=control:rtsp://192.168.13.43:555/live.3gp/trackID=1
a=fmtp:97 profile-level-id=41; cpresent=0; config=400024203fc0
m=video 0 RTP/AVP 96
a=rtpmap:96 H264/90000
a=control:rtsp://192.168.13.43:555/live.3gp/trackID=2
a=cliprect:0,0,256,432
a=framesize:96 432-256
a=fmtp:96 packetization-mode=1; profile-level-id=42C015;sprop-parameter- sets=Njc0MkMwMTVGNDBEODQzNjAyMjAwMDAwMDMwMDIwMDAwMDAzMDNDMUUzMDY1NA==,NjhDRTA0NzI=
由 live555 为在 Android 上显示的相同视频文件生成的 SDP 文件:
v=0
o=- 1303401850159891 1 IN IP4 192.168.13.58
s=H.264 Video, streamed by the LIVE555 Media Server
i=live.3g
t=0 0
a=tool:LIVE555 Streaming Media v2011.01.19
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:H.264 Video, streamed by the LIVE555 Media Server
a=x-qt-text-inf:baseCasterCap.264
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:500
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=42C015;sprop-parameter-sets=Z0LAFfQNhDYCIAAAAwAgAAADA8HjBlQ=,aM4Ecg==
a=control:track1