最近领导要求做一个安卓和pc端实时视频传输的demo。
之前自己写了一个演示demo,比较山寨,基于相机回调函数,一帧帧将图片压缩后传输后台显示。wifi下效果还不错,不过想想就不具备可用性,代码回头有时间发上来吧。
最近研究了一下rtsp协议的视频传输,发现其实还有点小复杂。
目前找到几个有用的东西分享给大家
安卓端一个开源项目spydroid,原理是将手机作为rtsp服务器,将视频压缩后向外发送。支持使用浏览器和vlc这类支持rtsp协议的播放器观看,很不错的东西,值得学习。
地址:http://spydroid-ipcamera.googlecode.com/svn/trunk/
我是做.net的,所以做一个客户端播放视频也比较麻烦,自己实现rtsp和播放功能的话,需要花费大量时间研究,而且还得保证稳定性。
目前开源项目vlc又是C++实现的,说明文档什么的较少,资料也很少有支持串流播放的。索性找到另一个开源项目VLC.net(话说真的感谢国外开源人士)
使用.net语言封装了libvlc,使得基于.net开发变得简单。
地址:http://sourceforge.net/projects/libvlcnet/
目前基于上述两部分内容准备采用一个投机取巧的思路。
设计一个server,然后封装一下spydroid,使得sypdroid客户端启动后,会自动向服务器注册。
然后写一个client,读取服务器spydroid客户端列表,然后实现点播功能。
这样直接就绕开了流媒体服务器整个的处理,还有rtsp协议的处理,是一个投机取巧的方法。
不过嘛,好处也不是没有,极大的减少了服务器的负载,使得多对多更加轻松。
不过还有待进一步实践。
以上
时间: 2024-10-06 05:28:32