MPMoviePlayerController получил ошибку «H264Decoder ОШИБКА: Этот профиль: 77, не поддерживается.» - PullRequest
1 голос
/ 10 февраля 2012

Приведенный ниже код при работе на iphone 3g ios 4.2.1 вызывает ошибку, отображаемую в журнале (только когда videoLink является URL-адресом видеофайлов MOV и M4v. Но если это MP4 и 3PG, он работает нормально)

код

MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:videoLink];
player.shouldAutoplay = NO;
[player stop];    
UIImage *image = [player thumbnailImageAtTime:timeAt                                        timeOption:MPMovieTimeOptionNearestKeyFrame];
    NSData *imgData = [[NSData alloc] initWithData:UIImageJPEGRepresentation(image, 1)];

log

 mediaserverd[25]: H264Decoder ERROR:  This profile: 77, is not supported.

 mediaserverd[25]: H264VideoDecoder_Finalize:: delete last channel [ 0].

В чем причина?Заранее спасибо.

1 Ответ

0 голосов
/ 11 февраля 2012

Профиль 77 также известен как Основной профиль .

iPhone 3G на iOS4.2.1 (и ниже) не поддерживает Основной профиль , но только Базовый профиль .Это, однако, не имеет ничего общего с форматом контейнера (файла).Используемый формат файла является второстепенным, если поддерживается фактический кодек.

Короче говоря, видео, которые вы пытаетесь воспроизвести, несовместимо с устройством, и вам нужно будет перекодировать их, используя Базовый профиль H264.

Ниже приведена матрица совместимости и кодирования, разработанная Apple.Несмотря на то, что он называется «Рекомендации по кодированию потокового HTTP», он также применяется для не потоковой передачи (прогрессивная загрузка) и локального воспроизведения.

enter image description here

...