
audio与声学
文章平均质量分 77
audio与声学学习整理
unbeliverpool
if you want, you can
展开
-
Android audio系统六 AudioEffect音效加载
Android 的 AudioEffect 是音频后处理的核心框架,用于实现均衡器(EQ)、虚拟器(Virtualizer)、重低音(BassBoost)等音效。应用层(AudioEffect API) ↓JNI 层(android_media_AudioEffect.cpp) ↓Native 层(AudioEffect.cpp / Effect.cpp) ↓HAL 层(audio_effects.conf / 厂商实现)(1) 实现音效处理模块// 实现音效算法(如 FIR 滤波、动态范围控制)原创 2025-04-18 15:36:15 · 802 阅读 · 0 评论 -
Android audio系统五 AudioPolicy 策略配置详解
audio_policy_configuration.xml配置文件修改后,必须重启audioserver才能被重新加载生效。默认连接的设备,常见的类型:Speaker、Built-In Mic、Wired Headset等。volume_down_mute 音量减到最低时是否静音 true/false。注:大多数厂商都有自定义的配置文件,不使用vendor下的原生文件。(1)globalConfiguration(全局配置)(2)modules(音频模块)(1)添加USB音频支持。原创 2025-04-18 09:15:50 · 703 阅读 · 0 评论 -
Android audio系统四 audiopolicy与audioflinger播放和录音
播放/录音在上层是通过AudioTrack与AudioRecord实现的。通过一张简单的流程图查看audiopolicy与audioflinger进行了哪些操作。原创 2025-04-17 20:38:47 · 167 阅读 · 0 评论 -
dumpsys--音频服务状态信息
dumpsys media.audio_flinger 重点关注 硬件设备状态、活跃音频流、混音策略 三部分。结合 logcat 查看音频相关日志(过滤 AudioFlinger 或 AudioPolicy)原创 2025-04-17 19:50:42 · 923 阅读 · 0 评论 -
Android audio系统三 audio系统启动过程
知识点Android audio启动过程AudioTrack播放Android audio启动过程启动入口:audioserver启动frameworks/av/media/audioserver/audioserver.rc执行main_audioserver.cppAudioFlinger作用:负责对接Hal层,实现播放,混音,音效处理等功能操作AudioPolicyService作用:管理输入输出设备状态,音频播放策略,音量控制,向Hal层设置参数AudioFlinger 与Audi原创 2020-12-04 15:07:13 · 330 阅读 · 0 评论 -
语音识别(多MIC)产品端侧1
实现过程软件流程: MIC采集 —— TDM排序为数字信号 —— pcm节点读取 —— AEC处理 —— 传到后端<或者本地识别> —— 实现功能研发流程: 设计 —— 测试 —— 合入第三方库 —— 第三方后台调通 —— 完成认证测试结构上要求1) 通道相位一致性2) 录音数据完整性3) 麦克风顺序4) 通道幅值一致性5) 音频幅度要求6) 总谐波失真7) 麦克风通道信噪比8) 恒频干扰9) 通道相对延时10) 结构共振/震动/异音11) 气密性第三方AEC库(原创 2020-12-04 11:32:42 · 688 阅读 · 0 评论 -
音箱设计及音质调试
预研设计喇叭尺寸,功率,额定阻抗确认期望的频响范围,低频与高频需求codec供电电压。 根据 U*U/2/R 计算,需要额外留出40%~50%的空间防止调音出现截幅—— U(电压),R(额定阻抗)注:如结构允许,尽可能复用之前已设计过的音箱与胶垫,重新设计会增加成本和研发时间结构设计音箱喇叭面宽度:音箱喇叭面宽度应大于喇叭尺寸+8mm。被动盆设计:被动盆设计需要预留面积较大的两...原创 2019-11-20 22:08:46 · 2271 阅读 · 0 评论 -
Android audio系统之audio_policy.conf分析
audio_policy.conf文件系统包含了primary、a2dp、usb、r_submix音频接口,每一个对应着系统中的audio.<primary/a2dp/usb>..so。primary:主要的处理模块a2dp:处理蓝牙音乐传输模块usb:处理usb声卡模块r_submix:全称remote submix,处理远程音频模块,目前主要是Miracast(基于W...原创 2019-11-20 21:58:04 · 1108 阅读 · 0 评论 -
ALSA驱动分析
1,概述2,ALSA框架介绍3,ALSA声卡注册过程4,ALSA设备节点创建5,tinyalsa调用流程1,概述声卡创建过程:1, 创建声卡实例. snd_card_create2, 创建逻辑设备.snd_device_new3, 设置PCM逻辑设备的substream的操作函数(cpu_dai的操作方法)4, snd_card_register,将声卡实...原创 2018-12-19 19:05:55 · 1274 阅读 · 0 评论 -
tinyalsa工具使用——tinycap,tinyplay,tinymix
1,tinycap2,tinyplay3,tinymix及分析1,tinycaphello_world:/ # tinycap Usage: tinycap file.wav [-D card] [-d device] [-c channels] [-r ...原创 2018-12-20 10:08:22 · 20172 阅读 · 0 评论 -
Android audio系统一audio框架及bug
1,audio框架APP层:音乐播放器,视频播放器。播放器一般使用MediaPlayer,MediaRecorder来进行播放和录音,MediaPlayer可以将音频文件进行解码,得到pcm流,然后使用AudioTrack进行播放。MediaRecorder是类似相反的过程。Framework Java层:AudioTrack —— 播放pcm流AudioRecorder —— 录音p...原创 2019-10-30 21:57:47 · 542 阅读 · 0 评论 -
Android audio系统二AudioFlinger AudioPolicyServicec初始化
1. audioserver启动frameworks/av/media/audioserver/audioserver.rc执行main_audioserver.cppAudioFlinger::instantiate();//初始化AudioFlingerAudioPolicyService::instantiate();//初始化AudioPolicyServiceAudioFli...原创 2019-10-30 21:27:39 · 774 阅读 · 0 评论 -
audio基础——speaker知识
audio采集过程: 采样——量化——编码;audio播放过程与之相反。1, speaker测试2, codec参数调试3,音频通路DAI介绍——I2S与PCM1, speaker测试Speaker测试项:频率响应: 频响曲线范围最大声压级: 响度声学失真: 频谱失真百分比底噪: 元器件底噪输出: 相位 &L/R 测试结构振音,音色均衡,...原创 2018-12-20 15:15:33 · 7083 阅读 · 0 评论 -
声学基础知识01
声波能引起听觉的振动波,频率在20赫兹至20千赫兹之间,在空气等媒质中传播,振动方向与传播方向相同,声速等于340米/秒。声压级声级的单位,用分贝来表示,在通常情况下,声压级等于声强级。响度声音在人耳中感受的强弱程度,主要由声音的幅度和频率所决定。入耳感受声音强弱的程度与声波功率的大小不成线性正比关系,而是与声波功率比值的对数成正比,即声音强度增加100倍,人耳感受到声音的响度只增加了2...原创 2019-03-05 19:58:53 · 3562 阅读 · 0 评论