FreeSWITCH第三方库(音频)的简单介绍(一)

简介: FreeSWITCH使用了大量的第三方库,本文档主要介绍音频相关库的信息: 视频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5488890.html 其他相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5489315.html   ① libbroadvoice BroadVoice是一种高清语音编解码,支持窄带8kHz的BV16和宽带16kHz的BV32。

FreeSWITCH使用了大量的第三方库,本文档主要介绍音频相关库的信息:

视频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5488890.html

其他相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5489315.html

 

① libbroadvoice

BroadVoice是一种高清语音编解码,支持窄带8kHz的BV16和宽带16kHz的BV32。

BroadVoice使用LGPL(Lesser General Public License)发布,完全免费,因而被广泛使用在许多开源的电话系统中。

BV16和BV32编码质量很高,低延迟(5ms),和ITU的编码相比,可节省1/2到1/3的CPU。

Bradvoice编码是自去年以来第三个加入FreeSWITCH的高清语音编码,其它两个免费、高质量的语音编码是CELT和G.722。

 

② libflite

Flite是一个小型、快速的TTS系统,是著名的语音合成系统festival的c版本。可用于嵌入式系统。


 

③ libg7221

G.722.1基于 Polycom 的第三代 Siren 7 压缩技术,1999年被ITU-T批准为G.722.1标准。G.722.1采用16 KHZ 采样频率,16 位数据量化,支持从 50 Hz 至 7 kHz频率范围的音频采样,并将其压缩为 32 与 24 Kbit/s。

它采用20 ms封帧,提供40ms的算法延迟。

G722.1可实现比 G.722 编解码器更低的比特率以及更大的压缩。目标是以大约一半的比特率实现与 G.722 大致相当的质量。这种编码使用许可需要获得Polycom公司的授权。

 

④ libilbc

iLBC是一种专为包交换网络通信设计的编解码,优于目前流行的G.729、G.723.1,对丢包进行了特有处理,即使在丢包率相当高的网络环境下,仍可获得非常清晰的语音效果。

 

⑤ libcodec2

codec2是开源的低比特率的音频编解码器。codec2压缩语音编码方法,支持3200bit/s及更低的带宽。codec2被设计用于无线电和其他高压缩语音应用的领域。

官网地址:http://rowetel.com/codec2.html

 

⑥ libsilk

SILK是一个语音和音频编解码算法, 对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。

支持四种采样率:8KHz、12KHz、16KHz、24KHz。三种复杂度:低、中、高。编码码率在 6~40kbps(不同采样率具有不同的码率范围)以及还支持VAD、DTX、FEC等模块,感觉还是比较全面。

最重要的一点是提供了定点C代码,非常有利于向ARM、DSP移植和优化。

 

⑦ opus

Opus编码器 是一个有损声音编码的格式,由互联网工程任务组(IETF)近来开发,适用于网络上的实时声音传输,标准格式为RFC 6716。opus是一个开源的使用上没有任何专利或限制软件。

Opus的前身是celt编码器。在当今的有损音频格式争夺上,拥有众多不同编码器的AAC格式打败了同样颇有潜力的Musepack、Vorbis等格式,而在Opus格式诞生后,情况似乎不同了。

通过诸多的对比测试,低码率下Opsu完胜曾经优势明显的HE AAC,中码率就已经可以媲敌码率高出30%左右的AAC格式,而高码率下更接近原始音频。

 

⑧ libsoundtouch

SoundTouch是一个音频处理开源库,允许改变声音的节奏,音高和播放速率等各种独立的参数。

 

⑨ openal

OpenAL(Open Audio Library)是自由软件界的跨平台音效API。它设计给多通道三维位置音效的特效表现。其 API 风格模仿自OpenGL。

上善若水,水利万物而不争。

目录
相关文章
|
Java API 语音技术
MRCP(Media Resource Control Protocol)
MRCP(Media Resource Control Protocol)是一种音视频资源控制协议,用于控制语音识别、语音合成和语音交互等场景中的音视频资源。阿里云语音交互服务(ASR、TTS、Chatbot)支持MRCP协议,您可以使用MRCP协议来控制音视频资源,并实现语音交互的功能。
3769 1
|
编译器 C语言 Windows
cryptopp使用Qt mingw编译,以及海思平台交叉编译
cryptopp使用Qt mingw编译,以及海思平台交叉编译
425 0
|
存储 Kubernetes 块存储
kubernetes的简单化数据存储StorageClass(建立和删除以及初步使用)(一)
kubernetes的简单化数据存储StorageClass(建立和删除以及初步使用)
794 0
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
263400 0
|
3月前
|
消息中间件 人工智能 开发框架
火速收藏!2025 云栖大会 AI 中间件议程看点全公开(附免费报名通道)
2025 云栖大会“云智一体 · 碳硅共生”的主题下,9月26日,云栖小镇D1-3馆「AI 中间件论坛」将聚焦 AI 时代中间件的技术演进与创新实践,带来 AI 开发框架、消息队列、事件驱动架构及 API 网关等关键技术在 AI 领域的前沿技术探索、最新产品发布、落地实践经验。
413 33
|
1月前
|
敏捷开发 人工智能 测试技术
新业务来不及测?用Dify工作流,3天搭出完整回归测试体系,快速响应变化
在敏捷开发中,回归测试常成瓶颈。本文教你用Dify.AI可视化工作流,3天搭建智能回归测试体系,自动分析代码变更、生成测试用例,提升效率90%,让质量与速度兼得。
|
2月前
|
安全 Java 测试技术
《深入理解Spring》单元测试——高质量代码的守护神
Spring测试框架提供全面的单元与集成测试支持,通过`@SpringBootTest`、`@WebMvcTest`等注解实现分层测试,结合Mockito、Testcontainers和Jacoco,保障代码质量,提升开发效率与系统稳定性。
|
10月前
|
缓存 安全 网络安全
代理协议解析:如何根据需求选择HTTP、HTTPS或SOCKS5?
本文详细介绍了HTTP、HTTPS和SOCKS5三种代理协议的特点、优缺点以及适用场景。通过对比和分析,可以根据具体需求选择最合适的代理协议。希望本文能帮助您更好地理解和应用代理协议,提高网络应用的安全性和性能。
676 17
|
编解码 网络协议 机器人
顶顶通电话机器人开发接口对接大语言模型之实时流TTS对接介绍
大语言模型通常流式返回文字,若一次性TTS会导致严重延迟。通过标点断句或流TTS可实现低延迟的文本到语音转换。本文介绍了电话机器人接口适配流TTS的原理及技术点,包括FreeSWITCH通过WebSocket流TTS放音,以及推流协议和旁路流对接的详细说明。
923 1
|
XML 测试技术 Linux
技术笔记:sipp重放rtp数据测试FreeSWITCH
技术笔记:sipp重放rtp数据测试FreeSWITCH