字節(jié)跳動(dòng)小程序開發(fā)API getRecorderManager

2019-08-20 16:50 更新

獲取全局唯一的recorderManager。通過recorderManager進(jìn)行錄音操作和管理。

recorderManager支持方法列表


start(options)

開始錄音,傳入的options對(duì)象參數(shù)有:

名稱 數(shù)據(jù)類型 屬性 默認(rèn)值 描述
duration number optional 60000 錄音自動(dòng)完成時(shí)長,單位ms
sampleRate number optional 44100 采樣率,有效值可以是80001600044100
numberOfChannels number optional 1 錄音通道數(shù),有效值可以是12
encodeBitRate number optional `` 碼率
format string optional mp3 音頻格式,有效值可以是mp3aac
frameSize number optional `` 幀大小,單位KB。如果設(shè)置了值,那么每當(dāng)錄音內(nèi)容達(dá)到幀大小時(shí)會(huì)通過onFrameRecorded返回內(nèi)容。

sampleRate和encodeBitRate的對(duì)應(yīng)關(guān)系如下:

采樣率 編碼碼率
8000 16000 ~ 48000
11025 16000 ~ 48000
12000 24000 ~ 64000
16000 24000 ~ 96000
22050 32000 ~ 128000
24000 32000 ~ 128000
32000 48000 ~ 192000
44100 64000 ~ 320000
48000 64000 ~ 320000

pause()

暫停錄音

resume()

繼續(xù)錄音

stop()

停止錄音

onStart(() => {})

錄音開始事件回調(diào)

onPause(() => {})

錄音暫停事件回調(diào)

onStop((res) => {})

錄音停止事件回調(diào),res對(duì)象帶有一個(gè)類型為string的屬性tempFilePath,表示錄音文件的地址。

onFrameRecorded((res) => {})

錄音片段完成事件回調(diào),res的屬性包括:

名稱 數(shù)據(jù)類型 描述
frameBuffer arraybuffer 幀數(shù)據(jù)
isLastFrame boolean 是否為最后一幀

onError((res) => {})

錄音錯(cuò)誤事件回調(diào),res對(duì)象帶有一個(gè)類型為string的屬性errMsg,表示錯(cuò)誤信息。

代碼示例


const recorderManager = tt.getRecorderManager()

recorderManager.onStart(() => {
    console.log('recorder start')
});
recorderManager.onPause(() => {
    console.log('recorder pause')
});
recorderManager.onStop((res) => {
    console.log('recorder stop', res)
    const { tempFilePath } = res
});
recorderManager.onFrameRecorded((res) => {
    const { frameBuffer } = res
    console.log('frameBuffer.byteLength', frameBuffer.byteLength)
});

const options = {
    duration: 10000,
    sampleRate: 44100,
    numberOfChannels: 1,
    encodeBitRate: 192000,
    format: 'aac',
    frameSize: 50
};

recorderManager.start(options);

已知問題


  • start方法暫不支持audioSource參數(shù)


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)