我环顾四周反应原生api并且无法访问麦克风。我想访问手机麦克风,然后分析输入数据,类似于我在下面使用的网络音频api。
navigator.mediaDevices.getUserMedia({audio:true}).then((stream)=>{
this.audioCtx = new (window.AudioContext || window.webkitAudioContext)();
this.analyser = this.audioCtx.createAnalyser();
this.analyser.fftSize = 32;
let source = this.audioCtx.createMediaStreamSource(stream);
source.connect(this.analyser);
this.frequencyData = new Uint8Array(this.analyser.frequencyBinCount);
this.analyser.getByteTimeDomainData(this.frequencyData);
}).catch((err)=>{
console.log(err);
});
答案 0 :(得分:0)
expo似乎正在成为事实上的本机工具链。它具有许多有用的开发功能,并且在标准react-native模块之上还具有许多额外的模块。似乎他们有一个音频模块https://docs.expo.io/versions/latest/sdk/audio/,尽管我没有尝试过。
https://github.com/expo/expo/tree/master/packages/expo-av
afaik您可以追溯安装expo模块,但是我更喜欢仅使用expo cli引导新项目并复制代码。
这就是我要尝试的方法-bootstrap a new project with the expo cli,看看您想要的音频功能是否存在。