我想在播放时/之后将音频文件保存到文档文件夹。缓冲文件格式为mp3。 (如果可以在播放/缓冲时实时下载音频文件,那就更好了)
我在互联网上搜索了很多内容,但未能找到专门针对此要求的教程或示例代码。
这就是我缓冲mp3的方式
NSString *strMessageUrl = @"https://example.com/example.mp3";
NSLog(@"Url %@", strMessageUrl);
NSURL *audioUrl = [NSURL URLWithString:strMessageUrl];
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate.btnPause setHidden:NO];
[appDelegate.btnPlay setHidden:YES];
appDelegate.moviePlayer.contentURL=audioUrl;
appDelegate.moviePlayer.movieSourceType = MPMovieSourceTypeFile;
[appDelegate.moviePlayer prepareToPlay];
[appDelegate.moviePlayer play];
感谢。
答案 0 :(得分:0)
如果它是一个直接指向实际文件的URL,您只需创建一个NSURLRequest并在启动播放器的同时异步保存到磁盘。
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:[[NSURL alloc] initWithString:@"https://example.com/example.mp3"]];
[NSURLConnection sendAsynchronousRequest:urlRequest queue:[NSOperationQueue mainQueue]
completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
if (data && connectionError != nil) {
NSString *filePath = @"documentDirectory/example.mp3";
if([data writeToFile:filePath atomically:YES]) {
//keep track of filePath
}
} else {
NSLog(@"Something went wrong!");
}
}];