[][src]Struct mp4parse::MetadataBox

pub struct MetadataBox {
    pub album: Option<TryString>,
    pub artist: Option<TryString>,
    pub album_artist: Option<TryString>,
    pub comment: Option<TryString>,
    pub year: Option<TryString>,
    pub title: Option<TryString>,
    pub genre: Option<Genre>,
    pub track_number: Option<u8>,
    pub disc_number: Option<u8>,
    pub total_tracks: Option<u8>,
    pub total_discs: Option<u8>,
    pub composer: Option<TryString>,
    pub encoder: Option<TryString>,
    pub encoded_by: Option<TryString>,
    pub beats_per_minute: Option<u8>,
    pub copyright: Option<TryString>,
    pub compilation: Option<bool>,
    pub advisory: Option<AdvisoryRating>,
    pub rating: Option<TryString>,
    pub grouping: Option<TryString>,
    pub media_type: Option<MediaType>,
    pub podcast: Option<bool>,
    pub category: Option<TryString>,
    pub keyword: Option<TryString>,
    pub podcast_url: Option<TryString>,
    pub podcast_guid: Option<TryString>,
    pub description: Option<TryString>,
    pub long_description: Option<TryString>,
    pub lyrics: Option<TryString>,
    pub tv_network_name: Option<TryString>,
    pub tv_show_name: Option<TryString>,
    pub tv_episode_name: Option<TryString>,
    pub tv_episode_number: Option<u8>,
    pub tv_season: Option<u8>,
    pub purchase_date: Option<TryString>,
    pub gapless_playback: Option<bool>,
    pub cover_art: Option<TryVec<TryVec<u8>>>,
    pub owner: Option<TryString>,
    pub hd_video: Option<bool>,
    pub sort_name: Option<TryString>,
    pub sort_album: Option<TryString>,
    pub sort_artist: Option<TryString>,
    pub sort_album_artist: Option<TryString>,
    pub sort_composer: Option<TryString>,
}

Represents the contents of 'ilst' atoms within a metadata box 'meta', parsed as iTunes metadata using the conventional tags.

Fields

album: Option<TryString>

The album name, '©alb'

artist: Option<TryString>

The artist name '©art' or '©ART'

album_artist: Option<TryString>

The album artist 'aART'

comment: Option<TryString>

Track comments '©cmt'

year: Option<TryString>

The date or year field '©day'

This is stored as an arbitrary string, and may not necessarily be in a valid date format.

title: Option<TryString>

The track title '©nam'

genre: Option<Genre>

The track genre '©gen' or 'gnre'.

track_number: Option<u8>

The track number 'trkn'.

disc_number: Option<u8>

The disc number 'disk'

total_tracks: Option<u8>

The total number of tracks on the disc, stored in 'trkn'

total_discs: Option<u8>

The total number of discs in the album, stored in 'disk'

composer: Option<TryString>

The composer of the track '©wrt'

encoder: Option<TryString>

The encoder used to create this track '©too'

encoded_by: Option<TryString>

The encoded-by settingo this track '©enc'

beats_per_minute: Option<u8>

The tempo or BPM of the track 'tmpo'

copyright: Option<TryString>

Copyright information of the track 'cprt'

compilation: Option<bool>

Whether or not this track is part of a compilation 'cpil'

advisory: Option<AdvisoryRating>

The advisory rating of this track 'rtng'

rating: Option<TryString>

The personal rating of this track, 'rate'.

This is stored in the box as string data, but the format is an integer percentage from 0 - 100, where 100 is displayed as 5 stars out of 5.

grouping: Option<TryString>

The grouping this track belongs to '©grp'

media_type: Option<MediaType>

The media type of this track 'stik'

podcast: Option<bool>

Whether or not this track is a podcast 'pcst'

category: Option<TryString>

The category of ths track 'catg'

keyword: Option<TryString>

The podcast keyword 'keyw'

podcast_url: Option<TryString>

The podcast url 'purl'

podcast_guid: Option<TryString>

The podcast episode GUID 'egid'

description: Option<TryString>

The description of the track 'desc'

long_description: Option<TryString>

The long description of the track 'ldes'.

Unlike other string fields, the long description field can be longer than 256 characters.

lyrics: Option<TryString>

The lyrics of the track '©lyr'.

Unlike other string fields, the lyrics field can be longer than 256 characters.

tv_network_name: Option<TryString>

The name of the TV network this track aired on 'tvnn'.

tv_show_name: Option<TryString>

The name of the TV Show for this track 'tvsh'.

tv_episode_name: Option<TryString>

The name of the TV Episode for this track 'tven'.

tv_episode_number: Option<u8>

The number of the TV Episode for this track 'tves'.

tv_season: Option<u8>

The season of the TV Episode of this track 'tvsn'.

purchase_date: Option<TryString>

The date this track was purchased 'purd'.

gapless_playback: Option<bool>

Whether or not this track supports gapless playback 'pgap'

cover_art: Option<TryVec<TryVec<u8>>>

Any cover artwork attached to this track 'covr'

'covr' is unique in that it may contain multiple 'data' sub-entries, each an image file. Here, each subentry's raw binary data is exposed, which may contain image data in JPEG or PNG format.

owner: Option<TryString>

The owner of the track 'ownr'

hd_video: Option<bool>

Whether or not this track is HD Video 'hdvd'

sort_name: Option<TryString>

The name of the track to sort by 'sonm'

sort_album: Option<TryString>

The name of the album to sort by 'soal'

sort_artist: Option<TryString>

The name of the artist to sort by 'soar'

sort_album_artist: Option<TryString>

The name of the album artist to sort by 'soaa'

sort_composer: Option<TryString>

The name of the composer to sort by 'soco'

Trait Implementations

impl Debug for MetadataBox[src]

impl Default for MetadataBox[src]

Auto Trait Implementations

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.