iOS:音频录制设置在模拟器中失败,但在我的设备上没有?
Posted
技术标签:
【中文标题】iOS:音频录制设置在模拟器中失败,但在我的设备上没有?【英文标题】:iOS: Audio recording setup fails in simulator, but not on my device? 【发布时间】:2014-03-12 17:29:33 【问题描述】:我正在我的应用程序中录制音频。 该应用程序在我的带有 ios 7 的 iPhone 5C 上运行良好,但在模拟器中失败(iPhone Retina 3.5 英寸/4 英寸/4 英寸 64 位)
这是设置音频的代码:
-(void)setupAudio
_audioMessageLabel.text = @"...Bereit für Aufnahme...";
[_stopButton setEnabled:NO];
[_playButton setEnabled:NO];
// Set the audio file
NSString *guid = [[NSUUID new] UUIDString];
_dateiName = [NSString stringWithFormat:@"audio-notiz-%@.m4a", guid];
NSLog(@"dateiName: %@", _dateiName);
NSArray *pathComponents = [NSArray arrayWithObjects:
[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject],
_dateiName,
nil];
_outputFileURL = [NSURL fileURLWithPathComponents:pathComponents];
// Setup audio session
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
// Define the recorder setting
NSMutableDictionary *recordSetting = [[NSMutableDictionary alloc] init];
[recordSetting setValue:[NSNumber numberWithInt:kAudioFormatMPEG4AAC] forKey:AVFormatIDKey];
[recordSetting setValue:[NSNumber numberWithFloat:44100.0] forKey:AVSampleRateKey];
[recordSetting setValue:[NSNumber numberWithInt: 2] forKey:AVNumberOfChannelsKey];
// Initiate and prepare the recorder
NSError *error = nil;
recorder = [[AVAudioRecorder alloc] initWithURL:_outputFileURL settings:recordSetting error:&error];
if (error)
NSLog(@"error: %@", [error localizedDescription]);
else
recorder.delegate = self;
recorder.meteringEnabled = YES;
[recorder prepareToRecord];
在最后一行 [recorder prepareToRecord]
中失败,控制台中带有 (lldb)
【问题讨论】:
【参考方案1】:我认为问题可能是 ios 模拟器不支持麦克风:
Is it possible to record actual sound on the simulator using mic
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/TestingontheiOSSimulator/TestingontheiOSSimulator.html#//apple_ref/doc/uid/TP40012848-CH4-SW1
【讨论】:
以上是关于iOS:音频录制设置在模拟器中失败,但在我的设备上没有?的主要内容,如果未能解决你的问题,请参考以下文章
音频引擎仅在运行 iOS 10 的设备(iphone 6)上失败,在所有模拟器设备上运行良好或真实设备直到 iphone 6s
在模拟器中录制和播放声音效果很好,但在我的 iPhone 中却不行