在iphone 3g ios 4.2.1上运行时,下面的代码会导致日志中显示错误 (仅当videoLink是MOV和M4v视频文件的URL时。但如果它是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)];
日志
mediaserverd[25]: H264Decoder ERROR: This profile: 77, is not supported.
mediaserverd[25]: H264VideoDecoder_Finalize:: delete last channel [ 0].
是什么原因? 提前谢谢。
答案 0 :(得分:0)
配置文件77也称为主要配置文件。
iOS4.2.1(及更低版本)上的iPhone 3G不支持主要配置文件,只支持基线配置文件。然而,这与包装容器 - (文件) - 格式无关。只要支持实际的编解码器,使用的文件格式就是次要的。
简而言之,您尝试播放的视频与设备不兼容,您需要使用H264的基线配置文件对其进行重新编码。
以下是Apple完成的兼容性与编码矩阵。即使这是名为HTTP Streaming Encode Recommendations,它仍然适用于非流媒体(渐进式下载)和本地播放。