我正试图找到一种使用react native web录制和播放音频的方法。我已经找到了几种在android和IOS中成功做到这一点的方法,但我不知道如何在网络上做到。我还在我的项目中使用Expo。非常感谢您的帮助。谢谢
我注意到Expo的音频(expo install expo-av
,import { Audio } from 'expo-av';
(支持他们文档中提到的web:https://docs.expo.io/versions/latest/sdk/audio/
编辑
用于在MOBILE上播放音频:(React Native Expo(
/**
* load, play and unload sound
* @param soundObject e.g new Audio()
* @param audio e.g: require('audio.mp3')
*/
export async function playAudio(soundObject, audio) {
try {
await soundObject.loadAsync(audio);
const playRes = await soundObject.playAsync();
soundObject.setOnPlaybackStatusUpdate(async (status) => {
if (status.didJustFinish === true) {
await soundObject.unloadAsync()
}
})
} catch (error) {
console.log('play audio err:', error);
await soundObject.unloadAsync()
soundObject.setOnPlaybackStatusUpdate(null)
}
}
其中,例如:
import { Audio } from 'expo-av';
const soundObject = new Audio.Sound();
并使用以下功能:
playAudio(entranceSound, require('audio.mp3'))
用于在WEB上录制,我们使用(ReactJS(:
recorder.current = new MediaRecorder(stream, { mimeType: 'audio/webm' });
并调用.start((函数,
所有在互联网上,如果这似乎对某人检查有用