I'm having difficulty writing metadata for audio files:
AudioFileID fileID = nil;
AudioFileOpenURL((__bridge CFURLRef) url, kAudioFileReadWritePermission, 0, &fileID );
CFDictionaryRef piDict = nil;
UInt32 piDataSize = sizeof(piDict);
AudioFileGetProperty( fileID, kAudioFilePropertyInfoDictionary, &piDataSize, &piDict );
NSLog(@"%@", (__bridge NSDictionary *)piDict);
NSMutableDictionary *dict = (__bridge NSMutableDictionary*)piDict;
[dict setObject:@"NEW ALBUM NAME" forKey:@"album"];
piDict = (__bridge CFDictionaryRef)dict;
piDataSize = sizeof(dict);
OSStatus status = AudioFileSetProperty(fileID, kAudioFilePropertyInfoDictionary, piDataSize, &piDict);
NSLog on line # 6 gives me a good dictionary with ID3 info. But when I want to change (for example, album name, line # 9), do I get the message "OSStatus"? in return.
Anyone who can give me directions on what I'm doing wrong. Or maybe even a better / simpler / faster way to edit ID3 tags / metadata for audio files.
basvk source
share