#[non_exhaustive]pub enum ItemKey {
Show 103 variants
AlbumTitle,
SetSubtitle,
ShowName,
ContentGroup,
TrackTitle,
TrackSubtitle,
OriginalAlbumTitle,
OriginalArtist,
OriginalLyricist,
AlbumTitleSortOrder,
AlbumArtistSortOrder,
TrackTitleSortOrder,
TrackArtistSortOrder,
ShowNameSortOrder,
ComposerSortOrder,
AlbumArtist,
TrackArtist,
Arranger,
Writer,
Composer,
Conductor,
Director,
Engineer,
Lyricist,
MixDj,
MixEngineer,
MusicianCredits,
Performer,
Producer,
Publisher,
Label,
InternetRadioStationName,
InternetRadioStationOwner,
Remixer,
DiscNumber,
DiscTotal,
TrackNumber,
TrackTotal,
Popularimeter,
ParentalAdvisory,
RecordingDate,
Year,
ReleaseDate,
OriginalReleaseDate,
Isrc,
Barcode,
CatalogNumber,
Work,
Movement,
MovementNumber,
MovementTotal,
MusicBrainzRecordingId,
MusicBrainzTrackId,
MusicBrainzReleaseId,
MusicBrainzReleaseGroupId,
MusicBrainzArtistId,
MusicBrainzReleaseArtistId,
MusicBrainzWorkId,
FlagCompilation,
FlagPodcast,
FileType,
FileOwner,
TaggingTime,
Length,
OriginalFileName,
OriginalMediaType,
EncodedBy,
EncoderSoftware,
EncoderSettings,
EncodingTime,
ReplayGainAlbumGain,
ReplayGainAlbumPeak,
ReplayGainTrackGain,
ReplayGainTrackPeak,
AudioFileUrl,
AudioSourceUrl,
CommercialInformationUrl,
CopyrightUrl,
TrackArtistUrl,
RadioStationUrl,
PaymentUrl,
PublisherUrl,
Genre,
InitialKey,
Color,
Mood,
Bpm,
IntegerBpm,
CopyrightMessage,
License,
PodcastDescription,
PodcastSeriesCategory,
PodcastUrl,
PodcastGlobalUniqueId,
PodcastKeywords,
Comment,
Description,
Language,
Script,
Lyrics,
AppleXid,
AppleId3v2ContentGroup,
Unknown(String),
}Expand description
A generic representation of a tag’s key
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AlbumTitle
SetSubtitle
ShowName
ContentGroup
TrackTitle
TrackSubtitle
OriginalAlbumTitle
OriginalArtist
OriginalLyricist
AlbumTitleSortOrder
AlbumArtistSortOrder
TrackTitleSortOrder
TrackArtistSortOrder
ShowNameSortOrder
ComposerSortOrder
AlbumArtist
TrackArtist
Arranger
Writer
Composer
Conductor
Director
Engineer
Lyricist
MixDj
MixEngineer
MusicianCredits
Performer
Producer
Publisher
Label
InternetRadioStationName
InternetRadioStationOwner
Remixer
DiscNumber
DiscTotal
TrackNumber
TrackTotal
Popularimeter
ParentalAdvisory
RecordingDate
Year
Year
ReleaseDate
Release date
The release date of a podcast episode or any other kind of release.
https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#release-date-10
OriginalReleaseDate
Original release date/year
https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#original-release-date-1 https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#original-release-year-1
Isrc
Barcode
CatalogNumber
Work
Movement
MovementNumber
MovementTotal
MusicBrainzRecordingId
MusicBrainz Recording ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#id21
MusicBrainzTrackId
MusicBrainz Track ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#id24
MusicBrainzReleaseId
MusicBrainz Release ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#id23
MusicBrainzReleaseGroupId
MusicBrainz Release Group ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#musicbrainz-release-group-id
MusicBrainzArtistId
MusicBrainz Artist ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#id17
MusicBrainzReleaseArtistId
MusicBrainz Release Artist ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#id22
MusicBrainzWorkId
MusicBrainz Work ID
Textual representation of the UUID.
Reference: https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#musicbrainz-work-id
FlagCompilation
FlagPodcast
FileType
FileOwner
TaggingTime
Length
OriginalFileName
OriginalMediaType
EncodedBy
EncoderSoftware
EncoderSettings
EncodingTime
ReplayGainAlbumGain
ReplayGainAlbumPeak
ReplayGainTrackGain
ReplayGainTrackPeak
AudioFileUrl
AudioSourceUrl
CommercialInformationUrl
CopyrightUrl
TrackArtistUrl
RadioStationUrl
PaymentUrl
PublisherUrl
Genre
InitialKey
Color
Mood
Bpm
Decimal BPM value with arbitrary precision
Only read and written if the tag format supports a field for decimal BPM values that are not restricted to integer values.
Not supported by ID3v2 that restricts BPM values to integers in TBPM.
IntegerBpm
Non-fractional BPM value with integer precision
Only read and written if the tag format has a field for integer BPM values,
e.g. ID3v2 (TBPM frame)
and MP4 (tmpo integer atom).
CopyrightMessage
License
PodcastDescription
PodcastSeriesCategory
PodcastUrl
PodcastGlobalUniqueId
PodcastKeywords
Comment
Description
Language
Script
Lyrics
AppleXid
AppleId3v2ContentGroup
Unknown(String)
When a key couldn’t be mapped to another variant
This will not allow writing keys that are out of spec (Eg. ID3v2.4 frame IDs must be 4 characters)
Implementations§
source§impl ItemKey
impl ItemKey
sourcepub fn from_key(tag_type: TagType, key: &str) -> Self
pub fn from_key(tag_type: TagType, key: &str) -> Self
Map a format specific key to an ItemKey
NOTE: If used with ID3v2, this will only check against the ID3v2.4 keys.
If you wish to use a V2 or V3 key, see upgrade_v2 and upgrade_v3