At the moment I can only read them in different ways. The first is using CoreAudio. The second is using Taglib .

For the second method, I can not find examples. Because, for me, everything is complicated.

For the first method, I understand you should use

AudioFileSetProperty 

However, what property to specify is not clear. Since such properties as

 kAudioFormatProperty_ID3TagToDictionary, kAudioFilePropertyInfoDictionary 

read only.

  • one
    To change ID3 tags, like any other file metadata, it must be completely rebuilt with a new metadata. I doubt very much that this can be made available through CoreAudio methods. ffmpeg or libav to help. - Max Mikheyenko

1 answer 1

I found this solution :

 TLMetaData *myMetaDataPlayer; myMetaDataPlayer = [[TLMetaData alloc] initWithURL:url openReadOnly:NO error:nil]; //ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ [myMetaDataPlayer setTitle:@"newTitle"]; //помСняли [myMetaDataPlayer synchronizeValuesWithMetaData:myMetaDataPlayer]; //сохранили