开始录制时,使用 Media API 和 Web Audio API 的 PhoneGap 应用程序被静音

Posted

技术标签:

【中文标题】开始录制时,使用 Media API 和 Web Audio API 的 PhoneGap 应用程序被静音【英文标题】:PhoneGap app using both Media API and Web Audio API is muted when recording begins 【发布时间】:2015-10-06 08:50:20 【问题描述】:

所以本质上,我有通过 Web Audio API 播放的背景声音,它们的播放功能看起来像这样:

 function playSound(buffer) 
    if (buffer) 
        var source = appAudioContext.createBufferSource();
        source.buffer = buffer;
        source.connect(appAudioContext.destination);
        source.start(0);
     else 
        alert("ERROR: playSound has undefined buffer");
    

当我开始使用 PhoneGap Media API 录制时(cordova-plugin-media via npm),我所有的 Web Audio 声音都被静音,即使录制停止我也无法播放它们。有没有办法让这两个 API 在 PhoneGap 中很好地协同工作?我正在开发一个声音重的应用程序,它需要 Web Audio API 的多功能性和 Media API 的原生录音功能。

【问题讨论】:

【参考方案1】:

您尚未说明您正在使用哪些插件。我必须假设您正在使用 phonegap *core* 插件。您需要使用第三方插件。这是您的search for audio。

这可能是您想要的插件cordova-plugin-deviceaudioservice。此插件仅适用于 iOS - 我从您的标签中假设。如果您需要一款适用于 android 的设备,则需要说明。

最后,相同的插件在 PGB 存储库中的 different name 下可用。但是,由于我们正在迁移到 NPM,我强烈建议您使用 NPM 版本。如果您不清楚 - 如何使用 NPM 插件,请回信。

【讨论】:

以上是关于开始录制时,使用 Media API 和 Web Audio API 的 PhoneGap 应用程序被静音的主要内容,如果未能解决你的问题,请参考以下文章

视频流/录制解决方案(Wowza Streaming Engine + Flash Media Live Encoder)

使用面部过滤器录制视频

Android:视频录制输出方向翻转

获取到目前为止录制的视频长度(或获取准确的开始时间)

Web Audio API - 浏览器 ogg 与 Windows Media Foundation mp3

Web Audio API - 录制到 MP3?