首页 > 解决方案 > React Native Expo - 直接从 websocket 播放音频

问题描述

我正在使用 react native expo 并有一个 websocket 服务器,我可以从中获取 mulaw 格式的实时音频数据。我正在尝试将这些数据转换为 wav 文件,然后通过 Expo Audio 播放。

我使用WaveFile包来转换文件并希望将其存储在缓存中,以便 Expo Audio 可以播放它。(音频不能直接从 Buffer 播放,对吧?)

问题:Expo FileSystem 只允许我写字符串文件,我不能从 WaveFile 包的给定缓冲区中创建一个 wav 文件。任何想法我可以在这里做什么?

标签: react-nativeaudiowebsocketexpo

解决方案


var fileUri = `${FileSystem.documentDirectory}/test.wav`;
await FileSystem.writeAsStringAsync(fileUri, "UklGRsBCDQBXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAATElTVBoAAABJTkZPSVNGVA4AAABMYXZmNTguNDUuMTAwAGRhdGF6Qg0AAAAAAP//AAAAAAEAAgACAAIAAgAEAAMAAwAFAAYAB", 

推荐阅读