Mic*_*ael 25 iphone mpmovieplayercontroller ios avplayer
我想在iPad上播放iOS 4.3中的电影.当文件名具有文件扩展名时,我已成功使用MPMoviePlayerController和AVPlayer从远程URL加载文件.但是,当我使用不返回文件名的CDN(只是一个不可猜测的随机名称)时,MPMoviePlayerController或AVPlayer似乎都无法应对.
有没有办法告诉任何一个玩家它真的是一个x型电影,它应该继续播放它?
MPMoviePlayerController将从其更改的状态通知返回以下错误:
{
MPMoviePlayerPlaybackDidFinishReasonUserInfoKey = 1;
error = "Error Domain=MediaPlayerErrorDomain Code=-12847 \"This movie format is not supported.\" UserInfo=0x5b60030 {NSLocalizedDescription=This movie format is not supported.}";
}
Run Code Online (Sandbox Code Playgroud)
我知道该文件是一个有效的m4v文件,因为当我重命名它时一切都很好.
文件在tmp
NSString* _filePath
Run Code Online (Sandbox Code Playgroud)
创建符号链接
NSFileManager *filemgr = [NSFileManager defaultManager];
NSString *slink = [_filePath stringByAppendingPathExtension:@"m4v"];
if (![filemgr fileExistsAtPath:slink]) {
NSError *error = nil;
[filemgr createSymbolicLinkAtPath:[_filePath stringByAppendingPathExtension:@"m4v"] withDestinationPath: _filePath error: &error];
if (error) {
...
}
}
...
Run Code Online (Sandbox Code Playgroud)
通过slink播放视频
如果播放器无法猜测文件格式,您需要检查 CDN 是否发送回正确的 mime 类型。我的猜测是您的 CDN 无法正确猜测 mimetype,播放器也无法正确猜测。
在大多数情况下,这是由于 CDN 呈现 HTTP 标头的方式。检查“Content-Type”标题是否设置为与您的内容匹配的视频格式。
归档时间: |
|
查看次数: |
8627 次 |
最近记录: |