小编phe*_*uel的帖子

从Cordova Media插件录制的音频文件中获取频率(HTML5 AnalyserNode)

我正在尝试编写一个小型Cordova应用程序(目前主要在Android 6上),它使用Cordova Media-Plugin记录并保存音频文件.

var media;
var mediaFile = "mediafile.wav"

[...]

media = new Media('file:///sdcard/' + mediaFile);
media.startRecord();

[...]

media.stopRecord();
media.release;
Run Code Online (Sandbox Code Playgroud)

到目前为止一切都很好 - 这很好用.我能够录制,保存和播放文件.下一步是分析所述音频文件中的主要频率.我的想法是使用HTML5 AudioContext和AnalyserNode来实现.

var context;
var analyser;
var sourceNode; 

[...]

// inside my onDeviceReady-function
var AudioContext = (window.AudioContext || 
                    window.webkitAudioContext ||
                    window.mozAudioContext ||
                    window.oAudioContext ||
                    window.msAudioContext);
if (AudioContext) {
    context = new AudioContext();
}
else {
    alert('Browser does not support Web-Audio API');
}

analyser = context.createAnalyser();
sourceNode = context.createBufferSource();
sourceNode.connect(analyser);
Run Code Online (Sandbox Code Playgroud)

为了访问该文件,我使用的是Cordova File-Plugin.

function onFileSystemSuccess(fs) {
    fileSystem = fs;
    [...] …
Run Code Online (Sandbox Code Playgroud)

html5 android cordova audiocontext

5
推荐指数
0
解决办法
373
查看次数

标签 统计

android ×1

audiocontext ×1

cordova ×1

html5 ×1