娱乐社交行业连麦直播的实现方案

简介: 如何结合阿里云的音视频通信服务和直播服务实现连麦直播。

随着娱乐直播行业的发展,平台玩法越来越多。其中秀场连麦直播玩法人气较高,一方面改变了主播与观众对立的体验,另一方面拉近了主播与观众的距离,对于拉动主播收入平台营收起到了十分重要的作用。在此衍生出来的如PK,付费问答,语音连麦等玩法成为各大直播平台的标配。
本篇文章将介绍如何结合阿里云的音视频通信服务和直播服务实现连麦直播。

方案前提

  1. 已经开通了阿里云的直播服务并且配置了直播域名,可以完成基础的rtmp直播功能
  2. 已经开通了阿里云的音视频通信服务,可以完成多个用户的音视频通话

业务流程

下图所展示的基于音视频通信 RTC 和直播服务实现一次连麦直播的调用流程,其中灰色部分为您的自建开发程序或AppServer服务,橙色是阿里云的音视频通信 RTC 和直播服务。

image.png

  1. 主播调用RTC接口加入频道
  2. AppServer调用旁路直播接口进行直播
  3. 观众调用RTC接口加入和主播同一个频道

使用步骤

如何进行主播、观众加入RTC频道,直播如何生成直播地址已经方案前提里已经说明了,本章节就不会说明这两个环节的实现方法。主要描述旁路直播相关功能的实现

  1. 主播加入RTC频道12345后,AppServer按照直播地址的生成方法生成一个直播地址,比如:rtmp://push.rtctest.cn/12345/12345?auth_key=1577967820-0-0-f9a7e4a47feddbe7bc343cbfb559d552
  2. AppServer调用StartMPUTask接口配置RTC的旁路直播参数:https://help.aliyun.com/document_detail/93183.html?spm=a2c4g.11186623.6.628.497b5eaabJ9t0T
    示例代码如下:
from aliyunsdkcore.client import AcsClient
from aliyunsdkrtc.request.v20180111 import StartMPUTaskRequest
import aliyunsdkcore.request as rtc_request
import aliyunsdkcore.http.protocol_type as rtc_protocol_type

accessKeyID = 'xxx'
accessKeySecret = 'xxx'
region_id = 'cn-hangzhou'
app_id = 'xxx'
channel_id = '12345'

def StartMPU(client):
    request = StartMPUTaskRequest.StartMPUTaskRequest()
    request.set_AppId(app_id)
    request.set_ChannelId(channel_id)
    request.set_TaskId('abc')
    request.set_TaskProfile('2IN_720P')
    request.set_MediaEncode(1)
    request.set_BackgroundColor(0)
    LayoutIds = []
    LayoutIds.append(1)
    LayoutIds.append(2)
    request.set_LayoutIdss(LayoutIds)
    request.set_StreamURL('rtmp://push.rtctest.cn/1/1?auth_key=1577967820-0-0-f9a7e4a47feddbe7bc343cbfb559d552')
    rtc_request.set_default_protocol_type(rtc_protocol_type.HTTP)
    response = client.do_action_with_exception(request)
    return response

client = AcsClient(accessKeyID, accessKeySecret, region_id)

print StartMPU
  1. 观看直播的观众通过直播的播流地址观看主播的直播:rtmp://play.rtctest.cn/12345/12345?auth_key=1577967820-0-0-f9a7e4a47feddbe7bc343cbfb559d552
    |center|250x200
  2. 连麦观众也加入RTC频道12345
  3. 此时直播观众看到的画面就是主播和连麦观众两个人的直播内容了
    |center|250x200

注意事项

  1. 主播和连麦的观众必须加入同一个RTC频道
  2. 同一个StreamURL(直播推流地址)无法在不同的旁路直播任务中同时使用
  3. 旁路直播任务停止10S之内,无法使用同一个StreamURL(直播推流地址)再开始新的任务
相关实践学习
搭建简易多人在线视频会议系统
本场景将介绍使用音视频服务单间一个简易的视频会议室。
目录
相关文章
赛事短视频+体育直播,网络赛事直播系统开发新玩法
短视频平台的兴起为体育赛事带来了一场全新的变革。这种“打开方式”赛事直播不仅在内容风格和聚合方式上展现出优势。如下参考东莞梦幻网络科技的《体育直播系统源码》为短视频观赛提供了全新的解决方案,详细介绍短视频模块如何为体育赛事平台注入了新的生机。
|
11月前
|
UED
开发设计娱乐游戏直播网络平台,该如何进行?
要开发设计一个优秀的娱乐游戏直播网络平台,可以说是繁杂还有挑战性的工作,但总的来说开发模式就两种,源码开发以及定制开发,虽说这两种开发模式具有本质区别,可是最后的结果是相同的,下列分别就两种开发模式以及优点和缺点进行大概的描写。
|
11月前
|
开发者
体育网络直播平台有哪些?以及开发赛事直播平台最快方案
在数字化和网络技术的推动下,体育网络直播平台的兴起,人们可以打破时间和空间的限制,随时随地观看各种体育赛事,感受热血激情的碰撞。本文将为您介绍一些备受瞩目的体育直播平台有哪些?,以及开发赛事直播平台最快方案是什么?
|
11月前
|
移动开发 JavaScript Java
娱乐游戏直播有前景吗?如何几天内搭建开发像斗鱼+虎牙娱乐游戏直播平台
随着全球"宅经济"的迅速增长以及精力和时间的有限性,越来越多的人通过观看游戏直播来获得娱乐和放松,既解放双手和大脑,还能享受游戏的快感。这一新的休闲娱乐的新选择激推动了整个游戏产业的规模不断扩大。
|
12月前
|
编解码 监控 机器人
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(5)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(5)
81 0
|
12月前
|
容灾 5G 云栖大会
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(2)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(2)
79 0
|
12月前
|
容灾 调度 CDN
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(3)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(3)
74 0
|
12月前
|
编解码 安全 应用服务中间件
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(7)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(7)
72 0
|
12月前
|
Web App开发 编解码 网络协议
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(8)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(8)
83 0
|
12月前
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(1)
《泛娱乐行业技术服务白皮书》——三、泛娱乐典型业务架构与场景——3.1直播类泛娱乐——3.1.3 直播类泛娱乐技术服务(1)
54 0