android推送实时视频流到darwin流媒体服务器的思路

最近在弄android推送实时视频流到darwin流媒体服务器,现在的思路是在android端实现rtsp client,推送实时视频流到darwin,并在movies文件夹下生成sdp文件,vlc通过请求rtsp://darwin流媒体服务器ip:554/test.sdp的方式实现实时播放。

         大致有3种思路:

         第1种:移植live555到android上,借助live555里的代码:从本地读取mpg文件推送到darwin,改成从实时流推送到darwin服务器,大致思路是派生一个h264videoSource,从android录制获取流,通过pipe管道发送流,把该流推送到darwin。网上有个https://github.com/boltonli/ohbee/tree/master/android/streamer这个例子,但自己没测试通过,可以借鉴其实现思路。live555个人建议移植新版,可以参考文章 http://blog.csdn.net/baby313/article/details/7289489

        第2种:网上有个rtspcamera的开源项目,源代码地址 :https://github.com/spex66/RTSP-Camera-for-Android ,可以学学该代码。个人推荐的是 由代码引申的这个帖子 https://github.com/spex66/RTSP-Camera-for-Android/issues/1 ,里面有人成功过实现把h264流推送到darwin流媒体服务器。个人尝试发现,这个代码也存在一些问题,表现在sdp文件生成的格式不对,通过修改代码SDP文件格式的形式,能出现效果,但延时很严重。

        第3种:就是我以前研究的spydroid开源项目了,项目主页为http://code.google.com/p/spydroid-ipcamera/,可以在此https://github.com/fyhertz/spydroid-ipcamera下载最新源代码。我推荐的是这篇帖子http://code.google.com/p/spydroid-ipcamera/issues/detail?id=49&q=dss ,据说可以把h264实时流推送到darwin,但自己测试没通过。

        其实第2种和第3种帖子的作者都是同一个,思路很好,可以供自己借鉴学习。


          这段时间我才发现,使用rtsp协议实现音视频多路上传多路观看也有不错的解决方案,可能是我当初思维短路了,一直纠结服务器端口怎么处理的问题上,现在想想这不是问题。android端:实现rtsp client,以sdp文件名为标识,区分不同的流,把该流推送到darwin流媒体服务器,darwin流媒体服务器实现转播,并把接收的流通过ffmpeg转存为文件,其实可以参考vlc保存串流为文件的做法,vlc就可以通过请求darwin流媒体服务器实现多路观看的效果。


          这些只是自己的一些初步思路,能不能行得通还待验证。

      

后记:在android推送实时视频流到darwin流媒体服务器 的过程中,需要解决防火墙的问题,毕竟在企业应用中,防火墙肯定说开启的。越过防火墙,按照官方的说法,在编译darwin源代码的时候添加代理服务器参数,并设置代理服务器。这个只是官方的说法,能不能真正解决没有尝试过。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: RTSP(Real Time Streaming Protocol)流媒体服务器搭建需要遵循以下步骤: 1. 选择合适的服务器软件:有一些流行的RTSP流媒体服务器软件可供选择,例如Live555、Darwin Streaming Server等。根据需求和个人偏好选择适合的软件。 2. 下载和安装服务器软件:根据所选择的服务器软件,访问其官方网站,下载最新的稳定版本,并按照官方提供的安装指南进行安装。 3. 配置服务器软件:安装完成后,需要对服务器软件进行配置。配置文件通常包含服务器的IP地址和端口号、流媒体存储位置、流媒体格式、访问控制等信息。根据具体需求进行相应的配置。 4. 启动服务器:配置完成后,启动服务器软件。在启动过程中,服务器会监听指定的端口,并等待客户端连接。 5. 使用RTSP协议推送流媒体:为了在服务器推送流媒体,需要使用RTSP协议。可以使用RTSP客户端软件,连接到服务器推送本地存储的流媒体内容。 6. 播放流媒体:完成流媒体推送后,可以使用支持RTSP协议的流媒体播放器来播放流媒体内容。在播放器中输入服务器的IP地址和端口号,然后可以选择所需的流媒体进行播放。 需要注意的是,RTSP流媒体服务器搭建涉及到一些网络和服务器技术,需要有一定的专业知识和经验。在操作过程中,如果遇到问题,可以参考官方文档、论坛和技术支持来获取帮助。 ### 回答2: RTSP(Real-Time Streaming Protocol)是一种建立在TCP/IP协议上的用于实时流媒体传输的协议。搭建RTSP流媒体服务器是为了实现在网络上实时传输音频或视频流的目的。 要搭建RTSP流媒体服务器,首先需要选取合适的服务器软件,常见的有Live555、Wowza、VLC等。其中,Live555是一个开源的、跨平台的RTSP服务器,搭建起来相对简单,下面以Live555为例进行介绍: 1. 下载并安装Live555服务器软件。 2. 配置服务器参数:在配置文件中设置服务器的监听地址和端口、日志文件路径、支持的流媒体文件格式等。 3. 创建音频或视频流:通过配置文件或命令行输入源文件地址,服务器会自动将源文件转化为流媒体格式。 4. 启动服务器:通过命令行或启动脚本启动Live555服务器。 5. 客户端播放:使用支持RTSP协议的播放器,输入服务器的地址和端口,即可实时播放音频或视频流。 此外,还可以根据需求进行进一步的配置和优化,例如配置服务器的安全认证、实现视频录制功能、设置并发连接数等。RTSP流媒体服务器搭建的成功与否,除了软件的选择和配置外,还需要保证网络的稳定和带宽的充足,以确保音视频流实时性和流畅性。 总的来说,搭建RTSP流媒体服务器需要步骤如上所述,根据软件的不同可能会有细微差别,但核心的原理和步骤是相似的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值