前面介绍了Android端的编码、推流和播放
Android直播实现(一)Android端推流、播放

但是作为android程序员,写好了推流器和播放器,没有服务器来测试还是很头疼的,这里就介绍一下srs服务器的最简单的部署,如果有兴趣深入研究的可以去看看官方的wiki,因为是国内开发人员开源的,提供中文文档,讲解的很详细 https://github.com/ossrs/srs/wiki/v3_CN_Home

编译:

官方推荐在CentOs 6.x 和 Ubuntu12.x下编译,为了避免不必要的麻烦,我直接在Ububtu 12.04.5上进行编译和部署的

首先clone srs源码

git clone https://github.com/ossrs/srscd srs/trunk

然后进行编译

./configure --rtmp-hls --with-http-api --with-ffmpeg && make//--rtmp-hls:开启ssl/hls,其他功能都处于关闭状态。//--with-http-api:开启http api接口。//--with-ffmpeg:开启FFMPEG

这里只编译了基础功能,更详细的配置可以看:https://github.com/ossrs/srs/wiki/v1_CN_Build

编译完之后启动就可以了

//启动时也可以自定义去配置,制定一个conf文件就可以了,这里用现成的rtmp.conf来启动./objs/srs -c conf/rtmp.conf

如果没报错,这个时候服务器就已经启动了,把Android推流和播放端的ip地址,改成srs部署的ip就可以实现直播了(注意:如果是用虚拟机,要把网络模式换位桥接模式,让虚拟机拥有独立的ip,否则主系统可以访问到srs,但局域网内的手机是访问不到的

为了测试srs是否已经成功启动,可以先用ffmpeg 对一个本地视频文件进行推流,srs的/doc/下有测试的flv文件,直接用ffmpeg进行推流

//ip地址换成自己部署的ipsudo ./objs/ffmpeg/bin/ffmpeg -re -i ./doc/source.200kbps.768x320.flv \-vcodec copy \-f flv -y rtmp://192.168.31.126/srstest/teststream

不出意外的话在终端中就应该开始一帧一帧的推流了:

这样就推流成功了,然后用srs的在线播放器试一下能否观看
http://winlinvip.github.io/srs.release/trunk/research/players/srs_player.html

服务器启动以后,把Android推流和播放端的ip改为服务器的部署ip,就可以开始直播了

如果没有成功,可以利用srs在线播放器来帮助测试:
1.测试推流可以在Android上向服务器推流,用srs在线播放,播放成功推流就没问题了
2.测试播放可以像上边一样,先用ffmpeg推流一个视频文件,在Android端播放

更多相关文章

  1. NDK开发
  2. 【Android】ViewPager实现图片左右滑动播放及添加点击事件
  3. android 判断横竖屏
  4. Android横竖屏切换相关总结
  5. Android(安卓)UI开发第三十九篇――Tab界面实现汇总及比较
  6. android 播放rtsp协议流媒体
  7. Android自定义实现圆形播放进度条
  8. Android从代码到apk的编译过程
  9. Android(安卓)播放视频示例

随机推荐

  1. 手动安装android support library 23.0.1
  2. Android 更新UI 只能在主线程?
  3. android listview优化及其解释
  4. Android 使用 ALSA
  5. Android让Library中Manifest也包含进来
  6. Android取消EditText自动获取焦点行为
  7. Android 面试(七):Serializable 这么牛逼,Par
  8. android2.3编译的两个问题
  9. Android 之 下拉(Spinner) 组件示例
  10. Android 控件ImageView图片框