Android 多个Libstreaming流仅识别为第一个RTSP客户端的会话
我正在使用Live555作为RTSP客户端从androidLibStreamingmajokernelpanic服务器获取RTSP H264视频流。我面临的问题是显示来自上述类型的android RTSP服务器的多个视频流,这些服务器由不同的RTSP客户端处理。问题很明显,如果使用VLC,也可以通过Live555获取RTSP H264帧Android 多个Libstreaming流仅识别为第一个RTSP客户端的会话,android,session,video-streaming,rtsp,live555,Android,Session,Video Streaming,Rtsp,Live555,我正在使用Live555作为RTSP客户端从androidLibStreamingmajokernelpanic服务器获取RTSP H264视频流。我面临的问题是显示来自上述类型的android RTSP服务器的多个视频流,这些服务器由不同的RTSP客户端处理。问题很明显,如果使用VLC,也可以通过Live555获取RTSP H264帧 第一个VLC(RTSP客户端)正确显示视频 其他VLC(RTSP客户端)也不显示任何内容,只显示其帧 显示在第一个VLC视频窗口中 此问题发生在指定的RTSP服
else if (request.method.equalsIgnoreCase("PLAY")) {
String requestAttributes = "RTP-Info: ";
if (mSession.trackExists(0)) requestAttributes += "url=rtsp://"+mClient.getLocalAddress().getHostAddress()+":"+mClient.getLocalPort()+"/trackID="+0+";seq=0,";
if (mSession.trackExists(1)) requestAttributes += "url=rtsp://"+mClient.getLocalAddress().getHostAddress()+":"+mClient.getLocalPort()+"/trackID="+1+";seq=0,";
requestAttributes = requestAttributes.substring(0, requestAttributes.length()-1)
+ "\r\nSession: 1185d20035702ca\r\n";
游戏中的请求
起初,我以为我可以在“session:”之后将硬编码的session ID(1185d20035702ca)设置为动态,然后问题就解决了,但在我更改后,问题仍然存在
Wireshark验证会话id的成功更改
欢迎任何相关建议。谢谢。libstreaming硬编码了视频的目标端口
video.setDestinationPorts(5006);
您只需要将其变为变量以支持多个实例
希望能帮助你解决你的问题
video.setDestinationPorts(5006);