Не удается получить MPMoviePlayerViewController для воспроизведения моего медиа-файла - PullRequest
0 голосов
/ 07 июля 2010

Возникли некоторые проблемы при работе этого MPMoviePlayerViewController. У меня есть два примера URL-адресов, указывающих на один и тот же фильм Quicktime. Закомментированный URL не работает; другой работает нормально.

Я наблюдал как через Fiddler, так и не вижу проблем в заголовках / и т.д.

По сути, я пытаюсь найти способ воспроизвести медиафайл, размещенный на Azure, с некоторой безопасностью; либо через проход через службу WCF. Кто-нибудь понял это? Я вырываю волосы.

//NSString *moviePath = [[NSString alloc] initWithString:@"http://www.nov8rix.com/Services/CPipeline.svc/Media/42"];

NSString *moviePath = [[NSString alloc] initWithString:@"http://nov8rixstorage.blob.core.windows.net/searchpad/tutorial_portrait.mov"];

NSURL *url = [NSURL URLWithString:moviePath];
[url retain];

MPMoviePlayerViewController *mp = [[MPMoviePlayerViewController alloc] initWithContentURL:url];

[self presentMoviePlayerViewControllerAnimated:mp];
[mp release];
[url release];

Обновление: это ошибка, которую я получаю:

NSConcreteNotification 0x892e540 {name = MPMoviePlayerPlaybackDidFinishNotification; object = <MPMoviePlayerController: 0x8921570>; userInfo = {
    MPMoviePlayerPlaybackDidFinishReasonUserInfoKey = 1;
    error = "Error Domain=MediaPlayerErrorDomain Code=-12939 \"The server is not correctly configured.\" UserInfo=0x892ecb0 {NSLocalizedDescription=The server is not correctly configured.}";

Краткий поиск в сети упоминает, что моя проблема может заключаться в том, что мое мультимедийное соединение не поддерживает байтовые диапазоны запросов. Это, вероятно, правда. Есть ли способ разрешить Range Requests с WCF?

Ответы [ 2 ]

0 голосов
/ 26 февраля 2011

Спасибо за публикацию вашего ответа. У меня была та же ошибка с моим MPMoviePlayerViewController, и моя проблема также была исправлена, когда я добавил поддержку Range Requests в мой php mp4 file streamer. Для потоковой передачи мультимедиа на iPHone требуются определенные заголовки, иначе вы получите сообщение об ошибке «Сервер настроен неправильно».

Я нашел несколько полезных советов по поддержке php Range Requests здесь: fread, (PHP 4, PHP 5), fread - бинарно-безопасное чтение файлов

0 голосов
/ 07 июля 2010

Да, я наконец-то получил это на работу! Причина, по которой он не работал, заключалась в том, что мои сервисы WCF не поддерживали Range Requests. По-видимому, для потоковой передачи фильма iPhone требуется запрос диапазона.

Я изменил свою реализацию, чтобы отправлять прямые запросы в хранилище BLOB-объектов Azure через URL-адреса SAS. Пока работает!

...