每日分享 – 直播APP开发中直播技术的体系结构问题

在直播APP开发过程中,有许多注意事项。但是,我们不能专注于客户端如何在客户端的推拉流上收集音频数据或相关内容,而是应该首先了解直播APP开发都有哪些功能以及了解直播技术的体系结构。这样,更容易理解直播技术的操作过程。

一、直播APP开发主要功能

用户端:

1、直播大厅为用户提供视频播放操作和聊天界面信息,以及相关的发送消息、礼物、彩信等,即会员可以与主播进行语音私聊;

2、聊吧:主要是手机互动的聊天,包括发送消息、发送礼物、发送短信、私聊功能,即会员可以与主播进行语音私聊等;

3、视频回放功能:告别错过的遗憾,用户不论何时何地想看就看,不会错过任何精彩瞬间;4、社区:社区是会员交流的平台,在此管理者可以发布最新新闻,会员可以发布帖子;

5、设置:房间视频的设置:关闭视频、关闭声音、接收消息、声音提示、震动提示;

6、分享功能:用户可以将房间号分享到微信、QQ、微博等其他平台上,让更多的人关注;7、更多:里面包括设置、我的资料、反馈意见、使用说明、更新版本几块内容。

后台管理

1、用户描述:用户群体主要包括游客、会员、VIP会员等;

2、游客:权限,可以浏览所有开放的空间,可以浏览房间内的在线会员;

3、会员:需要注册,注册后能获得的权限包括可以浏览所有开放的房间;可以在房间内发送信息、彩信、送出礼物、浏览在线会员;

4、管理模块:用户最高管理者,即最高管理者可以添加下一级管理者,针对不同管理者设置不同的管理模块;

5、公告模块:针对不同的房间发布,最高管理者可以对所有房间发布,代理商可对其名下的房间发布,主播可对其房间发布;

6、房间收益统计:记录每个房间的日收益,包括礼物收益和VIP房间手里,并具有数据导出功能;

二、直播APP开发中直播技术的体系结构问题

1、简单的音频和视频直播结构  

这种架构相对简单。您可以使用现有的CDN,然后构建服务器并完成服务层。此时,您可以先将共享的音频和视频指令发送到此服务器(我们可以将其称为信令服务器),然后通过摄像机收集相关的音频和视频数据,然后对音频和视频流进行编码并将其推送到通过RTMP协议进行CDN。接收端将指令发送到信令服务器,以获取共享的音频和视频流的名称,然后使用该名称从CDN中提取音频和视频流,并在解码后将其呈现在屏幕上。 

2、实时交互式音频和视频直播架构  

与上述直播结构相比,这种直播结构较为复杂。它们之间的主要区别是添加了自己的网络。客户端通过UDP传输数据,可以大大减少网络和CDN结构引起的音频和视频延迟。共享音频和视频时,它们会通过UDP协议上载到各自的网络服务器。此时,如果其他人想参与实时交互,则参与者也将通过UDP连接到该网络以实现实时交互的效果。其中,在将音频和视频数据上传到其自己的网络之后,需要特殊服务才能将数据流转换为RTMP流并将其推送到CDN。这样,大多数不参与实时交互的用户都可以直接在CDN上获取音频和视频数据。这种体系结构的优势在于它可以满足实时交互的需求,也可以满足仅看到交互的大量用户的需求。

3、解决高负载和并发问题  

为了解决实时交互负载过大,并发性高的问题,有必要添加资源管理服务器来实时监控每个服务的资源。在共享音频和视频时,资源管理器可以为用户分配最佳服务器,并且可以根据需要横向扩展服务器的资源。为了提高其执行效率,服务器通常使用C或C ++编写。  

总体而言,实时互动直播已经成为直播的主要发展趋势。在现场直播的开发过程中,不仅需要了解客户端的采集,推拉流程等问题,还需要从现场直播技术的体系结构入手,详细了解现场直播过程中的相关问题。在了解了实时直播APP开发架构问题之后,相对容易理解有关实时直播其他方面的知识。

正文完