学习音频之android中AudioRecord采集音频的参数说明
来源:互联网 发布:电信官方测速软件 编辑:程序博客网 时间:2024/05/02 09:51
在android中采集音频的api是android.media.AudioRecord类
其中构造器的几个参数就是标准的声音采集参数
以下是参数的含义解释
public AudioRecord (int audioSource, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes)
Since: API Level 3
Class constructor.
Parameters
audioSource
the recording source. See MediaRecorder.AudioSource for recording source definitions.
音频源:指的是从哪里采集音频。这里我们当然是从麦克风采集音频,所以此参数的值为MIC
sampleRateInHz
the sample rate expressed in Hertz. Examples of rates are (but not limited to) 44100, 22050 and 11025.
采样率:音频的采样频率,每秒钟能够采样的次数,采样率越高,音质越高。给出的实例是44100、22050、11025但不限于这几个参数。例如要采集低质量的音频就可以使用4000、8000等低采样率。
channelConfig
describes the configuration of the audio channels. SeeCHANNEL_IN_MONO and CHANNEL_IN_STEREO
声道设置:android支持双声道立体声和单声道。MONO单声道,STEREO立体声
audioFormat
the format in which the audio data is represented. SeeENCODING_PCM_16BIT and ENCODING_PCM_8BIT
编码制式和采样大小:采集来的数据当然使用PCM编码(脉冲代码调制编码,即PCM编码。PCM通过抽样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。) android支持的采样大小16bit 或者8bit。当然采样大小越大,那么信息量越多,音质也越高,现在主流的采样大小都是16bit,在低质量的语音传输的时候8bit 足够了。
bufferSizeInBytes
the total size (in bytes) of the buffer where audio data is written to during the recording. New audio data can be read from this buffer in smaller chunks than this size. See getMinBufferSize(int, int, int) to determine the minimum required buffer size for the successful creation of an AudioRecord instance. Using values smaller than getMinBufferSize() will result in an initialization failure.
采集数据需要的缓冲区的大小,如果不知道最小需要的大小可以在getMinBufferSize()查看。
采集到的数据保存在一个byteBuffer中,可以使用流将其读出。亦可保存成为文件的形式
* 1、AudioSource:这里可以是MediaRecorder.AudioSource.MIC
* 2、SampleRateInHz:录制频率,可以为8000hz或者11025hz等,不同的硬件设备这个值不同
* 3、ChannelConfig:录制通道,可以为AudioFormat.CHANNEL_CONFIGURATION_MONO和AudioFormat.CHANNEL_CONFIGURATION_STEREO
* 4、AudioFormat:录制编码格式,可以为AudioFormat.ENCODING_16BIT和8BIT,其中16BIT的仿真性比8BIT好,但是需要消耗更多的电量和存储空间
* 5、BufferSize:录制缓冲大小:可以通过getMinBufferSize来获取
* 这样我们就可以实例化一个AudioRecord对象了
来自IT小小鸟的分享
- 学习音频之android中AudioRecord采集音频的参数说明
- android中AudioRecord采集音频的参数说明
- android中AudioRecord采集音频的参数说明以及audioTrack的播放
- 在android中采集音频的api是android.media.AudioRecord类
- Android AudioRecord 部分机型无法采集音频
- Android音频开发之使用AudioRecord录制
- Android音频开发之AudioRecord录音实现
- Android的音频采集
- Android AudioRecord录制wav格式的音频
- [Android] Android的音频采集
- AudioRecord音频录制的IllegalStateException
- Android 音频采集---原始音频
- 《android多媒体api》之AudioRecord原始音频pcm录制api
- Android Native C++ 层中使用AudioRecord录制PCM音频
- Android多媒体学习十:利用AudioRecord类实现自己的音频录制程序
- Android多媒体学习十:利用AudioRecord类实现自己的音频录制程序
- Android多媒体学习十:利用AudioRecord类实现自己的音频录制程序
- Android多媒体学习十:利用AudioRecord类实现自己的音频录制程序
- Webpack 打包优化之体积篇
- mysql(一)修改密码
- Webpack 打包优化之速度篇
- C 强制类型转换
- Postman使用官方文档翻译--1安装篇
- 学习音频之android中AudioRecord采集音频的参数说明
- 37、Selenium 之 help(driver)
- 如何从对象里面取出特定字段的数据
- 数据库管理-并发控制
- linux Centos或者redhat安装MariaDB 和spring boot配置使用mariaDb
- Linux命令行模式和图形界面切换
- 在Spring Boot中使用@Scheduled实现定时任务
- 1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)
- SQL--JOIN的一些总结