Android音频系统学习一:基本概念
万事开头难,不知道从哪里写起,就先从学习音频的一些基础知识开始吧,写博客也是为了记录一下自己的学习过程,做好笔记,方便自己回归查阅,如果有理解不对的地方,可以留言讨论。
一、声音的基本知识(属性);
1、响度
响度就是人类可以感知到的各种声音大小,也就是音量,其与声波的振幅有直接的关系
2、音调
音调和声音的频率有关系,当声音的频率越大时,人所感知的音调就越高,反之则很低
3、音色
音色由物体本身的结构特性来决定,所表现出来的音色效果也是不同的,比如每个人的声音不同,或者材质不同的乐器发出的音色也不一样
4、音频采样
就是将我们耳朵能听到的声音的声波波形信号通过ADC转换成计算机支持的二进制的过程叫做音频采样,其核心就是把连续的模拟信号转换成离散的数字信号
4.1、样本
就是上面提到的一段连续的声音波形;
4.2、采样器
采样器是将样本转换成终态信号的关键,可以是一个子系统,也可指一个操作过程,甚至是一个算法,这取决于不同的信号处理场景
4.3、量化
采样后的数据还需要量化,即将连续值近似为某个范围内有限多个离散值的处理过程,因为刚刚提到过,原始数据是模拟的连续信号,而数字信号则是离散的,所以量化是一个必不可少的操作
4.4、编码
因为计算机的数值都是用二进制表示的,所以需要将量化后的值进行二进制编码,通常是与量化同步进行的
奈奎斯特采样理论:当对被采样的模拟信号进行还原时,其最高频率只有采样频率的一半;
换句话说,如果我们要完整重构原始的模拟信号,则采样频率就必须是它的两倍以上。比如人的声音范围是2~ 20kHZ,那么选择的采样频率就应该在40kHZ左右,数值太小则声音将产生失真现象,而数值太大也无法明显提升人耳所能感知的音质。
采样过程:
对于Android Audio来讲,我们最直观接触到音频的属性就是采样率、省道、采样位深;
本文讲述的就是音频的一些基本知识,后面会不断的完善,因为学习就是一个不断地完善的过程,下一章就准备回到Android Audio本身,学习一下 音频框架及其重要的服务
Android音频系统学习一:基本概念相关推荐
- Android 音频系统:从 AudioTrack 到 AudioFlinger(全)
Android 音频框架概述 Audio 是整个 Android 平台非常重要的一个组成部分,负责音频数据的采集和输出.音频流的控制.音频设备的管理.音量调节等,主要包括如下部分: Audio App ...
- android音频系统之AudioTrack的使用
今天,简单讲讲 AudioTrack的使用. 1.Android AudioTrack简介 在android中播放声音可以用MediaPlayer和AudioTrack两种方案的,但是两种方案是 ...
- android音频系统(4):AudioService之音量管理
前言:AudioService这个系统服务包含或者使用了几乎所有与音频有关的内容,AudioService是音频系统在java层的大本营: android音频系统,分为两个部分:数据流和策略: 数据流 ...
- Android音频系统之四AudioPolicy
4.1 AudioPolicy的诞生 AudioPolicyService是Android音频系统的两大服务之一,另一个服务是AudioFlinger,这两大服务都在系统启动时有MediaSever加 ...
- Android音频系统的改进设想和展望 PulseAudio介绍
http://www.soomal.com/doc/10100002871.htm 在这里先说明,本人并没有仔细地去看Android和PulseAudio的音频具体源代码和实现,欢迎指正. 从硬件用料 ...
- 深度剖析 Android音频系统解析与改进
导读:Android是用了一个Google自己开发的中间层API来让APP和声音驱动(ALSA或者HAL封闭驱动)通信的.在早期,它是个ALSA的插件:现在则命名为AudioFlinger.但是安卓音 ...
- Android粗浅系统学习(适合入门)
https://www.emperinter.info/2020/10/03/android-study/ AndroidStudy Android系统学习的笔记!系统但并非详细!图片并不能直接上传到 ...
- Android音频系统之一音频基础
对于一部嵌入式设备来说,除了若干基础功能外(比如手机通话.短信),最重要的可能就是多媒体了,那么问题来了,什么是多媒体呢? 多媒体是各种形式的媒体(比如文本.音频.视频.图片.动画等等)的组合.可以说 ...
- android 4.0 电话录音,ANDROID音频系统散记之四:4.0音频系统HAL初探
昨天(2011-11-15)发布了Android4.0的源码,今天download下来,开始挺进4.0时代.简单看了一下,发现音频系统方面与2.3的有较多地方不同,下面逐一描述. 一.代码模块位置 1 ...
最新文章
- 2019年,我终于知道86版西游记到底好在哪里了
- 8086为什么不用c语言,现代汇编教材还是基于8086,对理解当今CPU(如i9)有帮助吗,还是教程太滞...
- H3C ISIS与BGP 路由配置
- 关于Laravel中使用response()方法调用json()返回数据unicode编码转换的问题解决
- 利用OpenCV的findContours作轮廓检测
- 组件:slot插槽、组件:组合slot
- iOS 控制section不悬停 --- iOS开发系列 ---项目中成长的知识八
- 【7.9校内test】T1挖地雷
- zabbix安装配置
- zheng:环境搭建及项目部署
- 机器学习分类光谱数据
- git时光穿梭机总结
- 数据可视轻松制作多点飞线图
- 【论文分享】★★★「SOTA」小样本图神经网络分类模型 HGNN:Hybrid Graph Neural Networks for Few-Shot Learning
- [hbase] hbase写操作时对wal和memstore的操作顺序
- 阿里月薪50k招数据分析师,这个要求过分吗?
- CRNN模型Python实现笔记一
- 再过92年,哆啦A梦就要诞生了!
- Java循环之triangle三角形
- Sentinel的规则