当前位置: 首页 行业资讯

直播APP产品开发 技术解决方案

时间:2018/07/04 浏览量:4802

直播APP产品的基本架构已经很成熟,而我们开发者都知道,一个完整直播产品应该包含以下环节:推流端(采集、前处理、编码、推流)、服务端处理(转码、录制、截图、鉴黄)、播放器(拉流、解码、渲染)、互动系统(聊天室、礼物系统、赞)。


什么是推流端?


直播推流端即主播端,主要通过手机摄像头采集视频数据和麦克风采集音频数据,经过一系列前处理、编码、封装,然后推流到CDN进行分发。


流程可分为:


采集(视频、音频采集)→前处理(美颜、水印)→编码(H264/H265、硬编/软编)→推流(RTMP/RTSP/HLS)→分发(CDN)

直播APP产品开发 技术解决方案

服务端处理工作内容


要想适配各终端和平台,服务端还需要对流进行转码,如支持RTMP、HLS、FLV等格式拉流,支持一路转多路适配不同网络和分辨率的终端设备。


转码工作(截图、录制、水印,建议用服务商的,自己搭建的成本太高)→鉴黄(曾不少主播为吸引粉丝不惜出格表演,各种不雅低俗,这一类涉及犯罪,都需要制止,人工成本太高,可直接利用技术实现)。


播放器工作内容


在播放器端如何做到秒开,直播过程中保证画面和声音清晰度的同时,稳定、流程、无卡顿的直播流量,这些工作都需要播放器端配合服务端来做优化,做到精确调度。这里便是涉及到“拉流、解码、渲染”的工作。


互动系统内容


常见的交互有聊天室(弹幕)、点赞、打赏和礼物等,交互系统涉及消息的实时性和互动性,在技术实现上大多是使用IM的功能来实现的。