Ios 在音频文件中录制我的应用程序生成的所有声音(不是从麦克风)
我有一个像乐器一样的屏幕。有播放声音文件的按钮 我想在单个音频文件中录制用户按下按钮时播放的声音,以便将该文件保存为mp4或其他音频格式 你能指导我如何用一种简单的方法实现这一点吗 我可以使用带有Ios 在音频文件中录制我的应用程序生成的所有声音(不是从麦克风),ios,xcode,audio,avaudiorecorder,Ios,Xcode,Audio,Avaudiorecorder,我有一个像乐器一样的屏幕。有播放声音文件的按钮 我想在单个音频文件中录制用户按下按钮时播放的声音,以便将该文件保存为mp4或其他音频格式 你能指导我如何用一种简单的方法实现这一点吗 我可以使用带有AVAudioRecorder的麦克风进行录音 我认为,录制方法使用麦克风作为源,但我希望它使用与我的应用程序相当的“音频输出”作为源。您可以尝试使用。你可以通过Cocoapods安装它 pod 'TheAmazingAudioEngine' 或者通过git克隆 git clone --depth=1
AVAudioRecorder的麦克风进行录音
我认为,录制方法使用麦克风作为源,但我希望它使用与我的应用程序相当的“音频输出”作为源。您可以尝试使用。你可以通过Cocoapods安装它
pod 'TheAmazingAudioEngine'
或者通过git克隆
git clone --depth=1 https://github.com/TheAmazingAudioEngine/TheAmazingAudioEngine.git
在计算机的帮助下,声音可以被记录到一个文件中
因此,如果要记录应用程序输出,只需使用:
使用屏幕记录器,如
Camtasia
或Fraps
。
当你想要的时候,你可以停止录音并以多种格式提取声音,而且不需要使用麦克风。。。
还有一些开源软件…这是一个很棒的问题!回答得好!但是它不能录制由
AVPlayer
或其他来源播放的音频,您知道如何录制这样的音频吗?可能有多个AVPlayer
。无法工作,尝试从扬声器录制音频。
@property (nonatomic, strong) AEAudioController *audioController;
@property (nonatomic, strong) AERecorder *recorder;
...
self.audioController = [[AEAudioController alloc] initWithAudioDescription:[AEAudioController nonInterleaved16BitStereoAudioDescription] inputEnabled:YES];
...
//start the recording
- (void) beginRecording{
self.recorder = [[AERecorder alloc] initWithAudioController:self.audioController];
NSString *documentsFolder = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
//the path to record to
NSString *filePath = [documentsFolder stringByAppendingPathComponent:@"AppOutput.aiff"];
//start recording
NSError *error = NULL;
if ( ![_recorder beginRecordingToFileAtPath:filePath fileType:kAudioFileAIFFType error:&error] ) {
//an error occured
return;
}
[self.audioController addOutputReceiver:self.recorder];
}
...
//end the recording
- (void)endRecording {
[self.audioController removeOutputReceiver:self.recorder];
[self.recorder finishRecording];
}