2013-07-04 2 views
4

Я боролся с этим в течение нескольких часов ... Я пытаюсь воспроизвести видео, которое я загружаю и сохраняю с помощью AVPlayer, но ничего не появляется. Что меня больше всего удивило, так это то, что если я использую образец URL-адреса Apple для тестирования HTTP-трансляции , что видео играет. (http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8) Однако, когда я меняю URL-адрес на локальный путь к файлу, видео не воспроизводится. Я записал видео с iPhone и подтвердил, что формат (.mov) воспроизводится. Вот код блока:AVPlayer не воспроизводит локальные видео

AVPlayer *mPlayer = [[AVPlayer alloc] init]; 
//mPlayer = [mPlayer initWithURL:[NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"]]; 
mPlayer = [mPlayer initWithURL:filePath]; 
playerLayer = [AVPlayerLayer playerLayerWithPlayer:mPlayer]; 
[[[self view] layer] insertSublayer:playerLayer atIndex:3]; 
[playerLayer setFrame:self.view.bounds]; 
[mPlayer play]; 
NSLog(@"Playing video at: %@", filePath); 

Пример вывода: Playing video at: /var/mobile/Applications/B298EE7D-D95D-4CCC-8466-2C0270E2071E/Documents/394665262.174180.mov

EDIT: решаемые с помощью [NSURL fileURLWithPath: local_url_string]

+2

Как создается файл 'FilePath'? –

+5

Спасибо, Мартин! Я решил это с помощью 'fileURLWithPath' – mauzepeda

+3

Нельзя отправлять несколько сообщений' init'/'init ...' на тот же объект. Вы должны создать AVPlayer только в этой первой строке, так как '[[AVPlayer alloc] initWithURL: [NSURL fileURLWithPath: ...]]'. –

ответ

2

Просто небольшой фрагмент кода:

NSString *path = [[NSBundle mainBundle] pathForResource:@"splash" ofType:@"mp4"]; 
NSURL *videoURL = [NSURL fileURLWithPath:path]; 
AVPlayer* player = [AVPlayer playerWithURL:videoURL]; 
+1

мое видео находится на локальном сервере, и я хочу воспроизвести его на своем устройстве. – Rex

+0

@Rex просто изменит NSURL * videoURL = [NSURL URLWithString: @ "http://cdn3.viblast.com/streams/dash/vod-bunny/XXX.mp4"]; – WINSergey

+0

Да, я тоже пользуюсь этим. но что не воспроизводить мое видео на устройстве – Rex

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