# 音频录制 ## 导入模块 ``` import media from '@ohos.multimedia.media'; ``` ## 权限 无 ## createAudioRecorder\(\): AudioRecorder 创建音频录制的实例来控制音频的录制。 - 参数: 无 - 返回值

类型

说明

AudioRecorder

返回AudioRecorder类实例,失败时返回null。

- 示例 ``` var audiorecorder = media.createAudioRecorder(); ``` ## AudioRecorder 音频录制管理类,用于录制音频媒体。在调用AudioRecorder的方法前,需要先通过[createAudioRecorder\(\)](#section582314017253)构建一个AudioRecorder实例。 ### prepare\(config: AudioRecorderConfig\): void 录音准备。 - 参数:

参数名

类型

必填

说明

config

AudioRecorderConfig

配置录音的相关参数,包括音频输出URI、编码格式、采样率、声道数等。

- 返回值: 无 - 示例: ``` let audioRecorderConfig = { audioEncoder : AAC_LC , audioEncodeBitRate : 22050, audioSampleRate : 22050, numberOfChannels : 2, format : AAC_ADTS, uri : 'file:///data/accounts/account_0/appdata/appdata/recorder/test.m4a', } audiorecorder.prepare(audioRecorderConfig) ``` ## start\(\): void 开始录音。 - 参数: 无 - 返回值: 无 - 示例: ``` audiorecorder.start(); ``` ## stop\(\): void 停止录音。 - 参数: 无 - 返回值: 无 - 示例: ``` audiorecorder.stop(); ``` ## release\(\): void 释放录音资源。 - 参数: 无 - 返回值: 无 - 示例: ``` audiorecorder.release(); ``` ## reset\(\): void 重置录音。 进行重置录音之前,需要先调用stop\(\)停止录音。重置录音之后,需要调用prepare\(\)设置录音配置项,才能再次进行录音。 - 参数: 无 - 返回值: 无 - 示例: ``` audiorecorder.reset(); ``` ## on\(type: string, callback: \(\) =\> void\): void 开始订阅音频录制事件。 - 参数:

参数名

类型

必填

说明

type

string

录制事件回调类型,支持的事件包括:'prepare' | 'start' | 'stop' | 'release' | 'reset'。

  • 'prepare' :音频录制准备完成后,触发该事件。
  • 'start' :音频录制开始后,触发该事件。
  • 'stop' :音频录制停止后,触发该事件。
  • 'release' :音频录制相关资源释放后,触发该事件。
  • 'reset':音频录制重置后,触发该事件。

callback

function

录制事件回调方法。

- 返回值: 无 - 示例: ``` audiorecorder.on('prepare', () => { console.log('Preparation succeeded.'); audiorecorder.start(); }); ``` ## on\(type: string, callback: ErrorCallback\): void 开始订阅音频录制错误事件。 - 参数:

参数名

类型

必填

说明

type

string

录制错误事件回调类型'error'。

  • 'error':音频录制过程中发生错误,触发该事件。

callback

ErrorCallback

录制错误事件回调方法。

- 返回值: 无 ### 事件 AudioRecorder支持订阅以下事件。

名称

参数

描述

prepare

-

音频录制准备完成后,触发该事件。

start

-

音频录制开始后,触发该事件。

stop

-

音频录制停止后,触发该事件。

release

-

音频录制相关资源释放后,触发该事件。

reset

-

音频录制重置后,触发该事件。

error

callback

音频录制过程中发生错误,触发该事件。

**表 1** error事件的参数说明

参数名

类型

说明

callback

ErrorCallback

错误事件的回调函数。

## AudioRecorderConfig 表示音频的录音配置。

名称

参数类型

必填

说明

audioEncoder

AudioEncoder

音频编码格式,默认设置为AAC_LC。

audioEncodeBitRate

number

音频编码比特率,默认值为48000。

audioSampleRate

number

音频采集采样率,默认值为48000。

numberOfChannels

number

音频采集声道数,默认值为2。

format

AudioOutputFormat

音量输出封装格式,默认设置为MPEG_4。

uri

string

音频输出URI。支持:

  1. 文件的绝对路径:file:///data/data/ohos.xxx.xxx/cache/test.mp4
  2. 文件的fd路径:file://1 (fd number)

## AudioEncoder 表示音频编码格式的枚举。

名称

默认值

说明

AAC_LC

3

AAC-LC(Advanced Audio Coding Low Complexity)编码格式。

## AudioOutputFormat 表示音频封装格式的枚举。

名称

默认值

说明

MPEG_4

2

封装为MPEG-4格式。

AAC_ADTS

6

封装为ADTS(Audio Data Transport Stream)格式,是AAC音频的传输流格式。