ios - 播放视频后录制音频

Posted

技术标签:

【中文标题】ios - 播放视频后录制音频【英文标题】:ios - Recording Audio After VIdeo play 【发布时间】:2013-05-03 20:19:00 【问题描述】:

播放视频后我无法录制音频,如果我在播放视频之前录制没问题,但我必须关闭应用程序才能再次录制。 播放视频后无法录制音频,如果我在播放视频之前录制没问题,但我必须关闭应用程序才能重新录制。

录制音频:

- (IBAction)recordAudio:(id)sender 

dirPaths = NSSearchPathForDirectoriesInDomains(
                                               NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = dirPaths[0];

NSString *soundFilePath = [docsDir
                           stringByAppendingPathComponent:@"sound.caf"];

NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];

NSDictionary *recordSettings = [NSDictionary
                                dictionaryWithObjectsAndKeys:
                                [NSNumber numberWithInt:AVAudioQualityMin],
                                AVEncoderAudioQualityKey,
                                [NSNumber numberWithInt:16],
                                AVEncoderBitRateKey,
                                [NSNumber numberWithInt: 2],
                                AVNumberOfChannelsKey,
                                [NSNumber numberWithFloat:44100.0],
                                AVSampleRateKey,
                                nil];

NSError *error = nil;

_audioRecorder = [[AVAudioRecorder alloc]
                  initWithURL:soundFileURL
                  settings:recordSettings
                  error:&error];

if (error)

    NSLog(@"error: %@", [error localizedDescription]);
 else 
    [_audioRecorder prepareToRecord];


if (!_audioRecorder.recording)

    _playButton.enabled = NO;
    _stopButton.enabled = YES;
    [_audioRecorder record];



【问题讨论】:

【参考方案1】:

在录制音频之前执行此操作:

AVAudiosession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryRecord error:nil];

【讨论】:

工作!非常感谢:D

以上是关于ios - 播放视频后录制音频的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发系列--音频播放录音视频播放拍照视频录制

iOS开发系列--音频播放录音视频播放拍照视频录制

iOS开发系列--音频播放录音视频播放拍照视频录制

iOS音频播放录音视频播放拍照视频录制

音频播放录音视频播放拍照视频录制

在 iOS 中录制视频时播放音频文件