0

我正在我的 iphone 应用程序中播放音频文件,我从 url 获取音频。播放时它会停止一段时间以缓冲。如何在没有任何缓冲区的情况下播放音频或在完全加载后播放?

  -(void) playAudio2
    {

     NSURL *url = [NSURL URLWithString:@"http:domain/iphonetest/mp3/sol.mp3"];

     NSData *data = [NSData dataWithContentsOfURL:url];

    audioPlayer  = [[AVAudioPlayer alloc] initWithData:data error:nil];
    [audioPlayer  setVolume:1];


     [audioPlayer  play];
    }
4

1 回答 1

0

尝试使用 NSURLConnection 或 AFNetworkingKit 下载文件(有很多资源显示如何下载文件。只需搜索即可)。

然后在-(void)connectionDidFinishLoading:(NSURLConnection *)connectionNSURLConnection 的委托方法或 AFNetworkingKit 的 completionBlock 中,像您的代码一样播放文件。但NSURL *url = [[NSURL alloc] initFileURLWithPath:sound_file]用于初始化 url 并[audioPlayer prepareToPlay]在播放之前使用。

于 2013-04-11T12:41:22.010 回答