音频(一) - 音频基础知识

本文介绍了音频开发的基础知识,包括音频的使用场景、内容和难点。详细讲解了音频编码,特别是PCM编码,阐述了抽样、量化和编码过程。讨论了有损和无损编码的区别,并列举了常见的音频编码技术和数据格式。还提到了Android音频开发API如MediaRecorder、AudioRecord等,以及音频处理的开源库Speex、WebRTC和Opus。
摘要由CSDN通过智能技术生成

版权声明:本文为原创文章,未经允许不得转载

博客地址:http://blog.csdn.net/kevindgk

GitHub地址:https://github.com/KevinDGK/MyAudioDemo

前言

最近做的项目涉及到了局域网时时语音通信,研究了一段时间Android端的音频技术,包括音频的录制、播放、降噪、压缩,以及在局域网中的实时传输等。虽然网上关于音频的基本使用有很多资料,但是关于音频的处理和实际开发中遇到的问题不是很详尽,而且有些都过时了,所以小编将非业务相关的音频部分做了整理,写了几篇博客,供大家参考,希望能和大家多多交流。

基础知识点

1.音频的使用场景

音频播放器,录音机,语音电话,音视频监控应用,音视频直播应用,音频编辑/处理软件,蓝牙耳机/音箱等。

2.音频开发的具体内容

(1)音频采集/播放

(2)音频算法处理(去噪、静音检测、回声消除、音效处理、功放/增强、混音/分离等)

(3)音频的编解码和格式转换

(4)音频传输协议的开发(SIP,A2DP、AVRCP等)

3.难点

延时敏感、卡顿敏感、噪声抑制(Denoise)、回声消除(AEC)、静音检测(VAD)、混音算法等,看到这里,是不是慌了呢,其实这些大部分问题都已经有了很好的解决方案或者开源框架,如果不是专门的视音频的开发,不会涉及到太复杂的技术。

4.音频编码

4.1 概念

从信息论的观点来看,描述信源的数据是信息和数据冗余之和,即:数据=信息+数据冗余。音频信号在时域和频域上具有相关性,也即存在数据冗余。将音频作为一个信源,音频编码的实质是减少音频中的冗余。

根据编码方式的不同,音频编码技术分为三种:波形编码、参数编码和混合编码。一般来说,波形编码的话音质量高,但编码速率也很高;参数编码的编码速率很低,产生的合成语音的音质不高;混合编码使用参数编码技术和波形编码技术,编码速率和音质介于它们之间。

通常我们采用的是脉冲代码调制编码,即PCM编码。PCM通过抽样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。

简单讲,其实就是将采集到的音频模拟

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值