对本机麦克风安卓进行反应

时间:2017-04-03 16:01:56

标签: javascript react-native

我环顾四周反应原生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);
    });

1 个答案:

答案 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,看看您想要的音频功能是否存在。