音频文件格式–celt

CELT介绍

CELT 是一种开放、免版税的有损音频压缩格式,也是一种免费软件编解码器,具有特别低的算法延迟,适用于低延迟音频通信。这些算法是公开记录的,并且可以不受软件专利限制地使用。

CELT 是一种基于改进的离散余弦变换 (MDCT) 和 CELP 概念的变换编解码器(带有用于激励的码本,但在频域中)。与 Vorbis 一样,CELT 是一种全频带(整个人类听觉范围)通用编解码器,即不专门用于特殊类型的音频信号,因此与其兄弟项目 Speex 不同。

CELT 提供从 32 kbps 到 128 kbps 的一系列比特率,最高比特率可提供与 Vorbis 或 AAC 类似的高质量音频。然而,CELT 还提供 16 kbps 和 8 kbps 的极低比特率,适用于 VoIP 或视频会议等低延迟应用。

许多流行的 VoIP 和视频会议应用程序都使用 CELT,包括 Skype、Jitsi 和 WebRTC。WebM 视频格式也使用它。

粉丝福利, 免费领取C++音视频学习资料包+学习路线大纲、技术视频/代码,内容包括(音视频开发,面试题,FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,编解码,推拉流,srs)↓↓↓↓↓↓见下面↓↓文章底部点击免费领取↓↓

CELT发展历程

CELT的发展历史可以追溯到2000年代初期,当时Xiph.Org基金会开始开发一种名为Speex的新音频编解码器。

CELT优缺点

CELT 的一些优势:

低算法延迟:CELT具有非常低的算法延迟,这意味着编码和解码音频所花费的时间非常短。这使其适合需要实时音频通信的应用,例如 VoIP 和视频会议。

高品质:CELT 可以以 64 kbps 或更高的比特率实现高质量音频。这与 Vorbis 或 AAC 的质量相当。

开源:CELT是开源的,这意味着它可以免费使用和修改。这使其成为想要创建自己的 VoIP 或视频会议应用程序的开发人员的热门选择。

多种比特率:CELT 支持多种比特率,从 32 kbps 到 128 kbps。这使得它适合各种应用,从低延迟 VoIP 到高质量音频流。

抗噪声能力强:CELT 对噪声具有鲁棒性,这意味着它在嘈杂的环境中仍然可以产生高质量的音频。这使得它成为重视音频质量的应用的不错选择,即使在嘈杂的条件下也是如此。

支持立体声音频:CELT 可以对立体声音频进行编码和解码。这使得它适合需要双通道音频的应用,例如音乐播放或视频会议。

支持可变比特率编码:CELT 可以以可变比特率对音频进行编码。这意味着可以调整比特率以匹配可用带宽或所需的质量水平。

支持丢包隐藏:CELT可以隐藏丢包。这意味着即使某些音频数据包丢失,它仍然可以产生高质量的音频。

CELT 的一些缺点:

不像其他编解码器那样得到广泛支持:CELT 不像 MP3、Vorbis 或 AAC 等其他编解码器那样得到广泛支持。这意味着可能无法在所有应用程序中使用 CELT。

计算成本可能很高:CELT 的编码和解码计算成本可能很高,尤其是在高比特率下。这可能并不适合所有设备,例如智能手机或低功耗嵌入式系统。

CELT核心要点

每一种音频算法兴起,都有其核心要点和关键步骤:

加窗:音频信号被分成重叠的帧,每个帧使用汉明窗加窗。这有助于减少频谱泄漏并提高 MDCT 的频率分辨率。

改进的离散余弦变换 (MDCT):使用 MDCT 将加窗音频帧变换到频域。这将音频信号分为 32 个频段,每个频段包含不同的频率范围。

量化:频率系数被量化以减少表示它们所需的位数。这是使用许多不同的技术来完成的,例如均匀量化、对数量化和自适应量化。

码本编码:使用码本对量化后的频率系数进行编码。这是一个预先计算的码字表,代表不同的频率系数模式。

打包:编码的码本条目被打包并传输到解码器。

解码:解码器接收数据包并解码以重建原始音频信号。

这些是 CELT 的核心步骤,但编码和解码过程中还涉及许多其他步骤。例如,CELT还使用了许多技术来提高解码音频的质量,例如噪声整形和后处理,其逻辑框图大概如下所示:

效果对比

对于音乐文件,尤其是在资源有限的设备上进行播放,CELT 还是存在一定价值的(数据来源于:Internal MUSHRA (ITU-R BS.1534) test):

CELT现状

自 2011 年 2 月 4 日起,CELT/ SILK混合编解码器Opus (以前称为 Harmony)出现后不久,CELT 作为一个单独项目的开发就停止了,而是以 Opus 为基础(在处理时域中的频谱范围采用线性预测(SILK),频域中的较高部分采用MDCT)。

官网上也可以看到最后一次更新是在2011年2月15日。

虽然CELT暂停了,但是在OPUS算法中仍然可以看到其身影,我们会在后续的OPUS算法中再做一下介绍。

CELT 本身的标准化并未完成,IETF有一份草稿,有兴趣的可以参考一下:

https://datatracker.ietf.org/doc/html/draft-valin-celt-codec-02

总结

出道即巅峰

CELT编解码器的出现彻底改变了人们对音频编解码的看法。它能够提供极低的延迟(仅几个毫秒)和高质量的声音,这对于实时音频流、音乐制作和游戏等应用来说至关重要。此外,CELT还具有很强的鲁棒性,因此在网络环境恶劣时也能保证良好的表现。这些突破性的特性使CELT迅速在音频编解码领域达到了巅峰。

转型为背后的英雄

然而,之后CELT的身影逐渐淡出了公众视线。它并没有消失,而是成为了一个新的、更先进的音频编解码器——Opus的一部分。Opus结合了CELT和另一种编解码器SILK的优点,以实现更广泛的应用。

在Opus中,CELT主要负责处理高比特率、复杂的音频内容(如音乐),而SILK则处理语音信号。因此,尽管CELT可能不再是公众熟知的名字,但它仍在背后默默工作,为我们提供优质的音频体验。

就像做嫁衣的裁缝一样,CELT虽然转型为”隐形”角色,但其价值并未减损,反而在新的领域和环境中得到了充分的发挥。这是一个典型的例子,显示出一个算法或技术即使不再处于主导地位,也能通过融入新的系统,继续提供其核心价值。

粉丝福利, 免费领取C++音视频学习资料包+学习路线大纲、技术视频/代码,内容包括(音视频开发,面试题,FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,编解码,推拉流,srs)↓↓↓↓↓↓见下面↓↓文章底部点击免费领取↓↓

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue中使用高德地图渲染多个不同类型的点,根据勾选数据 类型不同打点显示隐藏

一、在index.html文件中引入高德地图JavaScript API的2.0版本SDK <script src"https://webapi.amap.com/maps?v2.0&key你的高德地图Key"></script>二、创建一个Vue组件&#xff0c;用于渲染地图和点位 html <template><div class"m…

科研绘图(八)线性热图

线性热图&#xff08;Linear Heat Map&#xff09;是一种数据可视化技术&#xff0c;用于展示数值在一维线性空间上的分布情况。它通常用于展示沿着一条线&#xff08;例如时间线或任何一维序列&#xff09;的数据密度或强度变化。线性热图与传统的二维热图不同&#xff0c;后者…

Python-面向对象

面向对象 1.初识对象1.1理解使用对象完成数据组织的思路 2.成员方法2.1类的定义和使用语法2.2成员方法的使用 3.类和对象4.构造方法4.1使用构造方法向成员变量赋值 5.其他内置方法5.1__str__字符串方法5.2__lt__小于符号比较方法5.3__le__小于等于比较符号5.4__eq__比较运算符实…

快快销ShopMatrix 分销商城多端uniapp可编译5端 - 佣金倍数提现

本文来自应用中心-9999款应用在线选购 "佣金倍数提现"这个概念在不同的上下文中可能有不同的含义&#xff0c;但通常它涉及到基于用户赚取的佣金来设定提现条件。这是一种常见的机制&#xff0c;尤其是在那些提供佣金或回扣的平台上&#xff0c;如联盟营销、金融交易…

网络安全工程师必备证书有哪些?

&#x1f4d5;网络环境之间的竞争&#xff0c;归根到底优秀人才之间的竞争。网络安全工程师必备证书有哪些? 1️⃣NISP国家信息安全资格证书 NISP被称称作“校园版CISP”&#xff0c;获得了网络空间安全领域广泛承认的行业认证&#xff0c;是信息安全专业的必考资格证书&#…

云原生分布式多模架构:华为云多模数据库 GeminiDB 架构与应用实践

文章目录 前言一、GeminiDB 总体介绍1.1、华为云数据库全景图1.2、GeminiDB 发展历程1.3、GeminiDB 全球分布情况 二、GeminiDB 云原生架构2.1、核心设计&#xff1a;存算分离&多模扩展2.2、存算分离&多模扩展核心优势2.3、高可用&#xff1a;秒级故障接管2.4、弹性扩展…

Manjora 中使用idm,linux通用

说明 在Mnajora中的idm需要在wine中运行&#xff0c;idm是一款很不错的下载工具&#xff0c;但是在linux不能直接使用&#xff0c;借助wine也无法使用浏览器的集成插件&#xff0c;在网上偶然发现一款第三方插件能够在linux的浏览器中将链接捕捉到idm中&#xff0c;虽然使用起…

前端动画特效分享(附在线预览)

分享几款不错的动画特效源码 其中有CSS动画、canvas动画、js小游戏等等 下面我会给出特效样式图或演示效果图 但你也可以点击在线预览查看源码的最终展示效果及下载源码资源 canvas爱心代码动画 爱心代码动画特效 由里向外不断的产生的小爱心形成一个巨大的爱心动画 以下图片…

Linux应用层调用驱动层

1.Linux如何与驱动层通信 在Linux操作系统中&#xff0c;为了确保系统的安全性和稳定性&#xff0c;应用程序通常不被允许直接访问驱动层。相反&#xff0c;应用程序需要通过操作系统提供的接口来与驱动程序进行通信。这种通信通常是通过系统调用完成的。 系统调用是应用程序…

3.3.2 CSMA/ CD协议

3.3.2 CSMA/ CD协议 CSMA/CD&#xff08;Carrier Sense Multiple Access with Collision Detection&#xff09;&#xff1a;载波监听多点接入/碰撞检测。 检测到碰撞后&#xff1a; 适配器立即停止发送。&#xff08;碰撞点后面的信号会一直叠加&#xff09;等待一段随机时间…

超强文档搜索引擎AnyTXT Searcher本地搭建

文章目录 前言1. AnyTXT Searcher1.1 下载安装AnyTXT Searcher 2. 下载安装注册cpolar3. AnyTXT Searcher设置和操作3.1 AnyTXT结合cpolar—公网访问搜索神器3.2 公网访问测试 4. 固定连接公网地址 前言 你是否遇到过这种情况&#xff0c;异地办公或者不在公司&#xff0c;想找…

(更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)

A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数&#xff08;2009-2023年&#xff09;参考《经济研究》中方先明&#xff08;2023&#xff09;的做法&#xff0c;将华证ESG评级进行赋值&#xff0c;指标包含C、CC、CCC、B、BB、BBB、A、AA、AAA共9个等级&#xff0c;…

【Redis配置】Linux下的Redis安装配置

压缩包方式的Redis下载与安装 进入官网 Redis官网&#xff1a;https://redis.io/download/ 往下翻可以找到其他版本的Redis&#xff0c;或者访问https://download.redis.io/releases/查找自己所需Redis版本。 下载自己所需版本 此处我选择下载的是6.2.14版本 上传到Linux…

【java八股文】之计算机网络系列篇

1、TCP/IP和UDP模型 TCP/IP分层&#xff08;4层&#xff09;&#xff1a;应用层&#xff0c;传输层&#xff0c;网络层&#xff0c;数据链路层 网络的七层架构 &#xff08;7层&#xff09;&#xff1a;应用层&#xff0c;表示层&#xff0c;会话层&#xff0c;传输层&#xff…

第15届蓝桥STEMA测评真题剖析-2023年12月17日Scratch编程初中级组

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第166讲。 第15届蓝桥第3次STEMA测评&#xff0c;这是2023年12月17日举办的STEMA&#xff0c;比赛仍然采取线上形式。这…

【Java】Ruoyi-Vue-Plus 整合 jasypt 为SpringBoot配置文件进行加密

开发环境 Ruoyi-Vue-Plus 5.1.2&#xff08;Spring Boot 3.1.7&#xff09;jasypt 3.0.5 进入依赖 项目的根pom.xml 项目的根 pom.xml 文件中&#xff0c;添加同一版本管理 <properties><!--配置文件参数加密--><jasypt.version>3.0.5</jasypt.version…

MAX-4/11/03/032/99/1/1/00智能伺服驱动器ELAU

MAX-4/11/03/032/99/1/1/00智能伺服驱动器ELAU MAX-4/11/03/032/99/1/1/00智能伺服驱动器ELAU A-B 1394-SJT05-C A-B 1326AS-B440G-21-A A-B 6186M-17PT ELAU MAX-4/11/03/032/99/1/1/00 ELAU MAX-4/11/03/032/08/1/1/00 ELAU MAX-4/11/03/016/99/1/1/00 E…

外观模式介绍

目录 一、外观模式介绍 1.1 外观模式定义 1.2 外观模式原理 1.2.1 外观模式类图 1.2.2 模式角色说明 1.2.3 示例代码 二、外观模式的应用 2.1 需求说明 2.2 需求实现 2.2.1 类图 2.2.2 具体实现 2.2.2.1 灯光类 2.2.2.2 电视类 2.2.2.3 空调类 2.2.2.4 外观面板类…

计算机毕业设计----SSH实现的一个宠物商城

项目介绍 本项目分为前后台&#xff0c;分为管理员与用户两种角色&#xff0c;普通用户登录前台&#xff0c;管理员登录后台&#xff1b; 管理员角色包含以下功能&#xff1a; 管理员登录,用户管理,管理商品,商品分类管理,订单管理,留言管理,公告管理,新闻管理等功能。 用户…

MySQL索引创建原则和失效问题

一.索引创建原则 数据量较大,且查询比较频繁的表常作为查询条件、分组、排序的字段字段内容区分度高内容较长,使用前缀索引尽量创建联合索引要控制索引的数量如果索引列不能存储NULL值,请在创建表示使用NOT NULL约束它 二.索引失效 违反最左前缀法则范围查询右边的列,不能使用…