请选择 进入手机版 | 继续访问电脑版

萧山人自己的网上社区-北干听风

 找回密码
 立即注册

QQ登录

只需一步,快速开始

快捷登录

搜索
查看: 37000|回复: 15

直播系统开发需要哪些技术开发支持?

[复制链接]
     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
发表于 2017-10-24 14:42:32 | 显示全部楼层 |阅读模式
现如今,直播已经成为了人们生活中必不可少的产品了,不仅仅通过实时直播带来的娱乐和欢乐,还有更重要的是它带来的实时信息分享,由此直播也带来了非常大的商业价值和潜力。不仅是现在的秀场直播,现在慢慢兴起的教育、电商、金融等,都在一步步的跨入直播领域,可见直播的领域应该还存在更大的潜力等待我们去挖掘。

那么现在想要迈进直播这个“槛”的人也越来越多,却又正是因为这个“槛”而无从下手,很多人有好的想法或项目却被直播前的这个门槛给拦住了,那么,直播技术的开发到底需要哪些技术呢?需要了解哪些方面的只是呢?我就给大家来讲解一下:

首先开发实时直播时需要了解哪些知识:
摄像头采集;
1、音视频编解码;
2、流媒体协议;
3、音视频流推送到流媒体服务器;
4、流媒体网络分发;
5、用户播放器;
6、音视频同步;
7、网络延迟自适应;
8、需要录制,多种视频文件的格式和封装;
9、语言:C、C++、html、php、mysql......
10、开发环境:嵌入式,Linux,Windows,Web......

还有就是视频播放解决方案(卡顿、延迟):
1、CDN 加速;
2、自己架服务器;
3、用别人的云服务。

用 CDN 加速,可以尽量减少延迟。目前业内水准来看,视频延迟都在 3-6 秒之间。也就是在视频直播时,你看到的是几秒以前的画面。
自己架服务器,如果你部署的数据中心不够多,那么遇上跨网、跨省的传输,还是得用 CDN 加速。那么为了尽可能降低延迟,你就需要在全国各省市都部署数据中心,来解决跨网、跨省的传输。这种解决方案,相较 CDN,非常昂贵。
用云服务的话,就是别人把服务器给你架好了,你只要傻瓜式的用就行了。为防止广告嫌疑,有关实时直播云,现在有很多服务商提供这一块,具体情况请自行了解哦。
当然,不管用哪种方式,请综合权衡利弊,找到适合自已的方案就是最好的方案。

开发视频直播的流程有哪些:
1、采集;
2、前期处理;
3、编码;
4、传输;
5、解码;
6、渲染。

采集:iOS 是比较简单的,Android 则要做些机型适配工作(声网 Agora.io 目前适配了 4000+Android 机型)。PC 最麻烦各种奇葩摄像头驱动,出了问题特别不好处理,建议放弃 PC 只支持手机主播,目前几个新进的直播平台都是这样的。

前期处理:现在直播美颜已经是标配了,80%的主播没有美颜根本没法看。美颜算法需要懂图像处理算法的人,没有好的开源实现,要自己参考论文去研究。算法设计好了还要优化,无论你打算用 CPU 还是 GPU 优化,算法优化本身也需要专业知识支持。GPU 虽然性能好,但是也是有功耗的。GPU 占用太高会导致手机发烫,而手机发烫会导致摄像头采集掉帧,iPhone6 尤其明显。因为 iPhone6 的 CPU 和前置摄像头很近,在算法开发、算法优化、效果平衡上需要大量的开发调试工作。而这一切都是需要经验支撑。

编码:如果你要上 720p,肯定要采用硬编码。软编码 720p 完全没希望,硬件编码不灵活。兼容性也有问题。如何适应纷繁复杂的网络和纷繁复杂的上下行设备?安卓和芯片的坑,开发过的人都知道。那有人问,要求不高,上软编码低分辨率 360p 行不行?就算上低分辨率,软编码还是会让 CPU 发烫,CPU 过热烫到摄像头,长期发烫不仅直接反应是费电。既然是手机直播,插着电源和充电器实在说不过去吧。还有,CPU 发烫会降频,怎么办?这还是只说性能方面。和前处理只影响图像质量和功耗不同,视频编解码技术还关联成本计算和网络对抗。考虑性能、功耗、成本、网络这四个之后你编码的码率、帧率、分辨率。软硬件开发该如何选择?

传输:自己做不现实,交给第三方服务商吧。

解码:如果你用硬解码,一定要做容错处理,一定要做适配。突然一个 crash 导致手机重启不好吧。安卓的硬解码,不说了。如果你加了网络目前手机的硬解码还不一定支撑用软解码,功耗发热的问题又来了。

渲染:为什么手机明明解码出好多帧数据。就是渲染不出来。为什么画面就是不同步。

以上是媒体模块,还有信令控制,登录、鉴权、权限管理、状态管理等等,各种应用服务,消息推送,聊天,礼物系统,支付系统,运营支持系统,统计系统等。后台还有数据库,缓存,分布式文件存储,消息队列,运维系统等。

以上技术要点的小结,确实能说明开发一个能用于生产环境的实时视频直播平台确非易事,跟 IM 里传统的实时音视频一样,这样的技术都是音视频编解码+网络传输技术的综合应用体,没有一定的技术积累,确实有很多坎需要迈过去,所以如果你是自己开发的话真的是并非易事,毕竟在直播开发上每一个技术都是非常的难,自己开发起来不仅要花费大量的时间和资金,而且过程中遇到的很多问题都非常棘手,所以最好找一家专门做直播系统开发的公司,比如像市面上名气实力比较大的美丽播直播系统开发商(www.meilibo.net),团队拥有扎实的直播开发经验,直播产品具有自主知识产权,已成功为国内外客户搭建上线近百家直播平台。所以选择也要选择好的,美丽播会给你强大的技术支持,我相信美丽播会解决你在直播上的一切问题。

回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-10-24 15:02:52 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-9 11:40:50 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-10 16:10:13 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-13 12:15:17 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-16 11:55:44 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-20 14:54:19 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-11-23 11:51:42 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-12-1 16:14:43 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-12-11 14:45:16 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-12-13 14:24:14 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2017-12-19 15:07:06 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2018-1-8 17:48:51 | 显示全部楼层
回复 支持 反对

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2018-1-17 11:29:48 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2018-3-5 11:34:27 | 显示全部楼层
回复

使用道具 举报

     

1

主题

17

帖子

85

贝币

无业游民

Rank: 1

积分
98
 楼主| 发表于 2018-11-1 15:24:36 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|北干听风 ( 浙ICP备05002451

GMT+8, 2019-2-19 16:47 , Processed in 0.139098 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表