HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了AVCaptureSession和背景音频iOS 7大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
每当我开始使用麦克风输入的AVCaptureSession作为输入,它将取消当前运行的任何背景音乐(例如iPod音乐).如果我注释掉添加音频输入的行,则会继续播放背景音频.

有没有人知道用麦克风录制视频剪辑的方法,同时继续允许背景音频播放?当您尝试录制视频并且正在播放音乐时,也会出现错误.

A试图这样做:

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayBACk error: nil];
UInt32 doSetProperty = 1;
AudioSessionSetProperty (kAudioSessionProperty_OverrideCategorymixWithOthers,sizeof(doSetProperty),&doSetProperty);
[[AVAudioSession sharedInstance] setActive: YES error: nil];

但是,“AudioSessionSetProperty”已被弃用:在iOS 7.0中首先被弃用

所以我试着这样做:

AVAudioSession *audioSession = [AVAudioSession sharedInstance];
NSError *setCategoryError = nil; 
[audioSession setCategory:AVAudioSessionCategoryPlayBACk
              withOptions:AVAudioSessionCategoryOptionMixWithOthers
                    error:&setCategoryError];
[audioSession setActive:YES error:nil];

但终于没有了.感谢帮助!

解决方法

您可以使用AVAudioSessionCategoryOptionMixWithOthers.
例如,
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];

之后,您可以与AVCaptureSession同时使用AVAudioPlayer.

然而,上述代码导致非常低的音量.
如果您想要正常音量,请使用AVAudioSessionCategoryOptionDefaultToSpeaker与AVAudioSessionCategoryOptionMixWithOthers如下,

[session setCategory:AVAudioSessionCategoryPlayAndRecord  withOptions:AVAudioSessionCategoryOptionMixWithOthers|AVAudioSessionCategoryOptionDefaultToSpeaker error:nil];

这很顺利

大佬总结

以上是大佬教程为你收集整理的AVCaptureSession和背景音频iOS 7全部内容,希望文章能够帮你解决AVCaptureSession和背景音频iOS 7所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。