2013-07-25 7 views
0

Я пытаюсь передать радио в мое приложение.AVAudioPlayer initWithURL не работает для потокового радио

Я использую AVAudioPlayer, но у меня есть ошибки, я не понимаю:

NSString *urlString = @"http://broadcast.infomaniak.net/radionova-high.mp3"; 
NSURL *myURL = [NSURL URLWithString:urlString]; 

NSError *error; 
self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:myURL error:&error]; 

if (self.audioPlayer == nil){ 
    NSLog(@"Error loading clip: %@", [error localizedDescription]); 
} 
else { 
    self.audioPlayer.delegate = self; 
    self.audioPlayer.volume = 0.5; 
    [self.audioPlayer play]; 
} 

И у меня есть следующее сообщение об ошибке:

Error loading clip: The operation couldn’t be completed. (OSStatus error -43.) 

Кто-нибудь посмотреть, что случилось?

EDIT:

Это то, что говорят документы компании Apple:

AVAudioPlayer класс не предоставляет поддержку для потокового аудио на основе HTTP URL. URL-адрес, используемый с initWithContentsOfURL: должен быть URL-адрес файла (файл: //). То есть, локальный путь.

Теперь что? :(

ответ

0

загрузить файл документа directoty затем воспроизвести файл

NSString *urlString = @"http://broadcast.infomaniak.net/radionova-high.mp3"; 
NSURL *myURL = [NSURL URLWithString:urlString]; 
    NSData *audioData = [NSData dataWithContentsOfURL:myURL]; 
     NSString *docDirPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
     NSString *filePath = [NSString stringWithFormat:@"%@/%@.mp3", docDirPath , fileName]; 
     [audioData writeToFile:filePath atomically:YES]; 

     NSError *error; 
     NSURL *fileURL = [NSURL fileURLWithPath:filePath]; 
     self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:&error]; 
     if (self.audioPlayer == nil) { 
      NSLog(@"AudioPlayer did not load properly: %@", [error description]); 
     } else { 
     self.audioPlayer.delegate = self; 
     self.audioPlayer.volume = 0.5; 
      [self.audioPlayer play]; 
     } 
+1

я вижу. Но это поток радио ... Я не могу скачать файл, я могу? –

+0

попытаться поставить этот код аудио играя или нет, и дайте мне знать –

+0

Я решил проблему, поэтому поставьте этот код в надежде, что он вам поможет –

Смежные вопросы