uts插件中调用 AudioRecord初始化未报错,调用startRecording方法时报错
开始录音失败 [java.lang.IllegalStateException] {cause: null, message: "startRecording() called on an uninitialized AudioRecord."}
请问应该如何解决,延迟执行也仍然报错
import 'android.media.AudioRecord'
import 'android.media.MediaRecorder'
import 'android.media.AudioFormat'
import 'android.media.MediaSyncEvent'
import { Result } from '../interface.uts'
let recorder: AudioRecord | null = null
export const initAudio = async function (): Promise<Result> {
try {
const bufferSizeInBytes = AudioRecord.getMinBufferSize(
16000,
AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT
)
recorder = new AudioRecord(
MediaRecorder.AudioSource.MIC,
16000,
AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT,
bufferSizeInBytes
)
console.log('初始化录音', recorder.toString())
recorder.startRecording()
return {
code: 0,
data: {},
message: '成功'
}
} catch (error) {
console.log('开始录音失败', error)
return {
code: -1,
data: {},
message: error.toString()
}
}
}
0 个回复