2012-11-28 1 views
1

지금, 나는 사용하여 현재 재생중인 곡의 정보를 받고 있어요 :액세스 메타 데이터

MPMusicPlayerController *controller = [MPMusicPlayerController iPodMusicPlayer]; 

그러나, 실제로 통해 재생하는 트랙이 유일한 작품 iPod 플레이어.

iPod 뮤직 플레이어 도크를 차지하는 다른 앱에서 이와 동일한 유형의 정보를 얻을 수있는 방법이 있는지 알고 싶습니다.

+1

아니요. – nycynik

답변

0

자세히 조사한 후에는 iPod 플레이어에서 메타 데이터를 가져 오는 것만 가능합니다.

0

당신이 찾고있는 것이 확실하지 않지만 AVURLAsset을 사용하여 실제 파일에서 메타 데이터를 얻을 수 있습니다. mp3 및 m4a 파일에 대한 메타 데이터를 찾는 데이 방법을 사용했지만 다른 형식도 사용할 수 있습니다. 자세한 내용은 문서 도구를 참조하십시오.

AVURLAsset *asset = [[AVURLAsset alloc] initWithUrl:@"song.mp3" options:nil]; 
if (asset != nil) 
{ 
    NSArray *formatArray = asset.availableMetadataFormats; 
    if ([formatArray count] > 0) 
    { 
     NSArray *array = [asset metadataForFormat:[formatArray objectAtIndex:0]; 
     NSString *artist = @""; 
     NSString *songTitle = @""; 

     for (AVMetadataItem *metadata in array) 
     { 
      if ([metadata.commonKey isEqualToString:@"artist"]) 
       artist = metadata.stringValue; 
      else if ([metadata.commonKey isEqualToString:@"title"]) 
       songTitle = metadata.stringValue; 
      etc, ... 
     } 
    } 
} 
+0

현재 재생중인 트랙 다음입니다. 노래가 Pandora를 통해 재생되는 것과 마찬가지로, 관련 메타 데이터를 가져오고 싶습니다. –