智能电话机器人源码系统 的VAD和CNG

简介: 概观 VAD概述 VAD代表语音活动检测。它的作用是区分声音和其他任何东西,包括沉默。在VoIP应用中,它可以用作最小化传输的音频分组数量的工具。如果没有人说话,则可以停止音频数据包的流动,或者至少改变为低得多的舒适噪声数据包

概观 VAD概述 VAD代表语音活动检测。它的作用是区分声音和其他任何东西,包括沉默。在VoIP应用中,它可以用作最小化传输的音频分组数量的工具。如果没有人说话,则可以停止音频数据包的流动,或者至少改变为低得多的舒适噪声数据包。在典型的电话交谈中,双方都在谈话时间很短,但大多数时间只有一方正在交谈。使用VAD,可以大大减少甚至停止每个方向的传输,接近50%的呼叫。VAD通常是VoIP路径端点内的功能。


这里有两件事需要注意,这往往让人感到困惑。VAD与静音检测不同。大声的音乐肯定不是沉默,但它也不是声音,一个好的VAD会宣称“没有声音存在”。其次,使用VAD来最小化分组流通常被描述为带宽减少措施。当每个人一次谈话的可能性很低时,这只是携带大量并发呼叫的网络链路的情况。对于大多数客户端应用,当所有会话被声明为语音时,网络所需的带宽将是峰值,并且数据包以其语音编解码器的正常速率传输。在这些情况下,VAD允许的是平均值的降低 数据速率,释放大量不是实时数据的数据容量,因此可以排队等待。

CNG概述 CN代表舒适噪音。这是在VoIP路径的接收端合成的模拟背景噪声。该功能称为舒适噪声生成(CNG)。在粗略形式中,它可以是一般房间“糊”的简单模拟(例如,具有Hoth光谱加权的高斯噪声)。在更复杂的形式中,从发送器接收的噪声参数可以包含噪声建模参数。这些可用于产生与发送者环境中当前正在拾取的噪声的幅度和频谱质量紧密匹配的噪声。

CN还指RFC 3389指定的CN RTP数据包。当VAD功能声明没有语音存在时,发送CN包。CN分组可以传达上述噪声建模参数,但是经常丢失该信息。理想情况下,CN发送数据包应当在发送方环境中的噪声发生变化时发送,因此接收方的CNG功能可以有效地更新噪声,并避免语音信号恢复时噪声的突然变化。更典型地,当语音分组流停止时,仅发送单个CN分组。


FreeSWITCH中的VAD VAD可以在端点配置文件中设置,可以有4个值:

输入媒体的VAD, out - 打开传出媒体的VAD, 两者 - 打开传入和传出媒体的VAD, none - VAD完全关闭。 当FreeSWITCH不检测语音时,它停止发送RTP。FreeSWITCH还支持每次调用VAD处理以及以下通道变量:

rtp_enable_vad_in rtp_enable_vad_out rtp_disable_vad_in rtp_disable_vad_out CNG在FreeSWITCH中 在FreeSWITCH中,CNG选项选择FreeSWITCH是否将生成CN RTP数据包。的抑制-CNG索菲亚配置文件选项和suppress_cng通道可变控制该设置。当双方都支持RFC 3389(他们在SDP消息交换中同意,rtpmap:13)时,FreeSWITCH将发送CN数据包。

在FreeSWITCH中允许CNG并不意味着它会在媒体通道中产生任何舒适噪声。

如果其中一个呼叫支路不处理VAD和异步RTP媒体,则监听呼叫者可能认为听到完美静音意味着连接已被丢弃。为了处理这些端点,有一个通道变量:bridge_generate_comfort_noise,它将生成假音频。

适用的设置 频道变量 bridge_generate_comfort_noise - 当桥接会话接收不连续的音频帧(静音抑制)时产生舒适噪声。 rtp_enable_vad_in rtp_enable_vad_out rtp_disable_vad_in rtp_disable_vad_out send_silence_when_idle -当设置大于0时,此变量告诉FreeSWITCH在空闲时传输舒适噪声。 suppress_cng - 这可用于阻止远程方(通常是手机)使用静音抑制。实施不良的静音抑制会导致语音丢失,这是一种解决方法,可以降低带宽消耗。 配置参数 suppress-cng - 在此配置文件或每次调用时使用’suppress_cng’变量抑制舒适噪声发生器(CNG)。


沉默文件类型 要将静音指定为保持或回铃音乐源,请使用以下语法:

沉默[:<级>] 级别越高,音量越低。默认值约为400.在相应的通道变量中设置值:+

相关文章
|
3月前
|
传感器 人工智能 算法
适应多形态多任务,最强开源机器人学习系统八爪鱼诞生
【6月更文挑战第6天】【八爪鱼开源机器人学习系统】由加州大学伯克利分校等机构研发,适用于多形态多任务,已在arXiv上发表。系统基于transformer,预训练于800k机器人轨迹数据集,能快速适应新环境,支持单臂、双机械臂等。特点是多形态适应、多任务处理、快速微调及开源可复现。实验显示其在9个平台有效,但仍需改进传感器处理和语言指令理解。论文链接:https://arxiv.org/pdf/2405.12213
78 1
|
1月前
|
人工智能 算法 机器人
机器人版的斯坦福小镇来了,专为具身智能研究打造
【8月更文挑战第12天】《GRUtopia:城市级具身智能仿真平台》新论文发布,介绍了一款由上海AI实验室主导的大规模3D城市模拟环境——GRUtopia。此平台包含十万级互动场景与大型语言模型驱动的NPC系统,旨在解决具身智能研究中的数据稀缺问题并提供全面的评估工具,为机器人技术的进步搭建重要桥梁。https://arxiv.org/pdf/2407.10943
166 60
|
20天前
|
机器人 C# 人工智能
智能升级:WPF与人工智能的跨界合作——手把手教你集成聊天机器人,打造互动新体验与个性化服务
【8月更文挑战第31天】聊天机器人已成为现代应用的重要组成部分,提供即时响应、个性化服务及全天候支持。随着AI技术的发展,聊天机器人的功能日益强大,不仅能进行简单问答,还能实现复杂对话管理和情感分析。本文通过具体案例分析,展示了如何在WPF应用中集成聊天机器人,并通过示例代码详细说明其实现过程。使用Microsoft的Bot Framework可以轻松创建并配置聊天机器人,增强应用互动性和用户体验。首先,需在Bot Framework门户中创建机器人项目并编写逻辑。然后,在WPF应用中添加聊天界面,实现与机器人的交互。
33 0
|
1月前
|
机器人 TensorFlow 算法框架/工具
智能聊天机器人
【8月更文挑战第1天】智能聊天机器人。
68 2
|
1月前
|
人工智能 自然语言处理 安全
盘点国内:AI写作助手_ai智能问答机器人
AI写作助手是利用人工智能技术,特别是自然语言处理(NLP)技术,来辅助用户进行写作的工具。这类助手通过分析大量文本数据,能够理解语言的结构和含义,从而生成、编辑或优化文本内容。AI写作助手通常具有自动纠错、语法检查、内容生成和风格调整等功能,帮助用户提高写作效率和质量。
|
1月前
|
自然语言处理 监控 搜索推荐
使用 LangChain 创建高度互动和智能的聊天机器人
【8月更文第3天】随着自然语言处理(NLP)技术的进步,聊天机器人已成为企业和用户之间互动的重要渠道。LangChain 是一个强大的框架,旨在简化构建复杂语言模型应用程序的过程。本文将详细介绍如何使用 LangChain 框架创建高度互动和智能的聊天机器人,包括选择合适的语言模型、设计对话流程、上下文管理以及集成外部API和服务等内容。
84 0
|
2月前
|
机器人
Telegram统计机器人源码/TG记账群发机器源码人/TG自动记账全开源版本
Telegram统计机器人源码/TG记账群发机器源码人/TG自动记账全开源版本
174 0
|
4月前
|
人工智能 安全 机器人
AI电销机器人系统源码部署:freeswitch安装Windows
在Windows上安装FreeSWITCH:访问官网下载安装程序,运行并按提示安装;选择安装路径和组件;等待安装完成;配置FreeSWITCH,修改设置;启动服务;测试其功能;如遇问题,参考官方文档或进行调试故障排除。记得定期更新维护以保证稳定安全。
|
4月前
|
人工智能 Ubuntu 机器人
AI电销机器人系统源码部署之:freeswitch安装Linux
在Linux服务器上安装FreeSWITCH的简要步骤:更新软件包,安装依赖(如build-essential,libssl-dev等),下载v1.10.7源代码,解压并配置,编译,然后运行`./bootstrap.sh -j`,`./configure`,`make`,`make install`。启动FreeSWITCH服务,配置SIP用户和路由,测试连接与通话,并确保防火墙打开SIP(5060)和RTP端口。注意,实际部署可能需按需求调整。

热门文章

最新文章