Ich habe den benutzerdefinierten Player mithilfe von AVAudioPlayer erstellt. Nun möchte ich die Details der Audiodatei wie Künstlername, Albumname usw. abrufen, die im Ressourcenordner hinzugefügt werden.
MPMusicPlayer stellt die API zum Abrufen der Details zur Verfügung, verwendet jedoch die iPod-Bibliothek und verwendet die Ressource nicht aus der Sandbox der Anwendung. Also wird MPMusicPlayer in diesem Szenario nicht funktionieren.
Also, wie können wir die Details der Audiodatei im iPhone holen.
Sie können diese Informationen über AudioToolbox.framework
abrufen. Die AudioToolbox.framework
ist eine C-API, also habe ich einen Objective-C-Wrapper dafür geschrieben:
ID3Tag .h:
%Vor%ID3TagParser.h
%Vor%ID3TagParser.m
%Vor% Ich sehe, dass der Code zum Lesen der Tags Wayne Posts wird zu oft kopiert.
Wenn Sie kAudioFilePropertyInfoDictionary
verwenden, benötigen Sie id3DataSize nicht, müssen keine rohen ID3Tag-Daten lesen und id3TagSizeLength id3TagSize werden auch nicht verwendet. Öffnen Sie einfach die Datei und lesen Sie das Tag:
Dictionary-Schlüssel sind in AudioFile.h definiert, beginnend mit kAFInfoDictionary.
Es gibt jedoch einen anderen Tag-Leseschlüssel, der andere Ergebnisse (mit anderen Schlüsseln) zurückgibt:
%Vor%Tags und Links objective-c iphone id3 ipod albumart