AVCaptureSession和背景音频iOS 7

AVCaptureSession和背景音频iOS 7,第1张

概述每当我开始使用麦克风输入的AVCaptureSession作为输入,它将取消当前运行的任何背景音乐(例如iPod音乐).如果我注释掉添加音频输入的行,则会继续播放背景音频. 有没有人知道用麦克风录制视频剪辑的方法,同时继续允许背景音频播放?当您尝试录制视频并且正在播放音乐时,也会出现错误. A试图这样做: [[AVAudioSession sharedInstance] setCategory: 每当我开始使用麦克风输入的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所遇到的程序开发问题。

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

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1112154.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存