iphone使用TagLib获取音乐信息及注意事项

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 17:11 点击:

TagLib是KDE开源项目的一个很有用的C++函数库,可以用于读取各种格式的歌曲ID3信息,诸如歌名、歌手、专辑等信息。
1.5版的TagLib支持MacOS,我们可以在Cocoa中直接使用TagLib来获取MP3歌曲的ID3信息。上图就是使用TagLib获取的歌曲信息,没有使用iTunes。
 
TagLib的功能强大,用法很简单,只需要在工程中加入TagLib.framework,同时在需要使用TagLib的.h文件中加入如下引用:
 
 
C代码 
NSString *aFile = [[NSBundle mainBundle] pathForResource:@"星座" ofType:@"mp3"]; 
     
    TagLib::FileRef f([aFile UTF8String]); 
    TagLib::Tag *mytag=f.tag(); 
    TagLib::AudioProperties *aproperties=f.audioProperties(); 
    TagLib::String title = mytag->title(); 
    TagLib::String author = mytag->artist(); 
    TagLib::String album = mytag->album(); 
    TagLib::String comment = mytag->comment(); 
    TagLib::String genre = mytag->genre(); 
    TagLib::uint year = mytag->year(); 
    TagLib::uint track = mytag->track(); 
     
    NSString *nsTitle=[NSString stringWithCString:title.toCString(true)  
                                         encoding:NSUTF8StringEncoding];  
    NSString *nsAuthor = [NSString stringWithCString:author.toCString(true) 
                                            encoding:NSUTF8StringEncoding]; 
    NSString *nsAlbum = [NSString stringWithCString:album.toCString(true) 
                                            encoding:NSUTF8StringEncoding]; 
    NSString *nsComment = [NSString stringWithCString:comment.toCString(true) 
                                            encoding:NSUTF8StringEncoding]; 
    NSString *nsGenre = [NSString stringWithCString:genre.toCString(true) 
                                            encoding:NSUTF8StringEncoding]; 
     
    NSLog(@"title:%@", nsTitle); 
    NSLog(@"author:%@", nsAuthor); 
    NSLog(@"album:%@", nsAlbum); 
    NSLog(@"comment:%@", nsComment); 
    NSLog(@"genre:%@", nsGenre); 
    NSLog(@"%d", year); 
    NSLog(@"track:%d", track); 
 
运行结果请看附件!


 作者“wsqwsq000”
 

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • Lexical or Preprocessor Issue 'xxx.h
      • ios学习笔记(二)xcode 4.3.2下实现基本交互
      • ios版本的helloworld
      • iphone(object-c) 内存管理(3) 有效的内存管理 前半部分
      • ios学习笔记(一)xcode 4.3.2下创建第一个ios项目
      • IOS类似iphone通讯录TableView的完整demo【附源码】
      • UITableView一些方法
      • [iPhone中级]iPhone团购信息客户端的开发 (二)
      • iphone(object-c)内存管理(1)
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1