1

我在我的应用程序中集成了 soundCloud api。我正在使用以下 api 文档中提到的代码播放 soundCloud 歌曲。

      NSString *urlString = [NSString stringWithFormat:@"%@?client_id=%@",actiVityObj.songUrl, @"e0b860d9584b7194183a9e797dc0fc16"];


      [SCRequest performMethod:SCRequestMethodGET
                  onResource:[NSURL URLWithString:urlString]
             usingParameters:nil
                 withAccount:nil
      sendingProgressHandler:nil
             responseHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
                 NSError *playerError;
                 audioPlayer = [[AVAudioPlayer alloc] initWithData:data error:&playerError];
                 audioPlayer.numberOfLoops = 0;
                 audioPlayer.volume = 1.0f;
                 audioPlayer.delegate = self;

                 [audioPlayer prepareToPlay];
                 if (audioPlayer == nil)
                 {
                 }
                 else
                 {
                     [audioPlayer play];
                 }
             }];

但问题是播放歌曲需要太多时间,而且很荒谬。经过搜索,我发现它首先下载了曲目,然后播放。有什么方法可以一步一步地进行流式传输。任何帮助将不胜感激。谢谢。

4

2 回答 2

1

如果你想流式传输音频,你应该使用AVPlayer 。

于 2013-10-23T16:56:17.677 回答
0

您必须在玩一段时间之前使用 [player preparetoPlay]。

于 2013-10-18T07:57:52.150 回答