React Native 使用Expo Audio录制到.wav时,如何在iOS上获取声音持续时间?

bf1o4zei  于 2023-05-29  发布在  React
关注(0)|答案(1)|浏览(182)

我正在尝试使用Expo Audio将iOS上的声音录制为.wav格式。

ios: {
            extension: '.wav',
            audioQuality: Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_HIGH,
            sampleRate: 44100,
            numberOfChannels: 1,
            bitRate: 128000,
            linearPCMBitDepth: 16,
            linearPCMIsBigEndian: false,
            linearPCMIsFloat: false,
        },

录音工作,但当我检索状态时,soundDuration为0。

const status = await recording.getStatusAsync();
const soundDuration = status.durationMillis;

我在Expo文档中找到:(请注意,在某些情况下,媒体文件的持续时间在Android上可读,但在iOS上不可读)。
有人能想出一个解决办法来访问声音持续时间吗?

lstz6jyr

lstz6jyr1#

最后,我简单地得到记录开始时的时间(Date.now()),并计算记录结束时的运行时间。很难得到完美的结果,但足以达到0.1s的精度。

相关问题