当前位置: 首页 > news >正文

音频基础知识和音频指标

音频基础知识

声音

声音(sound)是由物体振动产生的声波。物体在一秒钟之内振动的次数叫做频率,单位是赫兹,字母Hz。人耳可以识别的声音频率在         20 Hz~20000 Hz之间;

声音三要素:

响度
    响度,又称声强或音量,它表示的是声音能量的强弱程度,主要取决于声波振幅的大小。

音调
    音高也称音调,表示人耳对声音调子高低的主观感受。客观上音高大小主要取决于声波基频的高低,频率高则音调高,反之则低。

音色
    音色又称音品,由声音波形的谐波频谱和包络决定。声音波形的基频所产生的听得最清楚的音称为基音,各次谐波的微小振动所产生的声音称泛音

DAC与喇叭

DAC: 将数字信号转换成模拟信号的电路,称为数模转换器(简称D/A转换器或DAC,Digital to Analog Converter),D/A转换的作用是将时间离散、幅值也离散的数字信号转换为时间连续、幅值也连续的模拟信号。

喇叭:是一种将电能转换成声音的一种转换设备。当喇叭接收到由音源设备输出的电信号时,电流会通过喇叭上的线圈,并产生磁场反应。利用磁场的吸引或者排斥使振膜产生振动,发出声音。

ADC与麦克风

麦克风是将声音信号转换为电信号的能量转换器件。(声波带动振膜振动使两极板间的距离改变,即电容C改变,会引起电压的变化,这种电压变化频率反映了外界声音的频率,这就是驻极体传声器地工作原理。)

ADC:将模拟信号转换成数字信号的电路,称为模数转换器(简称A/D转换器或ADC,Analog to Digital Converter),A/D转换的作用是将时间连续、幅值也连续的模拟信号转换为时间离散、幅值也离散的数字信号。

模拟信号-直流与交流

音频的系统的输入和输出的有效信号都是交流信号。直流信号是不能使喇叭发声振动的,也不能传送声音信号。轻微的直流偏移会使耳机/喇叭的音圈不在磁隙的最佳位置,对音效有影响。严重的直流偏置,使音圈剧烈发热,音圈胶融化,线圈烧毁,振膜在巨大的磁推力和音圈的热量作用下变形损坏

偏置电压

输入输出的偏置电压:

因为大部分芯片没有负电压,所以如果直流偏置点在 0V电平,信号的压值负半轴部分将会丢失。所以如果要完整地输入/输出一段交流信号,需要抬升一定的偏置电压作为信号输入/输出的参考 0 点,此时理论上能输入/输出的信号最大不失真幅度为偏置电压的 2 倍.

DAC隔直输出

       隔直输出时,在 DAC 输出端与喇叭间串一个电容可以起到隔绝直流的作用。电抗分感抗和容抗,与电阻一样都起到阻碍电流通过的作用单位也都用欧姆,不同的是:电阻对所有频率的电流都有相同的阻碍作用,感抗与频率成正比,电流的频率越大,相应的感抗就越大容抗与频率成反比,电流的频率越大,相应的容抗就越小,

DAC差分输出

        差分输出时,喇叭两端各接DAC的一端输出,其中一段输出偏置直流加信号,另一端输出偏置直流加反向信号,所以喇叭的电压等于DAC两端电压之差,同时偏置直流被抵消,所以差分输出时最大幅度为单端最大输出幅度的两倍。

DAC直推输出

       直推输出时,喇叭两端分别DAC的一端输出和一个输出DAC直流偏置的公共地,所以喇叭的电压等于DAC端与公共地间电压之差,同时偏置直流被抵消,所以直推输出时最大幅度与单端隔直最大输出幅度相同.

MIC隔直输入

       MIC隔直输入时,电源串联电阻分压得到一个使麦克风正常工作状态的偏置电压,该偏置电压与芯片引脚偏置电压不一定相等,所以电容起到了隔绝两边偏置电压的作用,使MIC_IN可以正常输入麦克风的交流信号.

 MIC省电容输入

       MIC省电容方式输入时,麦克风直接正端接 MIC_IN 引脚,负端接模拟地。芯片内部会给麦克风提供一个满足正常工作的偏置电压,并产生一个与偏置电压相同压值的参考电压,在后级处理中把 MIC_IN 的直流分量处理掉,得到麦克风采集到的交流信号

LINEIN隔直输入

        LINEIN隔直输入时,在输出设备的输出端与芯片的输入端间串联一个电阻,可以起到隔绝两个不同系统的偏置电压作用。
        LINEIN选模拟输入时,可以简单理解为芯片通过模拟电路把LINEIN输入端口的信号直接连接到DAC输出端。优点是延时短,信噪比好。
        LINEIN选数字输入时,则是通过ADC采集成数字信号,再通过DAC把数字信号转为模拟信号输出。优点是CPU可以获取到输入的音频数据流,并可以进行一些效果处理再输出.

数字信号调制方式

PCM:脉冲编码调制(Pulse Code Modulation)
PDM:脉冲密度调制(Pulse Density Modulation)
PWM:脉冲宽度调制(Pulse Width Modulation)
PPM:脉冲位置调制(Pulse Position Modulation)
...

脉冲编码调制(PCM)

       脉冲编码调制(Pulse Code Modulation,PCM)就是把一个时间连续,取值连续的模拟信号变换成时间离散,取值离散的数字信号后在信道中传输。脉冲编码调制就是对模拟信号先抽样,再对样值幅度量化,编码的过程。

PCM数据格式

PCM数据格式可以理解成把采样后每个点的量化值按时间顺序一直排列。多声道时候也是把每个点的量化值按通道顺序和时间顺序交叉排列。
采样位数为 8 时,每个点占 1 个字节,数值范围 -128 ~ 127。
采样位数为16时,每个点占 2 个字节,数值范围 -32768 ~ 32767。
采样位数为24时,每个点占 3 个字节,数值范围 -16777216 ~ 16777215。
采样位数为32时,每个点占 4 个字节,数值范围 -2147483648 ~ 2147483647。

时域信号与频域信号

音频数字信号的属性

一、采样率
每秒从连续信号中提取并组成离散信号的采样个数,单位赫兹(Hz)。在一秒中内抽取的点越多,获取得频率信息更丰富,为了复原波形,采样频率越高,声音的质量也就越好,声音的还原也就越真实,但同时它占的资源比较多。采样频率必须大于等于需要采集音频信号的最大频率的两倍。
例如:8KHz    16KHz    44.1KHz       48KHz
二、采样位数
样位数也叫采样大小或量化位数,用来衡量声音波动变化的一个参数,也可以理解为采样的分辨率或者声音的解析度。数值越大,量化分辨率也就越高,采集到的数字信号越能还原实际的模拟信号。
例如:8bit:256级    16bit:65536级    32bit:4294967296级
三、通道数
声音的通道的数目。常见的单声道和立体声(双声道),现在发展到了四声环绕(四声道)和5.1声道。

傅里叶变换

时域与频域

常见的各种噪声

白噪声

白噪声(white noise)是指功率谱密度在整个频域内是常数的噪声。 所有频率具有相同能量密度的随机噪声称为白噪声。白噪声是一种功率谱密度为常数的随机信号。换句话说,此信号在各个频段上的功率谱密度是一样的,由于白光是由各种频率(颜色)的单色光混合而成,因而此信号的这种具有平坦功率谱的性质被称作是“白色的”,此信号也因此被称作白噪声。

 

 粉红噪声

粉红噪声(pink noise)是物理学概念,它在每个倍频程的强度相等,即在一定的范围(倍频程)内具有相同或类似的能量。粉红噪音虽然是一个功率谱密度与频率成反比的频谱的信号或过程。但由于听觉是对数(倍频程)感知,在高频处每个倍频程带宽更大,功率谱密度与带宽抵消,所以每个倍频程的强度其实是相等的

频率噪声

频率噪声是一种有频率信息的噪声,噪声的频率往往和瞬时强度与干扰源的工作频率和瞬时功率相关,可以根据噪声的频率和瞬时强弱关系去排除干扰的来源(例如有些短短续续的干扰,可以从干扰出现时正在工作的模块去分析)。噪声有可能来自于外部的电磁辐射干扰,电源干扰,接地回路干扰。

po声

po声是一种短暂的爆破性杂音,是由于幅度不连续,变化太大导致。很多情况都会产生这个声音,例如DAC偏置电压上抬太快、数据突然中断、音频数据不连续等等情况都会导致po声的产生。

 

常用的音频指标

峰峰值与有效值

峰峰值(peak-to-peak value)是指一个周期内信号最高值和最低值之间的距离,描述了信号值的变化范围的大小。

有效值是根据电流的热效应规定的,让交变电流和直流电通过同样的电阻,如果它们在同一时间内产生的热量相等,就把这一直流电的数值叫做这一交流电的有效值。直流的有效值就是其本身。

信噪比(SNR)

信噪比(SIGNAL NOISE RATIO,SNR or S/N)是指信号电平与噪声电平之比,单位为分贝(dB)。音频信噪比是指音响设备播放时,正常声音信号强度与噪声信号强度的比值。当信噪比低,小信号输入时噪音严重,严重影响音质。信噪比的大小是用有用信号功率(或电压)和噪声功率(或电压)比值的对数来表示的。

频率响应范围

频率响应是对MP3播放器的数模/模数转换器频率响应能力的一个评价标准。好的频率响应,是在每一个频率点都能输出稳定足够的信号,不同频率点彼此之间的信号大小均一样。然而在低频与高频部分,信号的重建比较困难,所以在这两个频段通常都会有衰减的现象。输出品质越好的装置,频率响应曲线就越平直,反之不但在高低频处衰减得很快,在一般频段,也可能呈现抖动的现象。

总谐波失真加噪声(THD+N)

THD+N 是英文Total Harmonic Distortion +Noise 的缩写,译成中文是“总谐波失真加噪声”。它是音频功率放大器的一个主要性能指标,也是音频功率放大器的额定输出功率的一个条件。

THD(Total Harmonic Distortion)总谐波失真是指输出信号比输入信号多出的谐波成分。谐波失真是系统不完全线性造成的。所有附加谐波电平之和称为总谐波失真。总谐波失真与频率有关。一般说来,1000Hz频率处的总谐波失真最小,因此不少产品均以该频率的失真作为它的指标。一般产品的总谐波失真都小于1%@1000Hz,但这个数值越小,表明产品的品质越高。

动态范围(Dynamic Range)

动态范围(Dynamic Range)是指音响系统重放时最大不失真输出功率与静态时系统噪声输出功率之比的对数值,又指一个多媒体硬盘播放器输出图像的最亮和最暗部分之间的相对比值。一般性能较好的音频设备动态范围在100dB以上。最大不失真时候失真度的取值有所不同,常见的有1%、3%、5%、和10%,在多媒体音箱中一般都取值为10%,而在高保真放大器中一般取值为1%。

动态范围是指设备能够处理的最大信号与最小信号的比值。这个概念容易与“信噪比”的概念混淆,那么二者有什么区别呢?可以理解,小于噪声幅度的信号是无法正确还原的,但是有的设备能够在无信号或信号特别低时从某些环节将噪声连同小信号切除,从而得出更好的信噪比指标(这就是“动态降噪”的基本原理)。这时实质上还是无法正确处理小信号的,而动态范围的测量就可以避免这样的人为优化。动态范围的测量是用一个小信号(一般用-60dB/1000Hz的正弦波)输给设备,然后滤除信号,测量其余频率的噪声和谐波水平,再用最大信号与之相比,结果就是动态范围。可以预见动态范围一般要低于信噪比,但在没有特殊电路或软件处理噪声的情况下,一般二者差距不大,可以互相参考。

 

相关文章:

音频基础知识和音频指标

音频基础知识 声音 声音(sound)是由物体振动产生的声波。物体在一秒钟之内振动的次数叫做频率,单位是赫兹,字母Hz。人耳可以识别的声音频率在 20 Hz~20000 Hz之间; 声音三要素: 响度 响度,…...

使用Vue CLI在其他磁盘创建项目出现错误及解决

Vue CLI是Vue.js官方推出的脚手架工具,可以帮我们快速的创建Vue项目框架。 我们创建Vue项目时一般默认都是在C盘,但由于某些因素我们需要在其他磁盘上创建Vue项目。 通过“winr”打开终端时默认位置都是C盘,但是Vue CLI不接受绝对路径作为参…...

关于lamda表达式的使用

Lambda表达式是一种匿名函数,即没有函数名的函数,它可以以更简洁、更灵活的方式编写代码。以下是Lambda表达式的常用方式: 无参数,无返回值: 如果抽象方法不带参数且不返回值,可以使用空括号和主体编写Lam…...

Android替换默认的按键音

替换audio_assets.xml文件 此文件在AudioService.java被调用 <!--文件位置 /frameworks/base/core/res/res/xml/--> <audio_assets version"1.0"><group name"touch_sounds"><asset id"FX_KEY_CLICK" file"Effect…...

Windows 服务器Nginx 下载、部署、配置流程(图文教程)

不定期更新 目录 一、下载Nginx安装包 二、上传安装包 三、启动Nginx 四、Nginx常用命令 五、Nginx&#xff08;最小&#xff09;配置详解 六、Nginx&#xff08;基础&#xff09;配置详解 七、反向代理 八、负载均衡 九、动静分离 十、报错 一、下载Nginx安装包 四…...

基于Redis实现共享session登录

搭配食用&#xff1a;Redis&#xff08;基础篇&#xff09;-CSDN博客 项目实现前的 Mysql中的表&#xff1a; 表说明tb_user用户表tb_user_info用户详情表tb_shop商户信息表tb_shop_type商户类型表tb_blog用户日记表&#xff08;达人探店日记)tb_follow用户关注表tb_voucher优…...

shell函数的定义

shell函数的定义 ​ 定义:将命令序列按照格式写在一起.格式指的是函数的固定格式 ​ 作用:方便重复使用,还可以做成函数库,集中在一起,随时可以传参调用,大的工程分割成小的模块,提高代码的可读性. 函数的格式 vim hanshu1.shfunction shopping {命令序列}shopping () {命令…...

vue部署宝塔nginx配置(获取用户ip地址、反代理访问api接口、websocket转发)

以下配置为我自己的需求&#xff0c;因人而异&#xff0c;如果只是单纯的前端非交互页面&#xff0c;可以不用修改配置。 代码及注释&#xff0c;如下&#xff1a; #解决vue-router设置mode为history&#xff0c;去掉路由地址上的/#/后nginx显示404的问题location / {proxy_htt…...

Jenkins教程-3-github自动化测试任务构建

上一小节我们学习了Jenkins在windows和mac系统上安装搭建环境的方法&#xff0c;本小节我们讲解一下Jenkins构建github自动化测试任务的方法。 接下来我们以windows系统为例&#xff0c;讲解一下构建实际自动化测试任务的具体步骤。 安装git和github插件 点击进入Jenkins插件…...

0元体验苹果macOS系统,最简单的虚拟机部署macOS教程

前言 最近发现小伙伴热衷于在VMware上安装体验macOS系统&#xff0c;所以就有了今天的帖子。 正文开始 首先&#xff0c;鉴于小伙伴们热衷macOS&#xff0c;所以小白搜罗了一圈macOS系统&#xff0c;并开启了分享通道。 本次更新的系统版本是&#xff1a; macOS 10.13.6 ma…...

Codeforces Round 946 (Div. 3) E. Money Buys Happiness

m m m个月&#xff0c;每个月月底发 x x x的薪水&#xff0c;也就是第 i i i个月只能用前 i − 1 i-1 i−1个月挣的钱&#xff0c;而不能用这个月挣的钱。第 i i i个月花费 c [ i ] c[i] c[i]的薪水能获得 h [ i ] h[i] h[i]的快乐度&#xff0c;问最多能获取的快乐度是多少。 …...

Git记录 上传至Gitee

1.GitHub拉去的代码需要上传至自己的Gitee需要清除原有remote服务器信息 查看原始远程服务器信息&#xff0c;后删除远程服务器信息 git remote -v git remote rm origin 2.Gitee新建软件仓库 法1&#xff09;不用初始化仓库&#xff0c;初始化会自动生成.git。如果本地.git…...

笔记-前端

URL 输入到渲染的过程 域名解析&#xff0c;找到服务地址 构建 TCP 连接&#xff0c;若有 https&#xff0c;则多一层 TLS 握手&#xff0c; 特殊响应码处理 301 302 解析文档 构建 dom 树和 csscom 生成渲染树&#xff1a;从DOM树的根节点开始遍历每个可见节点&#xff0c;对于…...

事务AOP

事物管理 事务管理是指对一系列数据库操作进行管理&#xff0c;确保这些操作要么全部成功执行&#xff0c;要么在遇到错误时全部回滚&#xff0c;以维护数据的一致性和完整性。在多用户并发操作和大数据处理的现代软件开发领域中&#xff0c;事务管理已成为确保数据一致性和完…...

RAM和ROM

1&#xff0c;RAM和ROM区别 RAM和ROM都是由来存储的&#xff0c;比如CPU缓存&#xff0c;电脑和手机内存等属于RAM,而固态硬盘&#xff0c;U盘&#xff0c;手机的128G,256G存储空间等都属于ROM。他们的最主要区别是RAM在断电后存储数据就没有了&#xff0c;而ROM在断电后存储数…...

聊聊系统架构之负载均衡优化实践

一、写在前面 最近在进行线上监控检查时&#xff0c;我遇到了两个超出预期的案例。首先&#xff0c;网关层的监控数据与应用实际监控数据存在不一致性&#xff0c;尤其是max有较大的差异&#xff0c;详见如下图。其次在某个应用中&#xff0c;通过httpclient请求某域名时发现只…...

代码规范性思考

表命名和设计 业务模块前缀&#xff1b;下划线分隔&#xff0c;体现业务含义&#xff1b;数据库字符集、字段名、类型、长度、默认值&#xff1b;一对一、一对多、多对多建表&#xff1b;注释清晰&#xff1b;良好的索引&#xff1b; 接口文档 swagger增强工具swagger-boots…...

TestProject Python SDK入门

2024软件测试面试刷题&#xff0c;这个小程序&#xff08;永久刷题&#xff09;&#xff0c;靠它快速找到工作了&#xff01;&#xff08;刷题APP的天花板&#xff09;-CSDN博客跳槽涨薪的朋友们有福了&#xff0c;今天给大家推荐一个软件测试面试的刷题小程序。​编辑https://…...

服务器数据恢复—EMC Isilon存储中被误删的虚拟机数据恢复案例

服务器存储数据恢复环境&#xff1a; EMC Isilon S200集群存储&#xff0c;共三个节点&#xff0c;每节点配置12块SATA硬盘。 服务器存储故障&#xff1a; 工作人员误操作删除虚拟机&#xff0c;虚拟机中数据包括数据库、MP4、AS、TS类型的视频文件等。需要恢复数据的虚拟机通…...

华为安全Security认证,你了解多少?

华为安全Security 认证包含HCIA-Security, HCIP-Security,HCIE-Security。HCIA-Security 掌握中小型网络信息安全基础知识与相关技术&#xff08;华为防火墙技术、加解密技术、PKI 证书体系等&#xff09;&#xff0c;具备搭建小型企业信息安全网络的能力&#xff0c;实现中小企…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

学习一下用鸿蒙​​DevEco Studio HarmonyOS5实现百度地图

在鸿蒙&#xff08;HarmonyOS5&#xff09;中集成百度地图&#xff0c;可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API&#xff0c;可以构建跨设备的定位、导航和地图展示功能。 ​​1. 鸿蒙环境准备​​ ​​开发工具​​&#xff1a;下载安装 ​​De…...

Visual Studio Code 扩展

Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后&#xff0c;命令 changeCase.commands 可预览转换效果 EmmyLua…...

sshd代码修改banner

sshd服务连接之后会收到字符串&#xff1a; SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢&#xff1f; 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头&#xff0c…...

Python环境安装与虚拟环境配置详解

本文档旨在为Python开发者提供一站式的环境安装与虚拟环境配置指南&#xff0c;适用于Windows、macOS和Linux系统。无论你是初学者还是有经验的开发者&#xff0c;都能在此找到适合自己的环境搭建方法和常见问题的解决方案。 快速开始 一分钟快速安装与虚拟环境配置 # macOS/…...

大模型真的像人一样“思考”和“理解”吗?​

Yann LeCun 新研究的核心探讨&#xff1a;大语言模型&#xff08;LLM&#xff09;的“理解”和“思考”方式与人类认知的根本差异。 核心问题&#xff1a;大模型真的像人一样“思考”和“理解”吗&#xff1f; 人类的思考方式&#xff1a; 你的大脑是个超级整理师。面对海量信…...