我正在尝试用java实现一个简单的RTSP服务器,它将使用android手机作为接收客户端。我已经在互联网上寻找答案,并多次返回这个网站。通过这一点,我发现JMF本身并不支持服务器端的RTSP,java必须使用NIO框架进行扩展,例如Netty,after,Mina等。我唯一的问题是,在搜索这些站点的文档后,我还没有找到任何如何实现RTSP的基本示例。
我的问题是:有没有人遇到过这个问题并解决了它,如果有,你能告诉我一些有用的源代码或文档吗?考虑到这一点,我已经看了这个网站上的每个相关帖子,并跟进了大多数链接,但没有任何用处。我对java并不陌生,我理解所有的流协议,但我对java中的流实现还是个新手。
谢谢
发布于 2012-03-02 16:45:14
很难回答你的问题...我只会给你一些基本的建议:-开始你的工作有一点POC,以获得对Java网络编程的信心-阅读Java World (Jetty/Tomcat/Jboss和其他几个)中提供的几个TCP/IP开源服务器实现的一些源代码-尝试认为你的体系结构符合Open Close原则(能够添加对新流编解码器等的支持)-尝试针对所需数量的并行用户会话,根据您的限制并使用合同中规定的网络带宽大小的服务器运行
客户端不会有太大的影响,RTSP似乎是一个类似REST的协议,所以你不必维护用户context...Just对传入请求的应答,非常简单的情况它的seems...The协议似乎不是很丰富(非常有限的命令集)...试着阅读一些不同客户端的源代码,我可以建议你去获取标准Linux播放器的源代码:
您可能会在这些产品中找到非常有用的代码。我猜已经实现了商业产品的人将无法向您提供反馈,所以请使用开源软件!
HTH Jerome
发布于 2012-03-05 18:33:47
我认为JMF包含RTP / RTCP类的原因是因为这些是媒体协议-即这些协议分别描述了如何通过IP流式传输媒体以及如何报告流质量。
RTSP是一种控制协议,它用于设置媒体流。因此,这是JMF管理的媒体流之上的一层。您可以在任何您喜欢的通道中交换RTSP消息,然后使用交换的信息来建立您的媒体流。
尝试在google代码项目中搜索RTSP实现,看起来有一些。
https://stackoverflow.com/questions/5405839
复制相似问题