Как проверить, воспроизводится ли формат видео или аудио в iPhone программно? - PullRequest
1 голос
/ 07 февраля 2011

У меня есть несколько аудио и видео файлов, хранящихся на сервере. Мне нужно их воспроизвести, но я не знаю, какие файлы хранятся на сервере, поддерживаемом iphone,

Как проверить, поддерживает ли файл IPhone перед началом воспроизведения, я использую MPMoviePlayerController для воспроизведения файлов.

Ответы [ 2 ]

5 голосов
/ 06 июня 2011

Вы можете создать AVAsset из файла следующим образом:

NSURL *myURL = [NSURL URLWithString:@"http://www.myserver.com/myfile.mp4"];
AVURLAsset *asset = [AVURLAsset URLAssetWithURL:myURL];

Затем вы можете проверить его воспроизводимое свойство:

if (asset.playable) {
    //Do Something
}
3 голосов
/ 07 февраля 2011

Перед воспроизведением их невозможно идентифицировать. Киноплеер выдаст ошибку, если ему передан неправильный формат файла. Для этого сначала вы должны наблюдать за уведомлением: MPMoviePlayerLoadStateDidChangeNotification следующим образом:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayerLoadStateChanged:) name:MPMoviePlayerLoadStateDidChangeNotification object:nil];

Когда вы ловите это уведомление, проверьте состояние загрузки игроков. Если его loadState равен «MPMovieLoadStateUnknown», то вы можете сказать, что произошла ошибка при воспроизведении фильма / аудио.

...