收看直播 发布直播 开发技术
2017-06-15 14:36
120 查看
现在直播大热。如何在零基础情况下,快速构建一个android直播客户端?主要需要哪些技术?
直播最重要的两个场景是收看直播和发布直播。
(1)收看直播
目前直播主要使用的协议是HLS和RTMP。
对于HLS,Google已经给出了成熟方案ExoPlayer。
关于ExoPlayer的一些资料:
https://developer.android.com/guide/topics/media/exoplayer.html
(android官方文档)
http://www.jianshu.com/p/3251a5189f56
http://ju.outofmemory.cn/entry/143633
简单地说,ExoPlayer是对android标准多媒体接口MediaPlayer、MediaCodec、MediaExtractor等的封装,更接近于一个产品化的播放器。开源项目中也有应用工程demo,可以快速上手。重点是,ExoPlayer支持HLS,只需要将HLS的服务器url传给ExoPlayer并启动播放即可。多媒体文件格式可以是m3u或m3u8。
对于RTMP,需要自主开发或者寻找一些开源库的支持,Google官方目前尚无解决方案。
目前IJKPlayer可以支持的比较全面
(2)发布直播
发布直播可以分为两部分:音视频录制、数据上传。
音视频录制:Android提供了标准接口AudioRecord和MediaRecorder,有大量的API和成熟代码范例可以参考。
数据上传:需要自主开发一些数据通道,一端作为output数据源给Recorder,另一端连接到服务器。
发布直播可以参考yasea,或者其他第三方开源
直播最重要的两个场景是收看直播和发布直播。
(1)收看直播
目前直播主要使用的协议是HLS和RTMP。
对于HLS,Google已经给出了成熟方案ExoPlayer。
关于ExoPlayer的一些资料:
https://developer.android.com/guide/topics/media/exoplayer.html
(android官方文档)
http://www.jianshu.com/p/3251a5189f56
http://ju.outofmemory.cn/entry/143633
简单地说,ExoPlayer是对android标准多媒体接口MediaPlayer、MediaCodec、MediaExtractor等的封装,更接近于一个产品化的播放器。开源项目中也有应用工程demo,可以快速上手。重点是,ExoPlayer支持HLS,只需要将HLS的服务器url传给ExoPlayer并启动播放即可。多媒体文件格式可以是m3u或m3u8。
对于RTMP,需要自主开发或者寻找一些开源库的支持,Google官方目前尚无解决方案。
目前IJKPlayer可以支持的比较全面
(2)发布直播
发布直播可以分为两部分:音视频录制、数据上传。
音视频录制:Android提供了标准接口AudioRecord和MediaRecorder,有大量的API和成熟代码范例可以参考。
数据上传:需要自主开发一些数据通道,一端作为output数据源给Recorder,另一端连接到服务器。
发布直播可以参考yasea,或者其他第三方开源
相关文章推荐
- 微软帝国---微软2008新一代企业级应用平台与开发技术发布大会参加感受 推荐
- [引用]微软2008平台与开发技术发布大会/英雄由此诞生 北京现场+照片
- iOS开发之移动直播技术秒开、直播优化经验、直播问题解析、直播知识解惑
- 手机视频直播系统开发技术难点分析
- 从无到有开发连麦直播技术点整理
- 直播技术知识库发布
- 微软2008新一代企业级应用平台与开发技术发布大会
- 已发布13集网站开发技术视频:http://blog.sina.com.cn/s/blog_67d27f340102vf7l.html
- 微软发布首个Win10开发工具技术预览版
- 【iOS开发】关于视频直播技术,你想要知道的都在这里了(一)采集
- 3月13日微软2008新一代企业级应用平台及开发技术发布大会
- Web开发技术中的一些小技巧_新闻发布系统
- Web开发技术中的一些小技巧_新闻发布系统
- 【S2第二学期-使用JSP/Servlet技术开发新闻发布系统】全书知识点总结
- 【Anychat音视频开发】视频直播系统的开发技术点
- 微软发布2008新一代企业级应用平台与开发技术
- 以平台为技术,以开源为手段,成果共享开发建筑行业应用——IDC发布《软件商成长路线图》白皮书的感想!
- 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - 4.0 最新发布版本 -下载使用说明
- Android IOS WebRTC 音视频开发总结(七六)-- 探讨直播低延迟低流量的粉丝连麦技术
- 作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的