Supported Formats
Vorbis Comments are found in:- OGG Vorbis - Primary format (Perfect support)
- OGG Opus - Opus audio in OGG (Perfect support)
- OGG FLAC - FLAC audio in OGG (Perfect support)
- FLAC - Native FLAC files (Perfect support)
Status
Perfect - Full specification compliance with comprehensive tag support.Tag Structure
Vorbis Comments use a simpleKEY=VALUE format:
- Keys are case-insensitive ASCII
- Values are UTF-8 encoded text
- Multiple values for the same key are allowed
- No length restrictions (practical limits apply)
- Includes vendor string identifying the encoder
Standard Tag Fields
Symphonia maps common Vorbis Comment fields to standard keys:Basic Information
TITLE→ TrackTitleARTIST→ ArtistALBUM→ AlbumALBUMARTIST→ AlbumArtistDATE→ DateORIGINALDATE→ OriginalDateTRACKNUMBER→ TrackNumberTRACKTOTAL/TOTALTRACKS→ TrackTotalDISCNUMBER→ DiscNumberDISCTOTAL/TOTALDISCS→ DiscTotalGENRE→ Genre
Credits and Contributors
COMPOSER→ ComposerCONDUCTOR→ ConductorPERFORMER→ PerformerLYRICIST→ LyricistWRITER/AUTHOR→ WriterARRANGER→ ArrangerENGINEER→ EngineerPRODUCER→ ProducerDJMIXER→ MixDjMIXER→ MixEngineerREMIXER→ RemixerENSEMBLE→ Ensemble
Additional Metadata
COMMENT→ CommentDESCRIPTION→ DescriptionCOPYRIGHT→ CopyrightLICENSE→ LicenseLABEL/ORGANIZATION/PUBLISHER→ LabelBPM→ BpmISRC→ IdentIsrcBARCODE/EAN/UPN/UPC→ IdentBarcodeCATALOGNUMBER/CATALOG→ IdentCatalogNumberLANGUAGE→ LanguageOPUS→ Opus (work number)PART→ PartVERSION→ VersionMOOD→ Mood
Sorting Tags
TITLESORT→ SortTrackTitleARTISTSORT→ SortArtistALBUMSORT→ SortAlbumALBUMARTISTSORT→ SortAlbumArtist
MusicBrainz Identifiers
MUSICBRAINZ_ARTISTID→ MusicBrainzArtistIdMUSICBRAINZ_ALBUMID→ MusicBrainzAlbumIdMUSICBRAINZ_ALBUMARTISTID→ MusicBrainzAlbumArtistIdMUSICBRAINZ_TRACKID→ MusicBrainzTrackIdMUSICBRAINZ_RELEASETRACKID→ MusicBrainzReleaseTrackIdMUSICBRAINZ_RELEASEGROUPID→ MusicBrainzReleaseGroupIdMUSICBRAINZ_WORKID→ MusicBrainzWorkIdMUSICBRAINZ_RECORDINGID→ MusicBrainzRecordingIdMUSICBRAINZ_DISCID→ MusicBrainzDiscId
ReplayGain
REPLAYGAIN_TRACK_GAIN→ ReplayGainTrackGainREPLAYGAIN_TRACK_PEAK→ ReplayGainTrackPeakREPLAYGAIN_ALBUM_GAIN→ ReplayGainAlbumGainREPLAYGAIN_ALBUM_PEAK→ ReplayGainAlbumPeak
Album Artwork
Vorbis Comments support embedded images via Base64-encoded FLAC picture blocks:- Uses
METADATA_BLOCK_PICTUREfield - Contains FLAC PICTURE metadata block encoded in Base64
- Supports multiple images with different types
- Common types: front cover, back cover, artist photo
Reading Vorbis Comments
Basic Tag Reading
Reading Album Artwork
Reading Multiple Values
Vorbis Comments allow multiple values for the same field:Custom Tags
Handling Tag Updates
In streaming scenarios, Vorbis Comments can be updated mid-stream (e.g., for internet radio):Writing Custom Tools
Extract All Metadata
Vendor String
Vorbis Comments include a vendor string identifying the encoder:Case Sensitivity
Field names are case-insensitive according to the Vorbis Comment specification:ARTIST,Artist, andartistare equivalent- Symphonia normalizes all comparisons
Known Limitations
- None - Vorbis Comment support is complete and tested
- Custom/non-standard tags are preserved but may not map to standard keys
Crate Information
Crate:symphonia-metadata
Version: 0.5.5
License: MPL-2.0
Safety: 100% safe Rust (forbids unsafe code)
See Also
- ID3 Tags - Metadata format for MP3 and other formats
- OGG Format - Container format using Vorbis Comments