itunes

package
v0.0.0-...-a3fba17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 4, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package itunes implements metadata models found in Apple iTunes audio and video files.

iTunes-style metadata as found in .mp4, .m4a, .m4p, .m4v, .m4b files

Index

Constants

This section is empty.

Variables

View Source
var (
	NsITunes = xmp.NewNamespace("iTunes", "http://ns.apple.com/itunes/1.0/", NewModel)
)

Functions

func NewModel

func NewModel(name string) xmp.Model

Types

type AppleStoreAccountType

type AppleStoreAccountType int
const (
	AppleStoreAccountTypeITunes AppleStoreAccountType = 0
	AppleStoreAccountTypeAOL    AppleStoreAccountType = 1
)

type AppleStoreCountry

type AppleStoreCountry int
const (
	AppleStoreUSA AppleStoreCountry = 143441 // United States
	AppleStoreFRA AppleStoreCountry = 143442 // France
	AppleStoreDEU AppleStoreCountry = 143443 // Germany
	AppleStoreGBR AppleStoreCountry = 143444 // United Kingdom
	AppleStoreAUT AppleStoreCountry = 143445 // Austria
	AppleStoreBEL AppleStoreCountry = 143446 // Belgium
	AppleStoreFIN AppleStoreCountry = 143447 // Finland
	AppleStoreGRC AppleStoreCountry = 143448 // Greece
	AppleStoreIRL AppleStoreCountry = 143449 // Ireland
	AppleStoreITA AppleStoreCountry = 143450 // Italy
	AppleStoreLUX AppleStoreCountry = 143451 // Luxembourg
	AppleStoreNLD AppleStoreCountry = 143452 // Netherlands
	AppleStorePRT AppleStoreCountry = 143453 // Portugal
	AppleStoreESP AppleStoreCountry = 143454 // Spain
	AppleStoreCAN AppleStoreCountry = 143455 // Canada
	AppleStoreSWE AppleStoreCountry = 143456 // Sweden
	AppleStoreNOR AppleStoreCountry = 143457 // Norway
	AppleStoreDNK AppleStoreCountry = 143458 // Denmark
	AppleStoreCHE AppleStoreCountry = 143459 // Switzerland
	AppleStoreAUS AppleStoreCountry = 143460 // Australia
	AppleStoreNZL AppleStoreCountry = 143461 // New Zealand
	AppleStoreJPN AppleStoreCountry = 143462 // Japan
	AppleStoreHKG AppleStoreCountry = 143463 // Hong Kong
	AppleStoreSGP AppleStoreCountry = 143464 // Singapore
	AppleStoreCHN AppleStoreCountry = 143465 // China
	AppleStoreKOR AppleStoreCountry = 143466 // Republic of Korea
	AppleStoreIND AppleStoreCountry = 143467 // India
	AppleStoreMEX AppleStoreCountry = 143468 // Mexico
	AppleStoreRUS AppleStoreCountry = 143469 // Russia
	AppleStoreTWN AppleStoreCountry = 143470 // Taiwan
	AppleStoreVNM AppleStoreCountry = 143471 // Vietnam
	AppleStoreZAF AppleStoreCountry = 143472 // South Africa
	AppleStoreMYS AppleStoreCountry = 143473 // Malaysia
	AppleStorePHL AppleStoreCountry = 143474 // Philippines
	AppleStoreTHA AppleStoreCountry = 143475 // Thailand
	AppleStoreIDN AppleStoreCountry = 143476 // Indonesia
	AppleStorePAK AppleStoreCountry = 143477 // Pakistan
	AppleStorePOL AppleStoreCountry = 143478 // Poland
	AppleStoreSAU AppleStoreCountry = 143479 // Saudi Arabia
	AppleStoreTUR AppleStoreCountry = 143480 // Turkey
	AppleStoreARE AppleStoreCountry = 143481 // United Arab Emirates
	AppleStoreHUN AppleStoreCountry = 143482 // Hungary
	AppleStoreCHL AppleStoreCountry = 143483 // Chile
	AppleStoreNPL AppleStoreCountry = 143484 // Nepal
	AppleStorePAN AppleStoreCountry = 143485 // Panama
	AppleStoreLKA AppleStoreCountry = 143486 // Sri Lanka
	AppleStoreROU AppleStoreCountry = 143487 // Romania
	AppleStoreCZE AppleStoreCountry = 143489 // Czech Republic
	AppleStoreISR AppleStoreCountry = 143491 // Israel
	AppleStoreUKR AppleStoreCountry = 143492 // Ukraine
	AppleStoreKWT AppleStoreCountry = 143493 // Kuwait
	AppleStoreHRV AppleStoreCountry = 143494 // Croatia
	AppleStoreCRI AppleStoreCountry = 143495 // Costa Rica
	AppleStoreSVK AppleStoreCountry = 143496 // Slovakia
	AppleStoreLBN AppleStoreCountry = 143497 // Lebanon
	AppleStoreQAT AppleStoreCountry = 143498 // Qatar
	AppleStoreSVN AppleStoreCountry = 143499 // Slovenia
	AppleStoreCOL AppleStoreCountry = 143501 // Colombia
	AppleStoreVEN AppleStoreCountry = 143502 // Venezuela
	AppleStoreBRA AppleStoreCountry = 143503 // Brazil
	AppleStoreGTM AppleStoreCountry = 143504 // Guatemala
	AppleStoreARG AppleStoreCountry = 143505 // Argentina
	AppleStoreSLV AppleStoreCountry = 143506 // El Salvador
	AppleStorePER AppleStoreCountry = 143507 // Peru
	AppleStoreDOM AppleStoreCountry = 143508 // Dominican Republic
	AppleStoreECU AppleStoreCountry = 143509 // Ecuador
	AppleStoreHND AppleStoreCountry = 143510 // Honduras
	AppleStoreJAM AppleStoreCountry = 143511 // Jamaica
	AppleStoreNIC AppleStoreCountry = 143512 // Nicaragua
	AppleStorePRY AppleStoreCountry = 143513 // Paraguay
	AppleStoreURY AppleStoreCountry = 143514 // Uruguay
	AppleStoreMAC AppleStoreCountry = 143515 // Macau
	AppleStoreEGY AppleStoreCountry = 143516 // Egypt
	AppleStoreKAZ AppleStoreCountry = 143517 // Kazakhstan
	AppleStoreEST AppleStoreCountry = 143518 // Estonia
	AppleStoreLVA AppleStoreCountry = 143519 // Latvia
	AppleStoreLTU AppleStoreCountry = 143520 // Lithuania
	AppleStoreMLT AppleStoreCountry = 143521 // Malta
	AppleStoreMDA AppleStoreCountry = 143523 // Moldova
	AppleStoreARM AppleStoreCountry = 143524 // Armenia
	AppleStoreBWA AppleStoreCountry = 143525 // Botswana
	AppleStoreBGR AppleStoreCountry = 143526 // Bulgaria
	AppleStoreJOR AppleStoreCountry = 143528 // Jordan
	AppleStoreKEN AppleStoreCountry = 143529 // Kenya
	AppleStoreMKD AppleStoreCountry = 143530 // Macedonia
	AppleStoreMDG AppleStoreCountry = 143531 // Madagascar
	AppleStoreMLI AppleStoreCountry = 143532 // Mali
	AppleStoreMUS AppleStoreCountry = 143533 // Mauritius
	AppleStoreNER AppleStoreCountry = 143534 // Niger
	AppleStoreSEN AppleStoreCountry = 143535 // Senegal
	AppleStoreTUN AppleStoreCountry = 143536 // Tunisia
	AppleStoreUGA AppleStoreCountry = 143537 // Uganda
	AppleStoreAIA AppleStoreCountry = 143538 // Anguilla
	AppleStoreBHS AppleStoreCountry = 143539 // Bahamas
	AppleStoreATG AppleStoreCountry = 143540 // Antigua and Barbuda
	AppleStoreBRB AppleStoreCountry = 143541 // Barbados
	AppleStoreBMU AppleStoreCountry = 143542 // Bermuda
	AppleStoreVGB AppleStoreCountry = 143543 // British Virgin Islands
	AppleStoreCYM AppleStoreCountry = 143544 // Cayman Islands
	AppleStoreDMA AppleStoreCountry = 143545 // Dominica
	AppleStoreGRD AppleStoreCountry = 143546 // Grenada
	AppleStoreMSR AppleStoreCountry = 143547 // Montserrat
	AppleStoreKNA AppleStoreCountry = 143548 // St. Kitts and Nevis
	AppleStoreLCA AppleStoreCountry = 143549 // St. Lucia
	AppleStoreVCT AppleStoreCountry = 143550 // St. Vincent and The Grenadines
	AppleStoreTTO AppleStoreCountry = 143551 // Trinidad and Tobago
	AppleStoreTCA AppleStoreCountry = 143552 // Turks and Caicos
	AppleStoreGUY AppleStoreCountry = 143553 // Guyana
	AppleStoreSUR AppleStoreCountry = 143554 // Suriname
	AppleStoreBLZ AppleStoreCountry = 143555 // Belize
	AppleStoreBOL AppleStoreCountry = 143556 // Bolivia
	AppleStoreCYP AppleStoreCountry = 143557 // Cyprus
	AppleStoreISL AppleStoreCountry = 143558 // Iceland
	AppleStoreBHR AppleStoreCountry = 143559 // Bahrain
	AppleStoreBRN AppleStoreCountry = 143560 // Brunei Darussalam
	AppleStoreNGA AppleStoreCountry = 143561 // Nigeria
	AppleStoreOMN AppleStoreCountry = 143562 // Oman
	AppleStoreDZA AppleStoreCountry = 143563 // Algeria
	AppleStoreAGO AppleStoreCountry = 143564 // Angola
	AppleStoreBLR AppleStoreCountry = 143565 // Belarus
	AppleStoreUZB AppleStoreCountry = 143566 // Uzbekistan
	AppleStoreAZE AppleStoreCountry = 143568 // Azerbaijan
	AppleStoreYEM AppleStoreCountry = 143571 // Yemen
	AppleStoreTZA AppleStoreCountry = 143572 // Tanzania
	AppleStoreGHA AppleStoreCountry = 143573 // Ghana
	AppleStoreALB AppleStoreCountry = 143575 // Albania
	AppleStoreBEN AppleStoreCountry = 143576 // Benin
	AppleStoreBTN AppleStoreCountry = 143577 // Bhutan
	AppleStoreBFA AppleStoreCountry = 143578 // Burkina Faso
	AppleStoreKHM AppleStoreCountry = 143579 // Cambodia
	AppleStoreCPV AppleStoreCountry = 143580 // Cape Verde
	AppleStoreTCD AppleStoreCountry = 143581 // Chad
	AppleStoreCOG AppleStoreCountry = 143582 // Republic of the Congo
	AppleStoreFJI AppleStoreCountry = 143583 // Fiji
	AppleStoreGMB AppleStoreCountry = 143584 // Gambia
	AppleStoreGNB AppleStoreCountry = 143585 // Guinea-Bissau
	AppleStoreKGZ AppleStoreCountry = 143586 // Kyrgyzstan
	AppleStoreLAO AppleStoreCountry = 143587 // Lao People's Democratic Republic
	AppleStoreLBR AppleStoreCountry = 143588 // Liberia
	AppleStoreMWI AppleStoreCountry = 143589 // Malawi
	AppleStoreMRT AppleStoreCountry = 143590 // Mauritania
	AppleStoreFSM AppleStoreCountry = 143591 // Federated States of Micronesia
	AppleStoreMNG AppleStoreCountry = 143592 // Mongolia
	AppleStoreMOZ AppleStoreCountry = 143593 // Mozambique
	AppleStoreNAM AppleStoreCountry = 143594 // Namibia
	AppleStorePLW AppleStoreCountry = 143595 // Palau
	AppleStorePNG AppleStoreCountry = 143597 // Papua New Guinea
	AppleStoreSTP AppleStoreCountry = 143598 // Sao Tome and Principe
	AppleStoreSYC AppleStoreCountry = 143599 // Seychelles
	AppleStoreSLE AppleStoreCountry = 143600 // Sierra Leone
	AppleStoreSLB AppleStoreCountry = 143601 // Solomon Islands
	AppleStoreSWZ AppleStoreCountry = 143602 // Swaziland
	AppleStoreTJK AppleStoreCountry = 143603 // Tajikistan
	AppleStoreTKM AppleStoreCountry = 143604 // Turkmenistan'AppleStore
	AppleStoreZWE AppleStoreCountry = 143605 // Zimbabwe
)

type AssetInfo

type AssetInfo struct {
	FileSize     int64  `plist:"file-size"     xmp:"iTunes:FileSize,attr"`
	Flavor       string `plist:"flavor"        xmp:"iTunes:Flavor,attr"`
	ScreenFormat string `plist:"screen-format" xmp:"iTunes:ScreenFormat,attr"`
	Soundtrack   string `plist:"soundtrack"    xmp:"iTunes:Soundtrack,attr"`
}

type Bool

type Bool int // 0 no, 1 yes

func (Bool) Value

func (b Bool) Value() bool

type ContentRating

type ContentRating struct {
	Standard string `xmp:"iTunes:Standard,attr"`
	Rating   string `xmp:"iTunes:Rating,attr"`
	Score    string `xmp:"iTunes:Score,attr"`
	Reasons  string `xmp:"iTunes:Reasons,attr"`
}

func (ContentRating) IsZero

func (x ContentRating) IsZero() bool

func (ContentRating) MarshalText

func (x ContentRating) MarshalText() ([]byte, error)

func (ContentRating) String

func (x ContentRating) String() string

func (*ContentRating) UnmarshalText

func (x *ContentRating) UnmarshalText(data []byte) error

type GenreCode

type GenreCode byte

ID3v1 Genre id

type ITunesMetadata

type ITunesMetadata struct {
	AccountKind       AppleStoreAccountType `iTunes:"akID" xmp:"iTunes:AccountKind"`
	Acknowledgement   string                `iTunes:"©cak" xmp:"iTunes:Acknowledgement"`
	Album             string                `iTunes:"©alb" xmp:"iTunes:Album"`
	AlbumArtist       string                `iTunes:"aART" xmp:"iTunes:AlbumArtist"`
	AppleID           string                `iTunes:"apID" xmp:"iTunes:AppleID"`
	Arranger          string                `iTunes:"©arg" xmp:"iTunes:Arranger"`
	ArtDirector       string                `iTunes:"©ard" xmp:"iTunes:ArtDirector"`
	Artist            string                `iTunes:"©ART" xmp:"iTunes:Artist"`
	ArtistID          string                `iTunes:"atID" xmp:"iTunes:ArtistID"`
	Author            string                `iTunes:"©aut" xmp:"iTunes:Author"`
	BeatsPerMin       int                   `iTunes:"tmpo" xmp:"iTunes:BeatsPerMin"`
	Comment           string                `iTunes:"©cmt" xmp:"iTunes:Comment"`
	Composer          string                `iTunes:"©wrt" xmp:"iTunes:Composer"`
	Conductor         string                `iTunes:"©con" xmp:"iTunes:Conductor"`
	IsExplicit        RatingCode            `iTunes:"rtng" xmp:"iTunes:IsExplicit"`
	Copyright         string                `iTunes:"cprt" xmp:"iTunes:Copyright"`
	CoverArt          string                `iTunes:"covr" xmp:"iTunes:CoverArt"`
	CoverUrl          xmp.Url               `iTunes:"cvru" xmp:"iTunes:CoverUrl"`
	Credits           string                `iTunes:"©src" xmp:"iTunes:Credits"`
	Description       string                `iTunes:"©des" xmp:"iTunes:Description"`
	Director          string                `iTunes:"©dir" xmp:"iTunes:Director"`
	DiscNumber        xmp.Rational          `iTunes:"disk" xmp:"iTunes:DiscNumber"`
	Duration          int64                 `iTunes:"dcfD" xmp:"iTunes:Duration"`
	EncodedBy         string                `iTunes:"©enc" xmp:"iTunes:EncodedBy"`
	EncodingTool      string                `iTunes:"©too" xmp:"iTunes:EncodingTool"`
	EQ                string                `iTunes:"©equ" xmp:"iTunes:EQ"`
	ExecProducer      string                `iTunes:"©xpd" xmp:"iTunes:ExecProducer"`
	GenreCode         GenreCode             `iTunes:"gnre" xmp:"iTunes:GenreCode"` // Predefined, = ID3 genres
	GenreID           GenreID               `iTunes:"geID" xmp:"iTunes:GenreID"`
	GenreName         string                `iTunes:"©gen" xmp:"iTunes:GenreName"` // user defined
	Grouping          string                `iTunes:"grup" xmp:"iTunes:Grouping"`  // like TIT1 in ID3
	IconUrl           xmp.Url               `iTunes:"icnu" xmp:"iTunes:IconUrl"`
	InfoUrl           xmp.Url               `iTunes:"infu" xmp:"iTunes:InfoUrl"`
	IsDiscCompilation Bool                  `iTunes:"cpil" xmp:"iTunes:IsDiscCompilation"`
	IsGaplessPlayback PlayGapMode           `iTunes:"pgap" xmp:"iTunes:IsGaplessPlayback"`
	IsHDVideo         Bool                  `iTunes:"hdvd" xmp:"iTunes:IsHDVideo"`
	IsiTunesU         string                `iTunes:"itnu" xmp:"iTunes:IsiTunesU"`
	IsPodcast         Bool                  `iTunes:"pcst" xmp:"iTunes:IsPodcast"`
	Keywords          string                `iTunes:"keyw" xmp:"iTunes:Keywords"`
	LinerNotes        string                `iTunes:"©lnt" xmp:"iTunes:LinerNotes"`
	Lyrics            string                `iTunes:"©lyr" xmp:"iTunes:Lyrics"`
	LyricsUrl         string                `iTunes:"lrcu" xmp:"iTunes:LyricsUrl"`
	MediaType         MediaType             `iTunes:"stik" xmp:"iTunes:MediaType"`
	Narrator          string                `iTunes:"©nrt" xmp:"iTunes:Narrator"`
	OnlineExtras      string                `iTunes:"©url" xmp:"iTunes:OnlineExtras"`
	OriginalArtist    string                `iTunes:"©ope" xmp:"iTunes:OriginalArtist"`
	Performer         string                `iTunes:"©prf" xmp:"iTunes:Performer"`
	PhonogramRights   string                `iTunes:"©phg" xmp:"iTunes:PhonogramRights"`
	PlaylistID        string                `iTunes:"plID" xmp:"iTunes:PlaylistID"`
	PodcastCategory   string                `iTunes:"catg" xmp:"iTunes:PodcastCategory"`
	PodcastGuid       string                `iTunes:"egid" xmp:"iTunes:PodcastGuid"`
	PodcastUrl        string                `iTunes:"purl" xmp:"iTunes:PodcastUrl"`
	Producer          string                `iTunes:"©prd" xmp:"iTunes:Producer"`
	ProductID         string                `iTunes:"prID" xmp:"iTunes:ProductID"`
	Publisher         string                `iTunes:"©pub" xmp:"iTunes:Publisher"`
	PurchaseDate      xmp.Date              `iTunes:"purd" xmp:"iTunes:PurchaseDate"`
	RatingPercent     string                `iTunes:"rate" xmp:"iTunes:RatingPercent"`
	RecordCompany     string                `iTunes:"©mak" xmp:"iTunes:RecordCompany"`
	ReleaseDate       xmp.Date              `iTunes:"©day" xmp:"iTunes:ReleaseDate"`
	ShowEpisodeName   string                `iTunes:"tves" xmp:"iTunes:ShowEpisodeName"`
	ShowEpisodeNum    int                   `iTunes:"tven" xmp:"iTunes:ShowEpisodeNum"`
	ShowName          string                `iTunes:"tvsh" xmp:"iTunes:ShowName"`
	ShowSeasonNum     int                   `iTunes:"tvsn" xmp:"iTunes:ShowSeasonNum"`
	Soloist           string                `iTunes:"©sol" xmp:"iTunes:Soloist"`
	SongID            string                `iTunes:"cnID" xmp:"iTunes:SongID"` // content ID, AppleStoreCatalogID
	SortAlbum         string                `iTunes:"soal" xmp:"iTunes:SortAlbum"`
	SortAlbumArtist   string                `iTunes:"soaa" xmp:"iTunes:SortAlbumArtist"`
	SortArtist        string                `iTunes:"soar" xmp:"iTunes:SortArtist"`
	SortComposer      string                `iTunes:"soco" xmp:"iTunes:SortComposer"`
	SortName          string                `iTunes:"sonm" xmp:"iTunes:SortName"`
	SortShow          string                `iTunes:"sosn" xmp:"iTunes:SortShow"`
	SoundEngineer     string                `iTunes:"©sne" xmp:"iTunes:SoundEngineer"`
	StoreFrontID      string                `iTunes:"sfID" xmp:"iTunes:StoreFrontID"` // apple store country
	Synopsis          string                `iTunes:"ldes" xmp:"iTunes:Synopsis"`
	Thanks            string                `iTunes:"©thx" xmp:"iTunes:Thanks"`
	Title             string                `iTunes:"©nam" xmp:"iTunes:Title"`
	ToolInfo          string                `iTunes:"tool" xmp:"iTunes:ToolInfo"`
	TrackNumber       int                   `iTunes:"trkn" xmp:"iTunes:TrackNumber"`
	TrackSubTitle     string                `iTunes:"©st3" xmp:"iTunes:TrackSubTitle"`
	TVNetworkName     string                `iTunes:"tvnn" xmp:"iTunes:TVNetworkName"`
	XID               string                `iTunes:"xid " xmp:"iTunes:XID"`

	ContentRating      *ContentRating `iTunes:"iTunEXTC"                xmp:"iTunes:ContentRating"`
	SoundCheck         []byte         `iTunes:"iTunNORM"                xmp:"iTunes:SoundCheck"`
	SMPB               *SMPB          `iTunes:"iTunSMPB"                xmp:"iTunes:SMPB"`
	IsGaplessPlayback2 Bool           `iTunes:"iTunPGAP"                xmp:"iTunes:IsGaplessPlayback2"`
	MovieInfo          *MovieInfo     `iTunes:"iTunMOVI"                xmp:"iTunes:MovieInfo"`
	CDDBToc            string         `iTunes:"iTunes_CDDB_1"           xmp:"iTunes:CDDBToc"`
	CDDBTrackNumber    string         `iTunes:"iTunes_CDDB_TrackNumber" xmp:"iTunes:CDDBTrackNumber"`
	CDDBMediaID        string         `iTunes:"iTunes_CDDB_IDs"         xmp:"iTunes:CDDBMediaID"`
	EncodingParams     []byte         `iTunes:"Encoding Params"         xmp:"iTunes:EncodingParams"`

	Extension xmp.TagList `iTunes:",any" xmp:"iTunes:extension"`
}

iTunes specific Quicktime metadata tags itms: iTunes storage format atom itlk: mdta-style atoms Reverse DNS (com.apple.itunes) itsk: udta-style FourCC atoms

func FindModel

func FindModel(d *xmp.Document) *ITunesMetadata

func MakeModel

func MakeModel(d *xmp.Document) (*ITunesMetadata, error)

func (*ITunesMetadata) Can

func (m *ITunesMetadata) Can(nsName string) bool

func (*ITunesMetadata) CanTag

func (x *ITunesMetadata) CanTag(tag string) bool

func (*ITunesMetadata) GetTag

func (x *ITunesMetadata) GetTag(tag string) (string, error)

func (*ITunesMetadata) ListTags

func (x *ITunesMetadata) ListTags() (xmp.TagList, error)

Lists all non-empty tags.

func (*ITunesMetadata) Namespaces

func (m *ITunesMetadata) Namespaces() xmp.NamespaceList

func (*ITunesMetadata) SetTag

func (x *ITunesMetadata) SetTag(tag, value string) error

func (*ITunesMetadata) SyncFromXMP

func (x *ITunesMetadata) SyncFromXMP(d *xmp.Document) error

func (*ITunesMetadata) SyncModel

func (x *ITunesMetadata) SyncModel(d *xmp.Document) error

func (ITunesMetadata) SyncToXMP

func (x ITunesMetadata) SyncToXMP(d *xmp.Document) error

type LocationRole

type LocationRole int
const (
	LocationRoleShooting  LocationRole = 0
	LocationRoleReal      LocationRole = 1
	LocationRoleFictional LocationRole = 2
)

type MediaType

type MediaType int
const (
	MediaTypeHomeVideo  MediaType = 0  // 0 = Movie (deprecated, use 9 instead)
	MediaTypeMusic      MediaType = 1  // 1 = Normal (Music)
	MediaTypeAudiobook  MediaType = 2  // 2 = Audiobook
	MediaTypeBookmark   MediaType = 5  // 5 = Whacked Bookmark
	MediaTypeMusicVideo MediaType = 6  // 6 = Music Video
	MediaTypeMovie      MediaType = 9  // 9 = Short Film / Movie
	MediaTypeTVShow     MediaType = 10 // 10 = TV Show
	MediaTypeBooklet    MediaType = 11 // 11 = Booklet
	MediaTypeRingtone   MediaType = 14 // 14 = Ringtone
	MediaTypePodcast    MediaType = 21 // 21 = Podcast
)

func (MediaType) String

func (x MediaType) String() string

type MovieInfo

type MovieInfo struct {
	AssetInfo     *AssetInfo  `plist:"asset-info"    xmp:"iTunes:AssetInfo,attr"`
	Studio        string      `plist:"studio"        xmp:"iTunes:Studio,attr"`
	Cast          PersonArray `plist:"cast"          xmp:"iTunes:Cast"`
	Directors     PersonArray `plist:"directors"     xmp:"iTunes:Directors"`
	CoDirectors   PersonArray `plist:"codirectors"   xmp:"iTunes:CoDirectors"`
	Screenwriters PersonArray `plist:"screenwriters" xmp:"iTunes:Screenwriters"`
	Producers     PersonArray `plist:"producers"     xmp:"iTunes:Producers"`
	CopyWarning   string      `plist:"copy-warning"  xmp:"iTunes:CopyWarning"`
}

type Person

type Person struct {
	ID   string `plist:"adamId" xmp:"iTunes:AdamID,attr"`
	Name string `plist:"name"   xmp:"iTunes:Name,attr"`
}

type PersonArray

type PersonArray []Person

func (PersonArray) MarshalXMP

func (x PersonArray) MarshalXMP(e *xmp.Encoder, node *xmp.Node, m xmp.Model) error

func (PersonArray) Typ

func (a PersonArray) Typ() xmp.ArrayType

func (*PersonArray) UnmarshalXMP

func (x *PersonArray) UnmarshalXMP(d *xmp.Decoder, node *xmp.Node, m xmp.Model) error

type PlayGapMode

type PlayGapMode int
const (
	PlayGapInsertGap PlayGapMode = 0 // Insert Gap
	PlayGapNoGap     PlayGapMode = 1 // No Gap
)

type RatingCode

type RatingCode int
const (
	RatingCodeNone        RatingCode = 0 // 0 = None
	RatingCodeExplicit    RatingCode = 1 // 1 = Explicit
	RatingCodeClean       RatingCode = 2 // 2 = Clean
	RatingCodeExplicitOld RatingCode = 4 // 4 = Explicit (old)
)

type SMPB

type SMPB struct {
	EncoderDelay        int64 `xmp:"iTunes:EncoderDelay,attr"`
	EndPadding          int64 `xmp:"iTunes:EndPadding,attr"`
	OriginalSampleCount int64 `xmp:"iTunes:OriginalSampleCount,attr"`
	EndOffset           int64 `xmp:"iTunes:EndOffset,attr"`
}

https://sourceforge.net/p/mediainfo/feature-requests/398/ https://forums.mp3tag.de/index.php?showtopic=12640

func (*SMPB) UnmarshalText

func (x *SMPB) UnmarshalText(data []byte) error

Gapless Playback info iTunSMPB 00000000 00000840 000001CA 00000000003F31F6 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

Delay    Padding  SampleCount               EndOffset

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL