java如何获得网络rtsp流高手指点下最好给一个demo小弟先谢过了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何获得网络rtsp流高手指点下最好给一个demo小弟先谢过了相关的知识,希望对你有一定的参考价值。

参考技术A 用javacv库
import org.bytedeco.javacv.FFmpegFrameGrabber;
import org.bytedeco.javacv.FrameGrabber.Exception;
方法里写:FFmpegFrameGrabber grabber = new FFmpegFrameGrabber( "视频流");
参考技术B File file = new File("D:/zj.txt");
InputStream is = new FileInputStream(file)
is就可以从该file里读取数据了,
int length = 0;
byte[] b = new byte[200];
while(-1 != ( length = is.read(b[200]) )

System.out.print(new String(b, 0, length));

is.close();本回答被提问者采纳

如何获得正确的客户端端口RTSP流?

我正在尝试使用RTSP协议使音频广播流正常工作。问题是我收到“ 200 ok”响应,即使音频没有被正确地流传输和下载。

我每次测试都发现一些奇怪的东西,unicast;client_port是不同的。例如,在VLC中,端口为:client_port=57140-57141,但是我再次通过Wireshark嗅探的时候,端口为:client_port=25551-25552因此,为了获得有效的客户端端口,我认为最好从响应正文中获取它。

但是,当我尝试在解决方案调试中从substring获得此rtsp response时,就没什么好刮的,就像我在vlc中测试时可以看到unicast;client_port

那么,如何获得正确的单播; client_port,以便我的流获得正确的参数?

         stringBuilder = new StringBuilder();
            host = new string[]  "SETUP rtsp://", uri.Host, ":554", uri.PathAndQuery, "/ID=", id0, " RTSP/1.0\r\n" ;
            stringBuilder.Append(string.Concat(host));
            stringBuilder.Append(string.Concat("CSeq: 42\r\n"));
            stringBuilder.Append("Transport: RTP/AVP/UDP;unicast;client_port=57142-57143\r\n");
            StreamUtils.WriteLine(bufferedNetStream, stringBuilder.ToString());
            this.Log("\r\n\r\nClient -> Server");
            this.Log(stringBuilder.ToString());
            rtspResponse = this.ReceiveResponse(bufferedNetStream);
            this.Log("Server -> Client");
            this.Log(rtspResponse.Lines);
答案

我知道了,但我不会分享,我不会告诉你,是的!

以上是关于java如何获得网络rtsp流高手指点下最好给一个demo小弟先谢过了的主要内容,如果未能解决你的问题,请参考以下文章

哪位高手指点一下如何在网站内添加一套论坛程序,比如Discuz? 最好能详细一点。

用java语言怎么修改linux下eth0网卡的ip地址,请高手指点下,最好有例子....

如何获取网络摄像头(监控摄像头)的rtsp的地址流

如何拉取公网RTSP/RTMP流在内网多客户端播放

如何在Linux下安装mysql,我第一次用linux系统,虚拟机下装的ubuntu10.0.4,请高手指点,最好能详细一点

cacti监控在windows2003上面安装怎安装,请高手指点有word文档最好