zoukankan      html  css  js  c++  java
  • IOS读取mp3的摘要信息

     前一段一个朋友问我有没有方法在iPhone下读取mp3的缩略图,我去查查了文档果然是有方法的,写出来方便与大家交流。

     要知道怎么读取首先得知道它是存在哪的,经我了解发现mp3的摘要信息存储在mp3的开头或末尾的若干字节里。主流的格式是id3,还有itunes之类的。我们这次要读的就是id3,相关信息就自己去wiki或是百度百科去吧,我就不粘贴了。上代码:

      1     //取出资源文件下的所有mp3路径

    复制代码
     2     NSArray *mp3Array = [NSBundle pathsForResourcesOfType:@"mp3" inDirectory:[[NSBundle mainBundle] resourcePath]];
     3     for (NSString *filePath in mp3Array) {
     4         //IOS的资源路径封装,网络文件用urlWithPath:
     5         NSURL *fileURL = [NSURL fileURLWithPath:filePath];
     6         AVURLAsset *mp3Asset = [AVURLAsset URLAssetWithURL:fileURL options:nil];
     7         for (NSString *format in [mp3Asset availableMetadataFormats]) {
     8             NSLog(@"format type = %@",format);
     9             for (AVMetadataItem *metadataItem in [mp3Asset metadataForFormat:format]) {
    10                 NSLog(@"commonKey = %@",metadataItem.commonKey);
    11                 //artwork这个key对应的value里面存的就是封面缩略图,其它key可以取出其它摘要信息,例如title - 标题
    12                 if ([metadataItem.commonKey isEqualToString:@"artwork"]) {
    13                     NSData *data = [(NSDictionary*)metadataItem.value objectForKey:@"data"];
    14                     NSString *mime = [(NSDictionary*)metadataItem.value objectForKey:@"MIME"];
    15                     NSLog(@"mime = %@, data = %@, image = %@", mime, data, [UIImage imageWithData:data]);
    16                     break;
    17                 }
    18             }
    19         }
    复制代码  }

      

     这个读取方法,我认为是有缺陷的,我在mac下文件预览有封面缩略图的mp3有一些是用这方法读不出来的,如果有哪位朋友知道的话还望赐教。 

  • 相关阅读:
    年度榜单:2013年最流行的15款免费英文字体
    优秀案例:12个精美的设计工作室 & 设计公司网站
    jQuery Label Better – 友好的表单输入框提示插件
    CSS 魔法系列:纯 CSS 绘制各种图形《系列六》
    Feathers JS – 基于 Express 构建数据驱动的服务
    Node.app – 用于 iOS App 开发的 Node.js 解释器
    100款免费的圣诞节矢量图标素材(PSD & SVG)
    Web 开发人员不能错过的 jQuery 教程和案例
    Headroom.js – 快速响应用户的页面滚动操作
    10个实用的 CSS3 按钮效果制作教程
  • 原文地址:https://www.cnblogs.com/ligun123/p/2545352.html
Copyright © 2011-2022 走看看