[][src]Struct id3::v1::Tag

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>,
}

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.

Methods

impl Tag[src]

pub fn new() -> Tag[src]

Creates a new empty ID3v1 tag.

pub fn is_candidate(
    reader: impl Read + Seek
) -> Result<bool>
[src]

Checks whether the reader contains an ID3v1 tag.

The reader position will be reset back to the previous position before returning.

pub fn read_from(
    reader: impl Read + Seek
) -> Result<Tag>
[src]

Seeks to and reads a ID3v1 tag from the reader.

pub fn remove(file: &mut File) -> Result<bool>[src]

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.

pub fn genre(&self) -> Option<&str>[src]

Returns genre_str, falling back to translating genre_id to a string.

Trait Implementations

impl Eq for Tag[src]

impl Clone for Tag[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl PartialEq<Tag> for Tag[src]

impl Default for Tag[src]

impl From<Tag> for Tag[src]

impl Hash for Tag[src]

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl Debug for Tag[src]

Auto Trait Implementations

impl Send for Tag

impl Sync for Tag

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]