AVPlayer не может играть - PullRequest
3 голосов
/ 25 июля 2011

Я хочу воспроизвести удаленный mp3 с AVPlayer. Я не могу заставить это работать, и я не могу видеть причину, почему это не работает. Код:

NSString *urlstr=@"..some link to a mp3"
NSURL *url=[NSURL URLWithString:urlstr];
self.player = [[[AVPlayer alloc] initWithURL:url] retain];
[player play];

Ссылка действительна. Если я загружаю его в веб-просмотр, он воспроизводится сразу. Пожалуйста, помогите.

Ответы [ 3 ]

9 голосов
/ 26 сентября 2011

У меня есть решение.Пожалуйста, попробуйте следующий код:

NSString *urlstr=@"http://www.3rdeyelab.com/mp3/mp3/tailtoddle_lo.mp3"
NSURL *url=[NSURL URLWithString:urlstr];
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];
player = [[AVPlayer playerWithPlayerItem:playerItem] retain];
[player play];
player.actionAtItemEnd = AVPlayerActionAtItemEndNone; 

Надеюсь, это будет работать для вас !!!

1 голос
/ 10 марта 2013

Если вы используете локальную ссылку в качестве URL, вы должны инициировать URL с помощью fileURLWithPath метода:

NSURL *url = [NSURL fileURLWithPath:urlstr];
0 голосов
/ 04 августа 2016

Класс NSURLConnection, независимо от того, является ли URL-адрес локальным или удаленным, всегда должен использоваться, когда речь идет об URL-адресе. Это единственный потокобезопасный, ненавязчивый способ загрузки AVPlayerItem или AVAsset. Помните: ваше приложение делит iPhone с другими приложениями; и это способ быть ответственным за убийство.

...