TagCleaner 1.0.0 Release Notes
I'm thrilled to announce the initial release of TagCleaner, a Swift package I've developed for cleaning and standardizing music metadata tags.
What's Included
I've packed TagCleaner with a variety of features to make your metadata cleaning tasks easier:
-
Comprehensive Filtering: I've included a wide range of pre-built filters for common scenarios:
- Release Information:
"Album (Remastered 2021)" -> "Album"
- Performance Type:
"Song - Live at Wembley" -> "Song"
- Content Labels:
"Track [Explicit]" -> "Track"
- Artist Information:
"Artist feat. Guest" -> "Artist"
- Parody and Cover indicators:
"Weird Song (Parody of "Original" by Someone)" -> "Weird Song"
- Media Source Cleanup:
"Video - Official Music Video" -> "Video"
- Lyrics and Language tags:
"Song (With Lyrics)" -> "Song"
- Text Normalization: Handling HTML entities, smart quotes, etc.
- And more!
- Release Information:
-
Flexible API: Use it how you want:
let cleaner = TagCleaner() cleaner.apply("Song (Remastered)", filter: FilterDirectory.releaseInformation.remaster)
-
@TCFilteredString Property Wrapper: Automatically clean your model properties:
struct Track { @TCFilteredString(filters: FilterDirectory.releaseInformation.remaster) var title: String }
-
RegexBuilder Integration: I've leveraged Swift's new RegexBuilder for powerful pattern matching.
Compatibility
I've ensured TagCleaner works across Apple platforms:
- iOS 16.0+
- macOS 13.0+
- watchOS 9.0+
- tvOS 16.0+
- Swift 5.9+
Acknowledgement
I want to give a big shout-out to the Web Scrobbler team. Their metadata-filter JavaScript library was the inspiration for this project.
What's Next
I'm committed to improving TagCleaner and I'd love to hear your thoughts. Please don't hesitate to report issues or request features on the GitHub repository.
Thank you for checking out TagCleaner! I hope it makes your metadata management a breeze.