android 录音原始文件_Android 录音详解(一)—— MediaRecorder、AudioRecord、生成wav格式、边录边播...

Android 录音详解(一)—— MediaRecorder、AudioRecord、生成wav格式、边录边播

越来越多的 APP 都用到了手机的录音功能,比如搜索、聊天、输入、K歌等...

本系列详细介绍 Android 中录音功能的实现,包括:

Android 录音详解(四)—— 录音添加背景音乐

Android 中的录音主要有两种方式 MediaRecorder 和 AudioRecord,下面分别介绍:

MediaRecorder(基于文件)

可以录制音、视频;

封装了录制、编码、压缩、线程等功能,直接生成可播放的音频文件;

优点:封装度高,操作简单

缺点:编码格式有限,.aac  .amr  .3gp,但是没有 mp3、wav 格式。

AudioRecord(基于字节流)

只能录制音频;

输出的是 PCM 的声音数据,如果保存成文件是不能直接播放的,需要编码;

可以捕获音频流,边录制边处理,比如编码、变声、添加背景音乐。

优点:更灵活

缺点:需自行处理编码、开线程等工作

应用场景:语音聊天、汤姆猫、K歌...

PCM:

Pulse Code Modulation(脉冲编码调制),是对连续变化的模拟信号进行抽样、量化和编码产生的数字信号。

它不是一种音频格式,它是声音文件的元数据,也就是声音的内容,没有文件头。经过某种格式的压缩、编码算法处理以后,再加上这种格式的文件头,才是这种格式的音频文件。

音频参数:

采样频率:

自然界的声音转换成数字格式时,要对它进行采样,每秒钟采样的次数就是采样率。就好比电影的1秒24帧画面。最常用:44.1kHz。

采样位数:

一个采样样本用多少位二进制数编码,最常用:16位。

声道数:

分为单声道和双声道,双声道又叫立体声,双声道音频文件比单声道大一倍。

比特率(码率):

每秒钟音频文件所占的 bit 数。单位 :kbps(每秒千比特数)。比特率(原始音频 PCM) = 采样频率 * 采样位数 * 声道数,这是未经压缩的比特率,压缩后会远小于这个值。

采用44.1kHz采样频率、16位采样位数、双声道编码的原始音频 PCM 比特率为:1411.2 kbps 。而最常见的 mp3 格式的比特率为:128kbps,约 1MB/分钟。

编码格式:

将原始音频 PCM 采用特定压缩算法处理后,加上文件头,所保存成的文件的格式。例如 mp3、wav、aac...

编码格式:

mp3

是当今最流行的一种数字音频编码和有损压缩格式,就是将 PCM 通过算法进行压缩,常规 mp3 文件约为1MB/分钟。

aac

是 mp3 的下一代格式,也是有损压缩,相对于mp3,aac 格式的音频更佳,文件更小。ios 平台也支持,跨平台性好。

wav

最流行的非压缩数据格式,微软开发。

amr

压缩比比较大,但相对其他的压缩格式质量比较差,多用于人声,通话录音。

riff

一种文件描述的格式

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android中,MediaRecorder是一个用于录制音频和视频的类。它提供了多个音频源参数用于指定录制音频时的声音来源。下面是各个音频源的解释: 1. MediaRecorder.AudioSource.MIC 这是默认的音频源,它使用设备的麦克风来录制音频。当你需要录制用户的声音时,可以使用这个音频源。 2. MediaRecorder.AudioSource.CAMCORDER 这个音频源使用相机的麦克风来录制音频。当你需要与录制的视频的音频进行同步时,可以使用这个音频源。 3. MediaRecorder.AudioSource.VOICE_RECOGNITION 这个音频源使用设备的麦克风来录制音频,但是它会优化录制的音频以便于语音识别。当你需要录制用户的声音并进行语音识别时,可以使用这个音频源。 4. MediaRecorder.AudioSource.VOICE_COMMUNICATION 这个音频源使用设备的麦克风来录制音频,但是它会优化录制的音频以便于语音通信。当你需要录制用户的声音并进行语音通信时,可以使用这个音频源。 5. MediaRecorder.AudioSource.REMOTE_SUBMIX 这个音频源录制的是系统的声音,包括来自其他应用程序的声音。当你需要录制系统的声音时,可以使用这个音频源。 6. MediaRecorder.AudioSource.UNPROCESSED 这个音频源使用设备的麦克风来录制音频,并提供未经过预处理的原始音频数据。当你需要进行自定义声音处理时,可以使用这个音频源。 以上就是MediaRecorder的音频源参数解释。在使用MediaRecorder录制音频时,你需要根据实际需求选择适合的音频源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值