pub struct Tag {
pub title: String,
pub artist: String,
pub album: String,
pub year: String,
pub comment: String,
pub track: Option<u8>,
pub genre_id: u8,
pub speed: Option<u8>,
pub genre_str: Option<String>,
pub start_time: Option<String>,
pub end_time: Option<String>,
}
Expand description
A structure containing ID3v1 metadata.
Fields§
§title: String
The full title (ID3v1 + extension if present).
artist: String
The full artist (ID3v1 + extension if present).
album: String
The full album (ID3v1 + extension if present).
year: String
The release year as four digits.
The ID3v1 format can only represent values between 0 and 9999 inclusive.
comment: String
A free-form comment.
track: Option<u8>
Number of the track. ID3v1.1 data.
genre_id: u8
The genre mapping is standardized up to 79, altough this implementation uses the Winamp extended genre list: https://de.wikipedia.org/wiki/Liste_der_ID3v1-Genres
speed: Option<u8>
1 (slow), 2, 3, 4 (fast) or None when not set. ID3v1 extended data.
genre_str: Option<String>
Free-form genre string. ID3v1 extended data.
start_time: Option<String>
The real start of the track, mmm:ss. ID3v1 extended data.
end_time: Option<String>
The real end of the track, mmm:ss. ID3v1 extended data.
Implementations§
source§impl Tag
impl Tag
sourcepub fn is_candidate(reader: impl Read + Seek) -> Result<bool>
pub fn is_candidate(reader: impl Read + Seek) -> Result<bool>
Checks whether the reader contains an ID3v1 tag.
The reader position will be reset back to the previous position before returning.
sourcepub fn read_from(reader: impl Read + Seek) -> Result<Tag>
pub fn read_from(reader: impl Read + Seek) -> Result<Tag>
Seeks to and reads a ID3v1 tag from the reader.
sourcepub fn read_from_path(path: impl AsRef<Path>) -> Result<Tag>
pub fn read_from_path(path: impl AsRef<Path>) -> Result<Tag>
Attempts to read an ID3v1 tag from the file at the indicated path.
sourcepub fn remove(file: &mut File) -> Result<bool>
👎Deprecated: Use remove_from_file
pub fn remove(file: &mut File) -> Result<bool>
Removes an ID3v1 tag plus possible extended data if any.
The file cursor position will be reset back to the previous position before returning.
Returns true if the file initially contained a tag.
sourcepub fn remove_from_file(file: impl StorageFile) -> Result<bool>
pub fn remove_from_file(file: impl StorageFile) -> Result<bool>
Removes an ID3v1 tag plus possible extended data if any.
The file cursor position will be reset back to the previous position before returning.
Returns true if the file initially contained a tag.