What's new in ID3v2 Library 2.0.90.210
Aug 8, 2022
- Added ID3v2 compression support for Lazarus-FPC
- Fixed ID3v2Library.pas compile with Lazarus-FPC
New in ID3v2 Library 2.0.79.188 (Mar 9, 2021)
- Added 'TID3v2Tag.APICTextEncodingToWrite' that can be set to write UTF8, ANSI or unicode (default) APIC descriptions
- Added 'TID3v2Tag.RewriteCoverArts()' to be used with above, re-set all APIC frame descriptions to the above set mode
New in ID3v2 Library 2.0.76.184 (Oct 1, 2020)
- Speed-up with buffered streams when loading/saving much data.
New in ID3v2 Library 2.0.75.182 (Aug 3, 2020)
- Fixed processing WAV and AIFF files with odd sized chunks
New in ID3v2 Library 2.0.74.180 (Jun 28, 2020)
- Speed-up with buffered streams when loading/saving much data.
New in ID3v2 Library 2.0.70.176 (Jun 17, 2020)
- MPEG detection now if finds an MPEG sync, tests if there is a next MPEG frame sync again at the calculated (where should be) position - MPEG detection should be a lot reliable now
- Fixed building for OSX
New in ID3v2 Library 2.0.69.174 (Jun 17, 2020)
- Speed-up with buffered streams when loading/saving much data
- In buffered save mode, if new file needs to be created the tags are written with buffering and the rest of the file is copied non-buffered
New in ID3v2 Library 2.0.68.172 (Aug 19, 2019)
- Added average bit rate reporting for VBR MPEG files.
New in ID3v2 Library 2.0.63.159 (Oct 21, 2018)
- Added 'AlreadyParsed' variable for tags and there is a 'ReSetAlreadyParsedState' method
- 'Frames' list is now a generic TList
New in ID3v2 Library 2.0.61.157 (Jun 6, 2018)
- Fixed ID3v1 Lyrics tag size
New in ID3v2 Library 2.0.60.156 (May 4, 2018)
- Fixed possible floating point division by zero for playtime.
New in ID3v2 Library 2.0.59.155 (Mar 21, 2018)
- Fixed, added sanity check for DeleteFrame() so now should be compatible with previous implementations
New in ID3v2 Library 2.0.57.151 (Feb 28, 2018)
- Fixed saving tags on NEXTGEN when the destination file needs to be re-created.
New in ID3v2 Library 2.0.35.85 (Nov 17, 2014)
- Fixed reading UTF-8 TXXX frames.
New in ID3v2 Library 2.0.34.84 (Jun 30, 2014)
- Fixed nextgen (Android/iOS) compile.
New in ID3v2 Library 2.0.32.82 (Jun 14, 2014)
- Added TID3v2Tag.DSFInfo.BitRate property
- Added TID3v2Tag.WAVInfo record
- Added TID3v2Tag.MPEGInfo record
- Added TID3v2Tag.AIFFInfo record
- Added parsing of 'Xing', 'Info' and 'VBRI' information
New in ID3v2 Library 2.0.31.73 (Jun 11, 2014)
- Added TID3v2Tag.DSFInfo class
- Added TID3v2Tag.SourceFileType property
New in ID3v2 Library 2.0.30.72 (Jun 7, 2014)
- Support of DSD .dsf audio files
New in ID3v2 Library 2.0.29.71 (May 16, 2014)
- Added TID3v1Tag.Assign() function
- Added TID3v1Tag.LoadFromMemory() function
- Added TID3v2Tag.GetCoverPictureInfoPointer() function
New in ID3v2 Library 2.0.28.70 (Apr 23, 2014)
- Added 'Position' property which reports tag's start position in the file
New in ID3v2 Library 2.0.28.69 (Apr 18, 2014)
- Added checking of invalid WAV and RF64 files before saving the tag
- Fixed writing ID3v2 tags in WAV RF64 files
New in ID3v2 Library 2.0.28.68 (Mar 24, 2014)
- When saving ID3v2 tags and the new tag + padding is smaller then the existing tag, the tag is re-written with new padding and a little speed-up in ID3v2 tag writing.
New in ID3v2 Library 2.0.26.64 (Dec 9, 2013)
- Fixed ID3v1 0s after the tag field values
New in ID3v2 Library 2.0.26.63 (Dec 5, 2013)
- Fixed ID3v1 tag field values when their length is equal to max. length
New in ID3v2 Library 2.0.26.62 (Dec 2, 2013)
- Fixed ID3v1 0s after the tag field values
New in ID3v2 Library 2.0.26.61 (Nov 16, 2013)
- Fixed SetUserDefinedURLLink(), SetUserDefinedTextInformation() and SetPopularimeter() functions
New in ID3v2 Library 2.0.25.60 (Nov 9, 2013)
- Fixed some functions to set the tag and fixed tutorial .exes
New in ID3v2 Library 2.0.24.59 (Nov 2, 2013)
- Fixed returning ANSI field values with the system locale character set
New in ID3v2 Library 2.0.23.58 (Oct 31, 2013)
- Added support for Delphi XE5 iOS and Android build target
New in ID3v2 Library 2.0.22.52 (Jul 8, 2013)
- Added "ReturnNativeText" mode for function GetUnicodeText to return undecoded UTF8 fields
- Fixed SaveToFile() return value if a file couldn't be opened
New in ID3v2 Library 2.0.21.51 (Jun 4, 2013)
- Fixed reading tags endless loop when there is no zero ending character
New in ID3v2 Library 2.0.20.50 (May 29, 2013)
New in ID3v2 Library 2.0.19.47 (May 21, 2013)
- Fixed function to get multiple values for Txxx frames
- Fixed function to get multiple values for TXXX frames
New in ID3v2 Library 2.0.18.46 (May 20, 2013)
- Added function to get/set multiple values for Txxx frames
- Added function to get/set multiple values for TXXX frames
- Fixed reading WAV and AIFF tags
New in ID3v2 Library 2.0.17.39 (Apr 20, 2013)
- Added Lyrics3v2 loading/saving option to TID3v1Tag class
- Added new ID3v2 function GetUnicodeCoverPictureInfo()
New in ID3v2 Library 2.0.16.38 (Mar 11, 2013)
- Added support for writing frame encryption flag and byte and grouping flag and byte for ID3v2.3 tags
New in ID3v2 Library 2.0.10.26 (Apr 12, 2012)
- Fixed writing corrupted tag when frame's data size was 0 (everything beyond the frame was lost)
- Fixed remove ID3v2 tag function when theres wasn't a tag
- Fixed removing ID3v2 tag leaving the previous file
New in ID3v2 Library 2.0.9.24 (Mar 6, 2012)
- The URL managing functions are modified:
- The GetUnicodeURL() and SetUnicodeURL() functions are to be used for official URL frames (WCOM, WCOP, etc.).
- The old GetUnicodeURL() and SetUnicodeURL() is now called GetUnicodeUserDefinedURLLink() (for WXXX).
- +Added functions for TXXX frames:
- function FindCustomFrame(FrameID: AnsiString; Description: String): Integer;
- function GetUnicodeUserDefinedTextInformation(FrameIndex: Integer; var Description: String): String;
- function SetUnicodeUserDefinedTextInformation(FrameIndex: Integer; Description: String; Text: String): Boolean;
- The 1. is to make things easier. Use FindCustomFrame() with a Description you are looking for and if there is such a frame it will give you an index to be used with GetUnicodeUserDefinedTextInformation() and SetUnicodeUserDefinedTextInformation().
- Fixed geting unicode descriptions now are returned without a BOM
- Added popularimeter functions
- Added support for AIFC (compressed AIFF) files
New in ID3v2 Library 2.0.8.18 (Feb 28, 2012)
- iTunes compatible reading-writing-removing for WAV and AIFF ID3v2 tags
New in ID3v2 Library 2.0.6.12 (Feb 11, 2012)
- Fixed loading frames with set flags on Win64
New in ID3v2 Library 2.0.6.10 (Dec 5, 2011)
- Fixed saving ID3v2 Tag to a locked file returns an error and no temporary files are left
- A little clean up of saving code
New in ID3v2 Library 2.0.5.8 (Nov 7, 2011)
- Fixed ID3v1 exception on an invalid genre
- OSX support
- FireMonkey example application
New in ID3v2 Library 2.0.4.7 (Nov 7, 2011)
- ID3v2.3 with extended headers are read, but saved back without extended header
- ID3v2.4 with extended headers are possibly read partially, but saved back without extended heade
New in ID3v2 Library 2.0.3.6 (Nov 7, 2011)
- Fixed ID3v2 tag size with compressed frames
New in ID3v2 Library 2.0.3.5 (Nov 7, 2011)
- Moved RemoveTag() to a separate function (no need for an object) new name ID3v2RemoveTag() and ID3v1RemoveTag()
New in ID3v2 Library 2.0.3.4 (Nov 7, 2011)
- Fixed when trying saving not supported ID3v2 tag version an ID3V2LIBRARY_ERROR_NOT_SUPPORTED_VERSION is given back
- RemoveTag is more compatible, supports removing ID3v2.2 tag and all versions if they obey the specification
New in ID3v2 Library 2.0.3.3 (Nov 7, 2011)
- Fixed when saving ID3v2.3 tag a false stream length value was written
New in ID3v2 Library 2.0.3.2 (Nov 7, 2011)
- Fixed when loading an old ID3v2.2 tag doesn't fail but reports an ID3V2LIBRARY_ERROR_NOT_SUPPORTED_VERSION error