У меня есть ViewController, который воспроизводит фильм. Если фильм был загружен (с ASI-HTTP-запросом), он принимает локальную версию. В противном случае он передает его из Интернета. Это точно такой же фильм.
Потоковая передача работает очень хорошо, но воспроизведение локального файла не работает. Просто черный экран и никаких элементов управления. Файл был загружен правильно. Я проверил контрольную сумму md5.
Это видео Apple QuickTime (.mov) размером 1024x5xx пикселей.
player = [[MPMoviePlayerController alloc] init];
[player.view setFrame: self.view.bounds];
if (local) {
// DOES not work
// SHOULD be [NSURL fileURLWithString:...]
[player setContentURL: [NSURL URLWithString: @"/path/to/the/movie.mov"]];
} else {
// does work
[player setContentURL: [NSURL URLWithString: @"http://mydomain.tld/path/to/the/movie.mov"]];
}
[self.view addSubview: player.view];
[player play]
Я пробовал с игроками MediaSourceType. Но это не помогло.
Почему это не работает?
У меня нет никаких сообщений об ошибках, потому что я не получаю одно ..., есть ли способ получить от него сообщения об ошибках?
Решение
Я нашел свою ошибку.
Я использовал [NSURL URLWithString: @"/the/path/..."]
для локального пути.
Работает с [NSURL fileURLWithPath: @"/the/path/..."]