繁体   English   中英

如何在iOS中播放NSData音频或视频?

[英]How to play NSData audio or video in iOS?

我需要在iOS中呈现音频或视频内容。

不幸的是,我没有收到音频/视频作为URL,而是收到内容类型(MIME类型)的NSData

使用loadData:MIMEType:textEncodingName:baseURL:时, UIWebView似乎无法正常播放音频/视频数据loadData:MIMEType:textEncodingName:baseURL:仅在使用loadRequest:感谢Apple为这个精彩的控制器)

所以我想将NSData保存到临时文件,但我没有文件扩展名(只是MIME类型)。

完成此任务的最佳方法是什么? 也许使用其他一些iOS控件实现音频/视频播放器?

提前致谢。

创建一个将MIME类型映射到合适扩展名的方法

-(NSString *)getExtenstionFromMimeType:(NSString *)mimeType
{

   if ( [mimeType isEqualToString:@""video/mp4"] )
       return @"mp4"; 
   else if  ( ..... ) 
         and so on 

}

您也可以使用MPVideoPlayerController播放音频视频,但您还需要将源媒体作为网址或本地文件路径

如果有人想知道这里是解决方案:

您需要使用在名为MobileCoreServices的框架中声明的UTType函数 基本思想是从MIME类型获取UTI,然后从UTI获取扩展:

MIME类型 - > UTI - >文件扩展名。

可以在此处找到MIME类型到UTI转换的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM