我正在尝试创建一个鸟类识别应用程序,因此当我激活识别功能时,从UI,我希望能够将其实时发送到服务器,以便它通过歌曲来识别鸟类。 现在我只能停止录制后才能发送。
我尚未在网上找到任何与此相关的信息或任何解决方法。
这是录音功能:
async function startRecording() {
try {
const perm = await Audio.requestPermissionsAsync();
if (perm.status === "granted") {
await Audio.setAudioModeAsync({
allowsRecordingIOS: true,
playsInSilentModeIOS: true
});
const recordingInstance = new Audio.Recording();
await recordingInstance.prepareToRecordAsync(Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY);
setRecording(recordingInstance);
recordingInstance.setOnRecordingStatusUpdate((status) => {
console.log("Base64 recording data:", status);
console.log("uri: ", recordingInstance.getURI());
});
await recordingInstance.startAsync();
}
} catch (err) {
console.error('Failed to start recording', err);
}
}
有人在使用expo之前做过这个吗?欢迎任何其他建议! 谢谢!
您可以尝试websockets,它用于实时连接服务器,无需调用api。您可以在此链接中找到您要寻找的内容 https://socket.io