RecorderManager

2020-02-12 10:25 更新

全局唯一的錄音管理器。


方法

RecorderManager.start(Object object)

開始錄音。傳入的參數(shù)為對象,屬性如下:

屬性類型默認(rèn)值必填說明最低支持版本
durationnumber60000錄音自動(dòng)完成時(shí)長,單位 ms1.0.0
sampleRatenumber8000采樣率,有效值可以是 8000, 16000, 441001.0.0
numberOfChannelsnumber1錄音通道數(shù),有效值可以是 1 或 21.0.0
encodeBitRatenumber48000碼率1.0.0
frameSizenumber幀大小,單位 KB。如果設(shè)置了值,那么每當(dāng)錄音內(nèi)容達(dá)到幀大小時(shí)會(huì)通過onFrameRecorded返回內(nèi)容。1.0.0

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

采樣率編碼碼率
800016000 ~ 48000
1102516000 ~ 48000
1200024000 ~ 64000
1600024000 ~ 96000
2205032000 ~ 128000
2400032000 ~ 128000
3200048000 ~ 192000
4410064000 ~ 320000
4800064000 ~ 320000

RecorderManager.pause()

暫停錄音。

RecorderManager.resume()

繼續(xù)錄音。

RecorderManager.stop()

停止錄音。

RecorderManager.onStart(function callback)

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

RecorderManager.onPause(function callback)

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

RecorderManager.onResume(function callback)

錄音繼續(xù)事件的回調(diào)。

RecorderManager.onStop(function callback)

錄音停止事件回調(diào)?;卣{(diào)函數(shù)的參數(shù)為 Object,屬性如下:

屬性類型說明最低支持版本
tempFilePathstring錄音文件的地址1.0.0

RecorderManager.onFrameRecorded(function callback)

監(jiān)聽已錄制完指定幀大小的文件事件。如果設(shè)置了 frameSize,則會(huì)回調(diào)此事件。

回調(diào)函數(shù)的參數(shù)為 Object,屬性如下:

屬性類型說明最低支持版本
frameBufferArrayBuffer錄音分片數(shù)據(jù)1.0.0
isLastFrameboolean當(dāng)前幀是否正常錄音結(jié)束前的最后一幀1.0.0

RecorderManager.onError(function callback)

錄音錯(cuò)誤事件回調(diào)?;卣{(diào)函數(shù)的參數(shù)為 Object,屬性如下:

屬性類型說明最低支持版本
errMsgstring錯(cuò)誤信息1.0.0


代碼示例

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;
});

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

recorderManager.start(options);


Bug & Tip

  • Tip:start方法暫不支持format和audioSource參數(shù)。
  • Tip:目前 iOS 輸出格式為 m4a,安卓輸出格式為 wav。后續(xù)安卓端也會(huì)輸出 m4a。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)