【问题标题】:Playing audio concurrently in Ionic with ngCordova Native Audio plugin使用 ngCordova Native Audio 插件在 Ionic 中同时播放音频
【发布时间】:2017-04-02 20:15:13
【问题描述】:

我正在构建一个需要同时播放多个音频循环的 Ionic 应用程序。

在我的项目中,我实现了 cordova 原生音频插件 (http://ngcordova.com/docs/plugins/nativeAudio/),它在播放一种声音时效果很好。但是,当我尝试同时循环播放 2 个声音时,它只会播放第二个声音。

$ionicPlatform.ready(function() {
  window.plugins.NativeAudio.preloadComplex('soundA', 'media/sounds/soundA.mp3', 1, 1, 0);
  window.plugins.NativeAudio.preloadComplex('soundB', 'media/sounds/soundB.mp3', 1, 1, 0);

  window.plugins.NativeAudio.loop('soundA');
  window.plugins.NativeAudio.loop('soundB');
});

根据插件文档,它应该能够处理并发。文档中的示例是同时播放 2 首曲目的示例。我也做了同样的事情,但它不起作用。我正在Android上测试这个。

如果有人知道如何解决此问题,将不胜感激!

【问题讨论】:

  • 您尝试过使用函数preloadSimple 而不是preloadComplex 来重现声音?

标签: android cordova audio ionic-framework


【解决方案1】:

尝试使用$timeout 包装您的window.plugins.NativeAudio.loop 调用。我感觉preloadComplex实例化有些延迟。

$ionicPlatform.ready(function() {
  window.plugins.NativeAudio.preloadComplex('soundA', 'media/sounds/soundA.mp3', 1, 1, 0);
  window.plugins.NativeAudio.preloadComplex('soundB', 'media/sounds/soundB.mp3', 1, 1, 0);

  $timeout(function(){
    window.plugins.NativeAudio.loop('soundA');
    window.plugins.NativeAudio.loop('soundB');
  })
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多