actionscript 3-iOS上Air中的本地视频,停止声音和麦克风



我正在尝试在Air for iPad应用程序的StageWebView中播放本机视频,该应用程序可以播放声音并需要用户通过麦克风进行交互
一切似乎都正常,但当我开始播放视频时,声音和麦克风都停止了。如果我处理了StageWebView,声音和麦克风会恢复,但只有在15秒后(并且我需要声音和麦克风至少在StageWebView释放后立即工作)。

我试着在iOS5 iPad1和iOS6 iPad2上使用Air 3.4、3.5和3.6测试版完成这项工作。我试着切换iPad的静音按钮,还试着将SoundMixer.audioPlaybackMode更改为媒体环境。但它没有起作用,我被卡住了。

这是我处理麦克风的代码:

var microphone:Microphone = Microphone.getMicrophone();
microphone.addEventListener(SampleDataEvent.SAMPLE_DATA, __micHandler);
private function micHandler(event : SampleDataEvent) : void {
    trace("mic is working !");
}

对于音频:

_snd = new Sound();
_snd.load(new URLRequest(path));
_sndChannel = _snd.play();
private function soundStopHandler(event : MouseEvent) : void {
    if(_sndChannel) _sndChannel.stop();
}

对于视频播放器:

_webview = new StageWebView();
_webview.stage = stage;
_webview.viewPort = new Rectangle(10, 120, 480, 300);
_webview.loadURL(path);
private function videoStopHandler(event : MouseEvent) : void {
    if(_webview) {
        _webview.dispose();
        _webview = null;
    }
}

在我之前有人面临过这个问题吗?我有没有忘记什么或做得不对?

也许这个问题与iOS系统有关。

就我所知,从iOS的角度来看,这是不可能的。当你开始录制会话时,除了录制不会占用它。一旦你播放和录制会话,会话中必须解决。录制和播放会话时,该会话不能同时被占用。

参考苹果公司的文档:音频会话

AVAudioSessionCategoryPlayAndRecord或等效的kAudioSessionCategory_PlayAndRecord--将此类别用于输入和输出音频的应用程序。输入和输出不需要同时发生,但可以在需要时发生。这是用于音频聊天应用程序的类别。

在AIR中,如果编码没有问题。很可能是这个原因。

相关内容

  • 没有找到相关文章

最新更新