直播连麦技术闭坑篇

直播音质如何改善

1、在使用 anyRTC SDK 进行直播的时候,SDK 默认是打开 AEC (回声消除)功能的,该功能对音质有一定的损耗,所以在开播之前建议先关闭该功能,当跟其他人建立起直播连麦后在打开该功能,避免互动的时候产生回声现象,当连麦结束,可以继续关闭该功能。

// true:不使用内置AEC功能,false:使用内置AEC功能
pEngine->setParameters("{\"Cmd\":\"SetExternAec\", \"Enable\": true}");

2、在开播之前,对音频属性进行设定,默认使用 32 KHz采样率,单声道,编码码率最大值为 18 Kbps,anyRTC 支持从8kHz(窄带)到48kHz(全频带)采样,最高支持 196K 的码率,开发者可以根据场景进行设定,设定的太大效果不见得好,要找到自己的适合的场景,一般直播场景使用48 KHz采样率,双声道,编码码率设定为 56 Kbps,人声和音乐效果达到最优,且效率最高。64Kbps的码率是超宽带,不管是人声通话还是音乐直播,这样的频宽都是足够的。

在这里插入图片描述

3、户外直播场景,建议打开 AI 降噪功能。该功能创新性地应用深度学习技术,实时分离语音和背景噪声,清晰提取人声,有效消除环境中的各类噪音,让用户畅享更清晰高效的在线音视频通话体验。

// 1:使用AI降噪功能,0:关闭AI降噪功能
pEngine->setParameters("{\"Cmd\":\"SetAudioAiNoise\", \"Enable\": 1}");

美颜方案

直接集成第三方美颜 SDK ,使用第三方面美颜公司提供的相机功能,在配合anyRTC 自采集功能实现美颜+贴纸功能。

推流方案

购买各大云厂商的 CDN 服务,可以根据自身的体量以及产品的运营区域,对应选择。如果产品是出海的产品,建议使用网宿,如果产品在国内,各大厂商的 CDN 服务无大的差别。

主播旁路推流如何选择方案

anyRTC 在2016首次推出客户端4连麦功能就得到了客户的一致好评,随着跟客户的不停磨合,anyRTC 推出了客户端推流 CDN 组件和**服务端推流 CDN **,两种方式相互结合,打造天衣无缝的旁路直播方案。

不管是客户端推流 CDN 组件还是服务端推流CDN,anyRTC 都秉承着功能简单,回调一致,无缝切换的原则去设计旁路推流组件。

  • 开始推流:支持推多个地址
  • 结束推流
  • 直播合流模式:存音频合流直播、视频直播音频合流直播、视频合流直播
  • 合流布局:自定义布局,根据业务场景自行布局:大小屏,PK屏幕等等
  • 合流背景:对推流的背景进行自定义设定
  • 水印:对合流的视图添加水印操作
  • SEI:支持在视频帧插入媒体附属信息,保证视频帧与媒体附属信息严格同步
客户端推流 CDN 组件

anyRTC 开发该组件的初衷是为了给企业减负,大家都知道市面上旁路推流的价格非常昂贵,创业者本身就处于缺少现金,但又想给自己的直播间添加互动连麦旁路玩法,顾客户端推流 CDN 组件肩负为企业肩负的任务而出世。

本地推流框架

实现流程:

1.主播开始直播,并开启本地推流开始推流

2.观众进入直播间,以游客的角色进入 RTC 拉去主播的实时流

3.观众申请连麦,把角色更改为主播。主播端收到观众的流后,调用本地推流组件的"setLiveTranscoding"方法进行混流布局

4.观众挂断,把角色更改为游客的,主播端收到观众下麦的回调,调用本地推流组件的"setLiveTranscoding"方法进行更改布局

5.H5端可接入m3u8格式的视频流进行观看直播

优势:

  • 省钱:无需支付旁路推流的钱
  • 延迟小:主播端直接推流,减少了传输过程中的延迟损耗

劣势

  • 手机发烫:手机端直接推流,对手机端的性能有些损耗
  • 弱网环境下,影响直播的效果,主播端发两路流,考验主播端的上行网络。
服务端推流 CDN

在客户使用客户端推流 CDN 组件的过程中,遇到一些客户想使用 Web 端去做旁路直播;或者用户的终端手机类型鱼龙混杂,一些低端手机没办法直接使用客户端推流 CDN 组件;还有一些用户的网络环境极其恶劣,用客户端推流 CDN 组件影响直播效果。基于以上客户的诉求 anyRTC 给出了第二种旁路解决方案:服务端推流CDN

服务端推流 CDN,主播端调用接口,让服务端去完成合流并转推 CDN 的功能,对本地没有任何影响。

服务端推流 CDN架构

实现流程:

1.主播开始直播,并开启服务端旁路推流

2.观众进入直播间,以游客的角色进入 RTC 拉去主播的实时流

3.观众申请连麦,把角色更改为主播。主播端收到观众的流后,调用服务端接口"setLiveTranscoding"方法进行混流布局

4.观众挂断,把角色更改为游客的,主播端收到观众下麦的回调,调用服务端接口"setLiveTranscoding"方法进行更改布局

5.H5端可接入m3u8格式的视频流进行观看直播

  • 优势:

    • 性能差的手机,也能作为主播端进行旁路直播
    • 当客户端网络情况不好的时候,对直播的影响较小
    • Web端也能进行直播

    劣势

    • 客户成本增加

    • 延迟大:音视频流经过服务端中转并在旁路推流服务中进行合成转码在进行推流。

最佳实践

1.Web当主播的时候使用服务端推流 CDN 功能即可

2.如果用户终端的设备是低端设备的主播,使用服务端推流CDN功能,反之使用客户端旁路推流插件

3.客户端使用RTC实时检测网络情况,如果网络情况出现持续不好的情况,关掉本地旁路推流组件,调用服务端推流 CDN 接口进行无缝替换

4.如果是语音连麦场景,建议直接使用客户端旁路推流

5.如果是2人PK直播场景,使用客户端旁路推流 CDN 组件,并

其他问题

房间内跟主播连麦怎么实现?

申请连麦流程:

1.使用RTM SDK 发送点对点消息,向主播发送连麦请求,如果需要展示连麦列表,需要跟自己的业务服务进行上报连麦事件

2.主播同意连麦请求

通信流程:

1.游客开启本地摄像头并调用 RTC 切换角色的接口,设置为主播

2.主播收到游客成为主播的回调,本地更改布局,根据当前模式

在这里插入图片描述

主播间 PK 连麦怎么实现?

调用anyRTC 跨房间连麦接口进行 PK 连麦。

实现流程:

1.主播A通过业务接口获取正在直播的主播列表

2.选中一个主播B,并发送PK邀请链接

3.主播B同意连麦PK,主播A和B,调用跨房间连麦接口,主播A把主播B的流转发到A房间,主播B把主播A的流转发到B房间进行实时互动

4.各方主播房间里的粉丝对自己的主播进行打call加油

在这里插入图片描述

一起X(看电影,看球赛)怎么实现?

调用anyRTC 插入媒体流功能进行实现。

实现流程:

1.主播 通过接口向房间里插入一条媒体流,该媒体流会以一个用户的身份进入直播间

2.其他观众接收订阅该媒体流,平均延迟在200ms左右,达到一起看的效果

聊天互动消息怎么实现?

调用 anyRTC RTM 频道消息功能进行实现。

实现流程:

1.主播和游客在加入直播房间的时候,同时加入RTM频道

2.当有用户进入房间的时候,在加入频道成功后,发送一条进入房间的自定义频道消息

3.聊天以及礼物消息皆可通过自定义频道消息来实现

视频秒开怎么优化?

1.保证网速:网速的好坏是视频秒开的直接因素

2.做预加载:当视频将要离开的时候,预加载下一条直播视频源,可以有效解决第一针出图速度

3.优化关键字策略,尽量调小关键字的时长

4.播放器线程优化:拉流线程和解码线程分开

结语

直播连麦中还有一些麦序功能、加油团、连麦权限设定、版本兼容、连麦视频布局等等业务上的逻辑,这些需要靠产品经理去强化。

anyRTC 直播连麦demo已经上线,有需要的联系客服索取源码。该demo 展示3种直播连麦的方式,实时互动连麦方式,客户端推流CDN的形式以及服务端推流CDN的形式,有需要的朋友,联系我们吧~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/48734.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OBS直播如何连麦和多人连麦

OBS如何支持直播多人连麦和BGM?比如SRS 4.0的多人连麦、多平台直播、多场景切换的在线发布会方案如何实现的? 废话不多说,直接上干货。我录制了3分钟的视频教程,使用起来很简单,3分钟就讲清楚了: OBS-001-…

srs 直播连麦环境搭建

一、简介 二、修改conf/rtc.conf 三、两个客户端加入房间 四、合流 4.1分别拉流尝试 4.2合流推流 4.3拉取合流 一、简介 直播连麦是指在one2one或one2many进行音视频通话,此时把他们的音视频流合在一起,通过rtmp等协议推送给大量用户做直播。 因此首选需…

《算法新解》作者刘新宇:我只是想打开那些黑盒子,告诉人们里面有什么。

本文章仅用于学习和交流目的,不得用于商业转载。非商业转载请保留原作者、译者、原始链接地址:http://www.ituring.com.cn/article/274001 访谈嘉宾: 刘新宇,于1999年和2001年分别获得清华大学自动化系学士和硕士学位,之后长期从事软件研发工作。他关注基本算法和数据结构…

王峰五小时对话冯波:如果今天没有区块链,你会做什么?

“看完我们之间的对话,你会更能理解,原来做区块链才是Peter Thiel讲的从零到一。” 文 | 王峰 出品 | 火星财经APP(ID:hxcj24h) 有人问我,“王峰十问”和那么多业界精英做过对话,怎么不和冯波也…

2020 CES“高尖精”机器人回顾!

来源 | 机器人在线 原创 | 养乐多 2020 CES(国际消费类电子产品展览会)于美国时间1月7日到1月9日在美国拉斯维加斯会展中心盛大举行,2020年全新科技行业的趋势在这里开启。 拉斯维加斯会展中心展览面积为275万平方英尺(约25.5万…

小爱音箱 电脑 麦克风_开箱,小米小爱音箱万能遥控版,这样的操作你知道吗?...

小爱音箱万能遥控版采用白色的包装盒,正面是音箱的图片,支持QQ音乐库,海量优质有声内容,600家的使用技能,支持WiFi,蓝牙和红外,可以语音遥控家电。 包装盒的侧面,还印有小米小爱音箱万能遥控版的产品信息,产品型号为LX05A,采用蓝牙4.1,支持A2DP音乐播放,采用Micro …

小米小爱团队负责人王刚:语音交互背后,有多少人工就有多少智能

整理 | Just,阿司匹林 出品 | AI科技大本营(公众号ID:rgznai100) 【导语】近日,在英特尔与 O’Reilly 联合主办的中国人工智能大会上,小米的小爱团队负责人王刚分享了他们在语音交互技术上的进展以及面临…

挑战真实场景对话——小爱同学背后关键技术深度解析

本文来自 PaperWeekly 和 biendata 组织的企业 AI 技术实战讲座。作者为小米人工智能部的崔世起,崔老师以著名的“小爱同学”为实例,详细介绍了全双工关键技术及其应用。 本文主要分为四部分: 什么是全双工连续对话,针对全双工交互…

非小米手机接入小爱同学,Blinker智能家居

想实现小爱同学语音控制RGB灯 下载 1、米家 2、小爱同学 3、blinker点灯科技 米家同步设备 右上角添加,找到点灯科技 下面点击同步设备,就可以把blinker新建的设备同步过来啦 小爱同学指令训练 以此类推,添加其他的指令就可以了 然后就可…

chatgpt赋能python:用Python实现文本数字转换:从123到一二三

用Python实现文本数字转换:从123到一二三 在网站开发中,我们经常需要将数字转换成文字,比如将123转成“一百二十三”。这种数字转文字的需求,既方便了用户的阅读,也提高了网站的可读性和SEO效果。 在本文中&#xff…

元宇宙之NFT行业分析:中国数字藏品行业有望走向规范化、差异化

​潜力博主推荐,点上面关注博主↑↑↑ 一、中国数字藏品行业生态演进:合规化,差异化 (一)中办国办定调鼓励文化数字创新业务,行业形成自律规范 数字藏品作为新兴产业,在我国尚未搭建由上至下…

【历史上的今天】2 月 20 日:Python 代码首次发布;Facebook 收购 WhatsApp;DEC 创始人出生

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天是 2023 年 2 月 20 日,在历史上的今天,吉多范罗苏姆正式对外公布 Python 代码,版本为 0.9.0。当前,Python 稳定版为 3.10.…

chatgpt赋能python:Python中数字转换的完整指南

Python中数字转换的完整指南 转换数字是Python编程过程中经常需要的操作之一。Python提供了许多内置函数和库,可以方便地将数字转换为各种格式和数据类型。在本文中,我们将介绍Python中数字转换的完整指南,包括各种转换方法和最佳实践。 内…

全新NFT合成功能

为了满足广大用户的需求,UTON NFR平台在今天(2月25日)10:00、14:00、20:00,分别发行了500份【滑雪】数字藏品、1000份【冰球】数字藏品和1000份【冰壶】数字藏品,所有藏品上线不到1分…

实现数字永生还有多久?元宇宙全息真人分身#8i

你们都有哪些元宇宙分身? # # 直播滤镜、数字人虚拟形象、真实人像3D重建...... 我觉得这些还不够元宇宙,8i 推出了元宇宙全息分身,支持真实人物全息重建,并可导入多平台通用。 小杜 何为元宇宙全息分身?简单来说&…

惊!没想到NFT图片合成如此简单。

一、制作背景 当前NFT作品制作的大多方式都是使用部件拼接的形式,然后从大量的可能性结果取优; 二、解决问题 拼接合成的组合数量十分巨大,手工合成费时费力; 合成中对各个部件的使用次数不容易控制,部位出现的概率对作…

PHP美团外卖开放平台开发记录,IM在线通讯token获取和消息解密!By勤勤学长

token获取: 一开始我还以为,监听哪个店铺的消息,就用哪个店铺的appAuthToken获取长链接的token,但实际上,不管是使用哪个店铺的appAuthToken返回的内容是一样的,同时也意味着,我们可以获取所有…

软信天成:ChatGPT爆火背后,数据治理与人工智能的相辅相成

近日,由人工智能研究实验室OpenAI研发的聊天机器人模型ChatGPT风靡全网。在OpenAI官网上,ChatGPT被描述为优化对话的语言模型,可以回答日常问题、进行多轮闲聊,也可以承认错误回复、挑战不正确的问题,甚至会拒绝不适当…

使用Word制作文档封面

在完成论文或者大作业后,需要制作一个与之匹配的封皮。在封面中布局好校徽后需要制作信息栏,下面就着重介绍如何制作信息栏。 插入一个表格 划出需要的大小,我需要插入三条信息,就划出33的表格,如果四条信息&#xff…

chatgpt赋能python:Python如何用于量化交易

Python如何用于量化交易 随着现代市场变得越来越复杂,很多交易者开始使用量化交易作为他们的交易策略。量化交易依赖于用计算机编写的算法,在市场中执行预定义的操作。Python是一个强大的编程语言,可以用于构建量化交易算法。 量化交易简介…