音频知识基础
音频知识基础
- 声音属性
- 声音度量
- 人耳特性
- 通道数
- 音频数字化
- 传输接口
声音属性
响度
响度是人耳对声音强弱的主观感受;
主要和声波的振幅相关,同时也和频率有一定关系;
音调
音调是人耳对声音高低的主观感受;
主要与频率相关;
音色
音色主要和频谱相关
纯音:单一频率,自然界多为复合音;
复合音:由频率、振幅、相位正弦波叠加而成(基音、谐音)
声音测试中根据声音属性进行主观评测;
声音度量
- 声压:声波振动引起的大气压强变化称为声压,单位Pa;
- 声压级:人耳对声压感觉与声压的大小成对数关系,因此用声压比的对数来表示声音的强弱(单位dB);
人耳特性
人耳声音特性:
- 听觉范围:20Hz~20000Hz;
- 掩蔽效应
频域掩蔽:强音会掩蔽其频率附近的弱音;
时域掩蔽:由于人脑处理信息耗时,时间上相邻声音之间的掩蔽现象 - 哈斯效应:延迟音小于30ms,感觉声音都来自未延迟的声源,延迟音大于30ms,但小于50ms,可感知延时的声源,但其方向仍在未延迟声源的方向,延迟音大于50ms,可清晰感知回音;
- 双耳定位:利用双耳收到声音的强度差、时间差、相位差判断声源的方向
应用:根据人耳特性,进行音频编码压缩,音效处理,剧场影院布置等;
通道数
单声道
立体声:左右2个声道
四声环绕:4个发音点,前左、前右、后左、后右
5.1声道:中置、左前、右前、左后环绕、右后环绕,外加一个低音炮(0.1);
7.1声道:增加左、右环绕
音频数字化
一个自然接的声音是模拟信号,通过MIC收录,将声音(如说话声、乐器声、环境声等)转换为电信号,经ADC对模拟电信号进行PCM编码转换成数字信号,常用的是PCM编码,可以将PCM编码后的数据,存储成wav音频文件,所有音频数据的传输,处理都是编码后的,其中PCM编码过程如下:
1. 采样:
按照一定的采样率(如44.1kHz或48kHz)对模拟信号进行采样,得到一系列时间上离散的样点。
2. 量化:
将每个采样点的幅度值转换为有限数量的离散值。量化位数决定了量化级别的数量,例如16位量化可以表示65,536个不同的幅度级别。
3. 编码:
将量化后的每个离散幅度值转换为二进制代码。这个过程称为编码。编码后的数据是数字信号,可以被数字系统存储、处理和传输。通常会有一定的比特深度(如 8-bit、16-bit、24-bit 等),比特深度决定了数字值的范围和精度。
假设我们有一个模拟信号,采样率为44.1kHz,量化位数为16位:
- 采样:每秒采样44,100次,得到44,100个样点。
- 量化:将每个样点的幅度值量化为16位的离散值(0到65,535)。
- 编码:将每个量化值转换为16位的二进制代码,生成PCM数据流。
传输接口
上述PCM编码过程一般都在codec中完成,输出的是PCM数据,而PCM 数据的实际传输可通过多种协议实现,如 I2S、TDM、AES/EBU 等。 想将PCM数据进行音频算法处理,或者存储成音频文件,都需要传输到CPU,这就需要codec芯片和CPU芯片之间使用硬件传输接口,比如PCM接口:
PCM编码:是一种将模拟信号转换为数字信号的方法,负责将模拟信号转换为数字信号。
PCM接口:是一种用于传输PCM编码数据的硬件或协议接口,负责将PCM编码的数字音频数据从一个设备传输到另一个设备。
传输协议一般都包含物理层的实现,它会定义需要几组gpio,引脚的电气特性等,比如PCM、I2S、TDM在有些硬件平台上,会设计成gpio兼容(都需要时钟信号,帧同步信号,数据信号引脚)
相关文章:
音频知识基础
音频知识基础 声音属性声音度量人耳特性通道数音频数字化传输接口 声音属性 响度 响度是人耳对声音强弱的主观感受; 主要和声波的振幅相关,同时也和频率有一定关系; 音调 音调是人耳对声音高低的主观感受; 主要与频率相关&#…...

【AI赋能】蓝耘智算平台实战指南:3步构建企业级DeepSeek智能助手
蓝耘智算平台实战指南:3步构建企业级DeepSeek智能助手 引言:AI大模型时代的算力革命 在2025年全球AI技术峰会上,DeepSeek-R1凭借其开源架构与实时推理能力,成为首个通过图灵测试的中文大模型。该模型在语言理解、跨模态交互等维…...

LabVIEW无人机飞行状态监测系统
近年来,无人机在农业植保、电力巡检、应急救灾等多个领域得到了广泛应用。然而,传统的目视操控方式仍然存在以下三大问题: 飞行姿态的感知主要依赖操作者的经验; 飞行中突发的姿态异常难以及时发现; 飞行数据缺乏系统…...

DeepSeek模型架构及优化内容
DeepSeek v1版本 模型结构 DeepSeek LLM基本上遵循LLaMA的设计: 采⽤Pre-Norm结构,并使⽤RMSNorm函数. 利⽤SwiGLU作为Feed-Forward Network(FFN)的激活函数,中间层维度为8/3. 去除绝对位置编码,采⽤了…...
html语义化
常见语义化标签有: (1)页面结构标签:<header>、<nav>、<main>、<article>、<section>、<aside>、<footer> (2)文本语义标签:<h1>-<h6>…...
python学习第十四天之机器学习名词介绍
名词介绍 1. 常用术语解释2.常见机器学习任务3. 机器学习常见算法1. 监督学习(Supervised Learning)2. 非监督学习(Unsupervised Learning)3.深度学习4.**对比总结** 1. 常用术语解释 拟合(Fit)࿱…...

天津三石峰科技——汽车生产厂的设备振动检测项目案例
汽车产线有很多传动设备需要长期在线运行,会出现老化、疲劳、磨损等 问题,为了避免意外停机造成损失,需要加装一些健康监测设备,监测设备运 行状态。天津三石峰科技采用 12 通道振动信号采集卡(下图 1)对…...

汽车与AI深度融合:CES Asia 2025前瞻
在科技飞速发展的当下,汽车与AI的融合正成为行业变革的关键驱动力。近日,吉利、极氪、岚图、智己等多家车企纷纷官宣与DeepSeek模型深度融合,其中岚图知音更是将成为首个搭载该模型的量产车型,这无疑是汽车智能化进程中的重要里程…...

前端实现 GIF 图片循环播放
前言 使用 img 加载 GIF 图片,内容只会播放一次,之后就会自动暂停; 通过定时器在一段时间后重新加载图片的方式,会导致浏览器内存不断增大,并且可能会有闪烁、卡顿的问题; ImageDecoder WebCodecs API 的…...

React - 事件绑定this
在 React 中,this 的绑定是一个常见问题,尤其在类组件中使用事件处理函数时。JavaScript 中的 bind 函数用于设置函数调用时 this 的值。 bind 函数的作用 bind() 方法创建一个新的函数,当被调用时,其 this 关键字被设置为提供的…...

STM32系统架构介绍
STM32系统架构 1. CM3/4系统架构2. CM3/4系统架构-----存储器组织结构2.1 寄存器地址映射(特殊的存储器)2.2 寄存器地址计算2.3 寄存器的封装 3. CM3/4系统架构-----时钟系统 STM32 和 ARM 以及 ARM7是什么关系? ARM 是一个做芯片标准的公司,…...

Macbook Pro快速搭建Easysearch学习环境
在学习过程中,我们有时身边没有可用的服务器,这时就需要借助自己的 Mac 来安装和学习 Easysearch。然而,Easysearch 官网并未提供 Mac 版本的安装教程,下面我将详细整理我在 Mac 上安装和使用 Easysearch 的折腾经历。 Easysearc…...

老游戏回顾:SWRacer
竞速类游戏里,我很怀念它。 虽然已经25年过去了。 相比之下,别的游戏真的没法形容。 ---- 是LucasArts制作的一款赛车竞速游戏; 玩家要扮演一名银河旅行者参加各种赛车比赛,赢得奖金,在经历了八个不同星球上的24场…...
Firefox无法隐藏标题栏
Openbox 窗管 Firefox 无法隐藏标题栏。 深度Linux安装火狐,Linux(deepin) 下隐藏 Firefox 标题栏-CSDN博客 需要在 desktop 的 exec 中增加环境变量: Execenv MOZ_GTK_TITLEBAR_DECORATIONclient firefox...
vue基础(五)
Vue 实例在创建、挂载、更新、销毁的过程中会触发一系列的生命周期钩子(Lifecycle Hooks),让开发者可以在不同阶段执行逻辑。 1. Vue 2 生命周期完整流程 生命周期的四个主要阶段 创建阶段(Creation)挂载阶段&#…...

MySQL的深度分页如何优化?
大家好,我是锋哥。今天分享关于【MySQL的深度分页如何优化?】面试题。希望对大家有帮助; MySQL的深度分页如何优化? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 MySQL的深度分页(即跳过大量数据后进行分…...

深度学习每周学习总结R6(RNN实现阿尔茨海默病诊断)
🍨 本文为🔗365天深度学习训练营 中的学习记录博客R8中的内容,为了便于自己整理总结起名为R6🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结1. 数据集介绍2. 数据预处理3. 模型构建4. 初始化模型及优化器5. 训练函…...
Node.js 多模态图像描述服务 调用siliconflow:现代 JavaScript 实践
Node.js 多模态图像描述服务:现代 JavaScript 实践 项目背景 本项目使用 Node.js 和 TypeScript 实现一个高性能的图像描述微服务,展示 JavaScript 在多模态 AI 应用中的强大能力。 技术栈 Node.jsTypeScriptExpress.jsOpenAI APIdotenvRxJS (可选&a…...
机器学习数学基础:21.特征值与特征向量
一、引言 在现代科学与工程的众多领域中,线性代数扮演着举足轻重的角色。其中,特征值、特征向量以及相似对角化的概念和方法,不仅是线性代数理论体系的核心部分,更是解决实际问题的有力工具。无论是在物理学中描述系统的振动模式…...
【目标检测json2txt】label从COCO格式json文件转YOLO格式txt文件
目录 🍀🍀1.COCO格式json文件 🌷🌷2.YOLO格式txt文件 💖💖3.xml2json代码(python) 🐸🐸4.输入输出展示 🙋🙋4.1输入json 🍂🍂4.2输出txt 整理不易,欢迎一键三连!!! 送你们一条美丽的--分割线-- 🍀🍀1.COCO格式json文件 COCO数…...

51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...

20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...