Documentation
¶
Overview ¶
Package qt implements metadata found in Apple Quicktime (MOV) files.
Index ¶
- Variables
- func NewModel(name string) xmp.Model
- type Bool
- type ContentRating
- type Location
- type LocationRole
- type MultilangArray
- type Point
- type QtInfo
- func (m *QtInfo) Can(nsName string) bool
- func (x *QtInfo) CanTag(tag string) bool
- func (x *QtInfo) GetTag(tag string) (string, error)
- func (x *QtInfo) ListTags() (xmp.TagList, error)
- func (m *QtInfo) Namespaces() xmp.NamespaceList
- func (x *QtInfo) SetTag(tag, value string) error
- func (x *QtInfo) SyncFromXMP(d *xmp.Document) error
- func (x *QtInfo) SyncModel(d *xmp.Document) error
- func (x QtInfo) SyncToXMP(d *xmp.Document) error
- type QtMetadata
- func (m *QtMetadata) Can(nsName string) bool
- func (x *QtMetadata) CanTag(tag string) bool
- func (x *QtMetadata) GetTag(tag string) (string, error)
- func (m *QtMetadata) Namespaces() xmp.NamespaceList
- func (x *QtMetadata) SetTag(tag, value string) error
- func (x *QtMetadata) SyncFromXMP(d *xmp.Document) error
- func (x *QtMetadata) SyncModel(d *xmp.Document) error
- func (x *QtMetadata) SyncToXMP(d *xmp.Document) error
- type QtPlayer
- func (m *QtPlayer) Can(nsName string) bool
- func (x *QtPlayer) CanTag(tag string) bool
- func (x *QtPlayer) GetTag(tag string) (string, error)
- func (m *QtPlayer) Namespaces() xmp.NamespaceList
- func (x *QtPlayer) SetTag(tag, value string) error
- func (x *QtPlayer) SyncFromXMP(d *xmp.Document) error
- func (x *QtPlayer) SyncModel(d *xmp.Document) error
- func (x *QtPlayer) SyncToXMP(d *xmp.Document) error
- type QtProApps
- func (m *QtProApps) Can(nsName string) bool
- func (x *QtProApps) CanTag(tag string) bool
- func (x *QtProApps) GetTag(tag string) (string, error)
- func (m *QtProApps) Namespaces() xmp.NamespaceList
- func (x *QtProApps) SetTag(tag, value string) error
- func (x *QtProApps) SyncFromXMP(d *xmp.Document) error
- func (x *QtProApps) SyncModel(d *xmp.Document) error
- func (x *QtProApps) SyncToXMP(d *xmp.Document) error
- type QtUserdata
- func (m *QtUserdata) Can(nsName string) bool
- func (x *QtUserdata) CanTag(tag string) bool
- func (x *QtUserdata) GetTag(tag string) (string, error)
- func (m *QtUserdata) Namespaces() xmp.NamespaceList
- func (x *QtUserdata) SetTag(tag, value string) error
- func (x *QtUserdata) SyncFromXMP(d *xmp.Document) error
- func (x *QtUserdata) SyncModel(d *xmp.Document) error
- func (x QtUserdata) SyncToXMP(d *xmp.Document) error
Constants ¶
This section is empty.
Variables ¶
var (
NsQuicktime = xmp.NewNamespace("qt", "http://ns.apple.com/quicktime/1.0/", NewModel)
)
Functions ¶
Types ¶
type ContentRating ¶
type ContentRating struct {
Standard string `xmp:"qt:Standard,attr"`
Rating string `xmp:"qt:Rating,attr"`
Score string `xmp:"qt:Score,attr"`
Reasons string `xmp:"qt: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 Location ¶
type Location struct {
Body string `xmp:"qt:Body,attr"`
Date xmp.Date `xmp:"qt:Date,attr"`
Longitude xmp.GPSCoord `xmp:"qt:Longitude,attr"`
Latitude xmp.GPSCoord `xmp:"qt:Latitude,attr"`
Altitude float64 `xmp:"qt:Altitude,attr"`
Name string `xmp:"qt:Name,attr"`
Note string `xmp:"qt:Note,attr"`
Role LocationRole `xmp:"qt:Role,attr"`
}
func (*Location) UnmarshalText ¶
type LocationRole ¶
type LocationRole int
const ( LocationRoleShooting LocationRole = 0 LocationRoleReal LocationRole = 1 LocationRoleFictional LocationRole = 2 )
type MultilangArray ¶
defined to overwrite UnmarshalText, otherwise similar to xmp.AltString
func (MultilangArray) MarshalXMP ¶
func (*MultilangArray) UnmarshalText ¶
func (x *MultilangArray) UnmarshalText(data []byte) error
func (*MultilangArray) UnmarshalXMP ¶
type QtInfo ¶
type QtInfo struct {
Udta *QtUserdata `qt:"-" xmp:"qt:udta"`
Mdta *QtMetadata `qt:"-" xmp:"qt:mdta"`
Player *QtPlayer `qt:"-" xmp:"qt:player"`
ProApps *QtProApps `qt:"-" xmp:"qt:proapps"`
// external structs
IXML *ixml.IXML `qt:"-" xmp:"-"`
XMP *xmp.Document `qt:"XMP_" xmp:"-"`
// unknown 3rd party tags
Extension xmp.TagList `qt:",any" xmp:"qt:extension"`
}
func (*QtInfo) Namespaces ¶
func (m *QtInfo) Namespaces() xmp.NamespaceList
type QtMetadata ¶
type QtMetadata struct {
// official metadata keys as defined in MacOS 10.11 SDK
Album string `qt:"com.apple.quicktime.album" qt:"©alb" xmp:"qt:Album"`
Arranger string `qt:"com.apple.quicktime.arranger" qt:"©arg" xmp:"qt:Arranger"`
Artist string `qt:"com.apple.quicktime.artist" qt:"albr" xmp:"qt:Artist"`
Artwork string `qt:"com.apple.quicktime.artwork" qt:"covr" xmp:"qt:Artwork"`
Author string `qt:"com.apple.quicktime.author" qt:"©aut" xmp:"qt:Author"`
CameraFrameReadoutTime string `qt:"com.apple.quicktime.camera.framereadouttimeinmicroseconds" qt:"-" xmp:"qt:CameraFrameReadoutTime"`
CameraIdentifier string `qt:"com.apple.quicktime.camera.identifier" qt:"cmid" xmp:"qt:CameraIdentifier"`
CollectionUser string `qt:"com.apple.quicktime.collection.user" qt:"coll" xmp:"qt:CollectionUser"`
Comment string `qt:"com.apple.quicktime.comment" qt:"©cmt" xmp:"qt:Comment"`
Composer string `qt:"com.apple.quicktime.composer" qt:"©wrt" xmp:"qt:Composer"`
ContentIdentifier string `qt:"com.apple.quicktime.content.identifier" qt:"cnID" xmp:"qt:ContentIdentifier"`
Copyright string `qt:"com.apple.quicktime.copyright" qt:"cprt" xmp:"qt:Copyright"`
CreationDate xmp.Date `qt:"com.apple.quicktime.creationdate" qt:"date" xmp:"qt:CreationDate"`
Credits string `qt:"com.apple.quicktime.credits" qt:"©src" xmp:"qt:Credits"`
Description string `qt:"com.apple.quicktime.description" qt:"©des" xmp:"qt:Description"`
DirectionFacing float64 `qt:"com.apple.quicktime.direction.facing" qt:"-" xmp:"qt:DirectionFacing"`
DirectionMotion float64 `qt:"com.apple.quicktime.direction.motion" qt:"-" xmp:"qt:DirectionMotion"`
Director string `qt:"com.apple.quicktime.director" qt:"©dir" xmp:"qt:Director"`
DisplayName string `qt:"com.apple.quicktime.displayname" qt:"name" xmp:"qt:DisplayName"`
EncodedBy string `qt:"com.apple.quicktime.encodedby" qt:"©enc" xmp:"qt:EncodedBy"`
Genre string `qt:"com.apple.quicktime.genre" qt:"©gen" xmp:"qt:Genre"`
Information string `qt:"com.apple.quicktime.information" qt:"©inf" xmp:"qt:Information"`
Keywords xmp.StringList `qt:"com.apple.quicktime.keywords" qt:"©key" xmp:"qt:Keywords"`
LocationBody string `qt:"com.apple.quicktime.location.body" qt:"-" xmp:"-"`
LocationDate xmp.Date `qt:"com.apple.quicktime.location.date" qt:"-" xmp:"-"`
LocationISO6709 string `qt:"com.apple.quicktime.location.iso6709" qt:"©xyz" xmp:"-"`
LocationName string `qt:"com.apple.quicktime.location.name" qt:"-" xmp:"-"`
LocationNote string `qt:"com.apple.quicktime.location.note" qt:"-" xmp:"-"`
LocationRole LocationRole `qt:"com.apple.quicktime.location.role" qt:"-" xmp:"-"`
Make string `qt:"com.apple.quicktime.make" qt:"©mak" xmp:"qt:Make"`
Model string `qt:"com.apple.quicktime.model" qt:"©mod" xmp:"qt:Model"`
OriginalArtist string `qt:"com.apple.quicktime.originalartist" qt:"©ope" xmp:"qt:OriginalArtist"`
Performer string `qt:"com.apple.quicktime.performer" qt:"©prf" xmp:"qt:Performer"`
PhonogramRights string `qt:"com.apple.quicktime.phonogramrights" qt:"©phg" xmp:"qt:PhonogramRights"`
Producer string `qt:"com.apple.quicktime.producer" qt:"©prd" xmp:"qt:Producer"`
Publisher string `qt:"com.apple.quicktime.publisher" qt:"©pub" xmp:"qt:Publisher"`
USRating float64 `qt:"com.apple.quicktime.rating.user" qt:"rtng" xmp:"qt:USRating"`
Software string `qt:"com.apple.quicktime.software" qt:"©swr" xmp:"qt:Software"`
Title string `qt:"com.apple.quicktime.title" qt:"©nam" xmp:"qt:Title"`
Year int `qt:"com.apple.quicktime.year" qt:"yrrc" xmp:"qt:Year"`
// more tags not captured above
Version string `qt:"com.apple.quicktime.version" qt:"VERS" xmp:"qt:Version"`
PreferredAffineTransform string `qt:"com.apple.quicktime.preferred-affine-transform" qt:"-" xmp:"qt:PreferredAffineTransform"`
VideoOrientation tiff.OrientationType `qt:"com.apple.quicktime.video-orientation" qt:"-" xmp:"qt:VideoOrientation"`
WindowLocation Point `qt:"com.apple.quicktime.windowlocation" qt:"WLOC" xmp:"qt:WindowLocation"`
CoreMotion string `qt:"com.apple.quicktime.core-motion" qt:"-" xmp:"qt:CoreMotion"`
CameraDebugInfo string `qt:"com.apple.quicktime.camera-debug-info" qt:"-" xmp:"qt:CameraDebugInfo"`
IsMontage string `qt:"com.apple.quicktime.is-montage" qt:"-" xmp:"qt:IsMontage"`
PixelDensity string `qt:"com.apple.quicktime.pixeldensity" qt:"-" xmp:"qt:PixelDensity"`
DetectedFace string `qt:"com.apple.quicktime.detected-face" qt:"-" xmp:"qt:DetectedFace"`
HasEAN13 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.EAN13" qt:"-" xmp:"qt:HasEAN13"`
HasEAN8 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.EAN8" qt:"-" xmp:"qt:HasEAN8"`
HasUPCE Bool `qt:"com.apple.quicktime.detected-machine-readable-code.UPCE" qt:"-" xmp:"qt:HasUPCE"`
HasCode39 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.Code39" qt:"-" xmp:"qt:HasCode39"`
HasCode39Checksum Bool `qt:"com.apple.quicktime.detected-machine-readable-code.Code39Checksum" qt:"-" xmp:"qt:HasCode39Checksum"`
HasCode93 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.Code93" qt:"-" xmp:"qt:HasCode93"`
HasCode128 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.Code128" qt:"-" xmp:"qt:HasCode128"`
HasI2of5 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.I2of5" qt:"-" xmp:"qt:HasI2of5"`
HasITF14 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.ITF14" qt:"-" xmp:"qt:HasITF14"`
HasDataMatrix Bool `qt:"com.apple.quicktime.detected-machine-readable-code.DataMatrix" qt:"-" xmp:"qt:HasDataMatrix"`
HasQR Bool `qt:"com.apple.quicktime.detected-machine-readable-code.QR" qt:"-" xmp:"qt:HasQR"`
HasAztec Bool `qt:"com.apple.quicktime.detected-machine-readable-code.Aztec" qt:"-" xmp:"qt:HasAztec"`
HasPDF417 Bool `qt:"com.apple.quicktime.detected-machine-readable-code.PDF417" qt:"-" xmp:"qt:HasPDF417"`
Extension xmp.TagList `qt:",any" qt:",any" xmp:"qt:extension"`
// composite structs
Location *Location `qt:"-" qt:"-" xmp:"qt:Location"`
}
General Quicktime Metadata keys (from MacOS CoreMedia Framework headers and libs)
VideoOrientation: like TIFF/EXIF Orientation property AffineTransform: used in place of a track display matrix, 3x3 float matrix in row major order Direction: degree offset from magnetic north
func (*QtMetadata) Can ¶
func (m *QtMetadata) Can(nsName string) bool
func (*QtMetadata) CanTag ¶
func (x *QtMetadata) CanTag(tag string) bool
func (*QtMetadata) Namespaces ¶
func (m *QtMetadata) Namespaces() xmp.NamespaceList
func (*QtMetadata) SetTag ¶
func (x *QtMetadata) SetTag(tag, value string) error
func (*QtMetadata) SyncFromXMP ¶
func (x *QtMetadata) SyncFromXMP(d *xmp.Document) error
type QtPlayer ¶
type QtPlayer struct {
AudioBalance float32 `qt:"com.apple.quicktime.player.movie.audio.balance" xmp:"qt:AudioBalance"`
AudioBass float32 `qt:"com.apple.quicktime.player.movie.audio.bass" xmp:"qt:AudioBass"`
AudioGain float32 `qt:"com.apple.quicktime.player.movie.audio.gain" xmp:"qt:AudioGain"`
AudioMute Bool `qt:"com.apple.quicktime.player.movie.audio.mute" xmp:"qt:AudioMute"`
AudioPitchshift float32 `qt:"com.apple.quicktime.player.movie.audio.pitchshift" xmp:"qt:AudioPitchshift"`
AudioTreble float32 `qt:"com.apple.quicktime.player.movie.audio.treble" xmp:"qt:AudioTreble"`
VisualBrightness float32 `qt:"com.apple.quicktime.player.movie.visual.brightness" xmp:"qt:VisualBrightness"`
VisualColor float32 `qt:"com.apple.quicktime.player.movie.visual.color" xmp:"qt:VisualColor"`
VisualContrast float32 `qt:"com.apple.quicktime.player.movie.visual.contrast" xmp:"qt:VisualContrast"`
VisualTint float32 `qt:"com.apple.quicktime.player.movie.visual.tint" xmp:"qt:VisualTint"`
Version string `qt:"com.apple.quicktime.player.version" xmp:"qt:Version"`
}
func (*QtPlayer) Namespaces ¶
func (m *QtPlayer) Namespaces() xmp.NamespaceList
type QtProApps ¶
type QtProApps struct {
ClipID string `qt:"com.apple.proapps.clipID" xmp:"qt:ClipID"`
OriginalFormat string `qt:"com.apple.proapps.originalFormat" xmp:"qt:OriginalFormat"` // AVC-Intra 4:2:2, Apple XDCAM HD422 1080i50 (50 Mb/s CBR)
CustomColor string `qt:"com.apple.proapps.customcolor" xmp:"qt:CustomColor"` // com.sony.s-log3-cine
CameraName string `qt:"com.apple.proapps.cameraName" xmp:"qt:CameraName"`
MIOCameraName string `qt:"com.apple.proapps.mio.cameraName" xmp:"qt:MIOCameraName"`
Scene string `qt:"com.apple.proapps.scene" xmp:"qt:Scene"`
Shot string `qt:"com.apple.proapps.shot" xmp:"qt:Shot"`
Angle string `qt:"com.apple.proapps.angle" xmp:"qt:Angle"`
LogNote string `qt:"com.apple.proapps.logNote" xmp:"qt:LogNote"`
LastUpdateDate xmp.Date `qt:"com.apple.proapps.lastupdatedate" xmp:"qt:Lastupdatedate"` // 2016-07-21 08:23:35 +0000
IngestDateDescription string `qt:"com.apple.proapps.ingestDate.description" xmp:"qt:IngestDateDescription"` // 2016-07-25 12:55:32 +0200
StartTimeCodeFrameCount int64 `qt:"com.apple.proapps.avchd.startTimeCodeFrameCount" xmp:"qt:StartTimeCodeFrameCount"`
DropFrame Bool `qt:"com.apple.proapps.avchd.dropFrame" xmp:"qt:DropFrame"`
VideoFrameDuration int64 `qt:"com.apple.proapps.avchd.videoFrameDuration" xmp:"qt:VideoFrameDuration"`
Category string `qt:"com.apple.proapps.share.category" xmp:"qt:Category"`
EpisodeID string `qt:"com.apple.proapps.share.episodeID" xmp:"qt:EpisodeID"`
EpisodeNumber string `qt:"com.apple.proapps.share.episodeNumber" xmp:"qt:EpisodeNumber"`
MediaKind string `qt:"com.apple.proapps.share.mediaKind" xmp:"qt:MediaKind"`
Screenwriters string `qt:"com.apple.proapps.share.screenWriter" xmp:"qt:Screenwriters"`
SeasonNumber string `qt:"com.apple.proapps.share.seasonNumber" xmp:"qt:SeasonNumber"`
TVNetwork string `qt:"com.apple.proapps.share.tvNetwork" xmp:"qt:TVNetwork"`
Reel string `qt:"com.apple.proapps.reel" xmp:"qt:Reel"`
CameraID string `qt:"com.apple.proapps.cameraID" xmp:"qt:CameraID"`
CameraManufacturer string `qt:"com.apple.proapps.manufacturer" xmp:"qt:CameraManufacturer"`
CameraModel string `qt:"com.apple.proapps.modelname" xmp:"qt:CameraModel"`
CameraSerialNumber string `qt:"com.apple.proapps.serialno" xmp:"qt:CameraSerialNumber"`
ClipFileName string `qt:"com.apple.proapps.clipFileName" xmp:"qt:ClipFileName"` // : A001C001_160721_D620
AscCDL string `qt:"com.apple.proapps.color.asc-cdl" xmp:"qt:AscCDL"` // :
IsGood string `qt:"com.apple.proapps.isGood" xmp:"qt:IsGood"` // : 0
DataSize string `qt:"com.apple.proapps.dataSize" xmp:"qt:DataSize"` // : A�c?,
DisplayFormat string `qt:"com.apple.proapps.displayFormat" xmp:"qt:DisplayFormat"` // : 4k
ShootingRate string `qt:"com.apple.proapps.shootingRate" xmp:"qt:ShootingRate"` // : @9
VideoBitrate string `qt:"com.apple.proapps.videoBitrate" xmp:"qt:VideoBitrate"` // : 0
Pulldown string `qt:"com.apple.proapps.pulldown" xmp:"qt:Pulldown"` // : 1
MediaRate string `qt:"com.apple.proapps.mediaRate" xmp:"qt:MediaRate"` // : @9
TimecodeFormat string `qt:"com.apple.proapps.timecodeFormat" xmp:"qt:TimecodeFormat"` // : 2
NumberOfAudioChannels string `qt:"com.apple.proapps.numberOfAudioChannels" xmp:"qt:NumberOfAudioChannels"` // : 0
SampleRate string `qt:"com.apple.proapps.sampleRate" xmp:"qt:SampleRate"` // : 0
BitsPerSample string `qt:"com.apple.proapps.bitsPerSample" xmp:"qt:BitsPerSample"` // : 0
StudioAlphaHandling string `qt:"com.apple.proapps.studio.alphaHandling" xmp:"qt:StudioAlphaHandling"`
StudioCameraAngle string `qt:"com.apple.proapps.studio.angle" xmp:"qt:StudioCameraAngle"`
StudioAnamorphicOverride string `qt:"com.apple.proapps.studio.metadataAnamorphicType" xmp:"qt:StudioAnamorphicOverride"`
StudioDeinterlace string `qt:"com.apple.proapps.studio.metadataDeinterlaceType" xmp:"qt:StudioDeinterlace"`
StudioFieldDominanceOverride string `qt:"com.apple.proapps.studio.metadataFieldDominanceOverride" xmp:"qt:StudioFieldDominanceOverride"`
StudioLocation string `qt:"com.apple.proapps.studio.metadataLocation" xmp:"qt:StudioLocation"`
StudioReel string `qt:"com.apple.proapps.studio.reel" xmp:"qt:StudioReel"`
StudioScene string `qt:"com.apple.proapps.studio.scene" xmp:"qt:StudioScene"`
StudioShot string `qt:"com.apple.proapps.studio.shot" xmp:"qt:StudioTake"`
}
func (*QtProApps) Namespaces ¶
func (m *QtProApps) Namespaces() xmp.NamespaceList
type QtUserdata ¶
type QtUserdata struct {
// Quicktime tags exported on MacOS 10.11 SDK (some also used by iTunes)
Album string `qt:"©alb" xmp:"qt:Album"` // QT, iTunes
Arranger string `qt:"©arg" xmp:"qt:Arranger"` // QT, iTunes
Artist string `qt:"©ART" xmp:"qt:Artist"` // QT, iTunes
Author string `qt:"©aut" xmp:"qt:Author"` // QT, iTunes
Chapter string `qt:"©chp" xmp:"qt:Chapter"` // QT-only
Comment string `qt:"©cmt" xmp:"qt:Comment"` // QT, iTunes
Composer string `qt:"©com" xmp:"qt:Composer"` // QT-only
Copyright string `qt:"©cpy" xmp:"qt:Copyright"` // QT-only
ReleaseDate xmp.Date `qt:"©day" xmp:"qt:ReleaseDate"` // QT, iTunes
Description string `qt:"©des" xmp:"qt:Description"` // QT, iTunes
Director string `qt:"©dir" xmp:"qt:Director"` // QT, iTunes
Disclaimer string `qt:"©dis" xmp:"qt:Disclaimer"` // QT-only
EncodedBy string `qt:"©enc" xmp:"qt:EncodedBy"` // QT, iTunes
Title string `qt:"©nam" xmp:"qt:Title"` // QT, iTunes
GenreName string `qt:"©gen" xmp:"qt:GenreName"` // QT, iTunes
HostComputer string `qt:"©hst" xmp:"qt:HostComputer"` // QT-only
Information string `qt:"©inf" xmp:"qt:Information"` // QT-only
Keywords string `qt:"©key" xmp:"qt:Keywords"` // QT-only
FileCreator string `qt:"©mak" xmp:"qt:FileCreator"` // QT, iTunes (RecordCompany)
FileCreatorModel string `qt:"©mod" xmp:"qt:FileCreatorModel"` // QT-only
OriginalArtist string `qt:"©ope" xmp:"qt:OriginalArtist"` // iTunes
FileFormat string `qt:"©fmt" xmp:"qt:FileFormat"` // QT-only
Credits string `qt:"©src" xmp:"qt:Credits"` // QT, iTunes
Performer string `qt:"©prf" xmp:"qt:Performer"` // QT, iTunes
Producer string `qt:"©prd" xmp:"qt:Producer"` // QT, iTunes
Publisher string `qt:"©pub" xmp:"qt:Publisher"` // QT, iTunes
Product string `qt:"©PRD" xmp:"qt:Product"` // QT-only
FileCreatorSoftware string `qt:"©swr" xmp:"qt:FileCreatorSoftware"` // QT-only
PlaybackRequirements string `qt:"©req" xmp:"qt:PlaybackRequirements"` // QT-only
Track string `qt:"©trk" xmp:"qt:Track"` // QT-only
CopyWarning string `qt:"©wrn" xmp:"qt:CopyWarning"` // QT-only
Writer string `qt:"©wrt" xmp:"qt:Writer"` // QT, iTunes (Composer)
Url xmp.Url `qt:"©url" xmp:"qt:Url"` // QT, iTunes (Online Extras)
LocationGPS *Location `qt:"©xyz" xmp:"qt:LocationGPS"` // GPS latitude+longitude+altitude
TrackName string `qt:"tnam" xmp:"qt:TrackName"` // QT-only
PhonogramRights string `qt:"©phg" xmp:"qt:PhonogramRights"` // QT, iTunes
DisplayName string `qt:"name" xmp:"qt:DisplayName"` // QT-only
TaggedCharacteristic string `qt:"tagc" xmp:"qt:TaggedCharacteristic"` // QT, ISO
// QT only (administrative metadata)
AudioBookReleaseDate xmp.Date `qt:"rldt" xmp:"qt:AudioBookReleaseDate"`
ClipFileName string `qt:"clfn" xmp:"qt:ClipFileName"`
ClipID string `qt:"clid" xmp:"qt:ClipID"`
ContentDistributorID string `qt:"cdis" xmp:"qt:ContentDistributorID"`
ContentID string `qt:"ccid" xmp:"qt:ContentID"`
CreationDate xmp.Date `qt:"date" xmp:"qt:CreationDate"`
Grouping string `qt:"©grp" xmp:"qt:Grouping"`
GUID string `qt:"GUID" xmp:"qt:GUID"`
ISRCCode string `qt:"©isr" xmp:"qt:ISRCCode"`
// QT only (descriptive metadata)
AlbumArtist string `qt:"albr" xmp:"qt:AlbumArtist"`
Angle string `qt:"angl" xmp:"qt:Angle"`
ArrangerKeywords string `qt:"©ark" xmp:"qt:ArrangerKeywords"`
AudibleTags string `qt:"tags" xmp:"qt:AudibleTags"`
CameraID string `qt:"cmid" xmp:"qt:CameraID"`
CameraManufacturer string `qt:"manu" xmp:"qt:CameraManufacturer"`
CameraModel string `qt:"modl" xmp:"qt:CameraModel"`
CameraName string `qt:"cmnm" xmp:"qt:CameraName"`
CameraSerialNumber string `qt:"slno" xmp:"qt:CameraSerialNumber"`
ChapterList string `qt:"chpl" xmp:"qt:ChapterList"`
ComposerKeywords string `qt:"©cok" xmp:"qt:ComposerKeywords"`
Edit1 string `qt:"©ed1" xmp:"qt:Edit1"`
Edit2 string `qt:"©ed2" xmp:"qt:Edit2"`
Edit3 string `qt:"©ed3" xmp:"qt:Edit3"`
Edit4 string `qt:"©ed4" xmp:"qt:Edit4"`
Edit5 string `qt:"©ed5" xmp:"qt:Edit5"`
Edit6 string `qt:"©ed6" xmp:"qt:Edit6"`
Edit7 string `qt:"©ed7" xmp:"qt:Edit7"`
Edit8 string `qt:"©ed8" xmp:"qt:Edit8"`
Edit9 string `qt:"©ed9" xmp:"qt:Edit9"`
FileCreatorModel2 string `qt:"©mdl" xmp:"qt:FileCreatorModel2"`
FileCreatorUrl xmp.Url `qt:"©mal" xmp:"qt:FileCreatorUrl"`
Lyrics string `qt:"©lyr" xmp:"qt:Lyrics"` // QT, iTunes
LyricsUrl xmp.Url `qt:"lrcu" xmp:"qt:LyricsUrl"` // iTunes
OriginalFormat string `qt:"orif" xmp:"qt:OriginalFormat"`
OriginalSource string `qt:"oris" xmp:"qt:OriginalSource"`
PerformerKeywords string `qt:"©prk" xmp:"qt:PerformerKeywords"`
PerformerUrl xmp.Url `qt:"©prl" xmp:"qt:PerformerUrl"`
ProducerKeywords string `qt:"©pdk" xmp:"qt:ProducerKeywords"`
ProductVersion string `qt:"VERS" xmp:"qt:ProductVersion"`
RecordLabelName string `qt:"©lab" xmp:"qt:RecordLabelName"`
RecordLabelUrl xmp.Url `qt:"©lal" xmp:"qt:RecordLabelUrl"`
Reel string `qt:"reel" xmp:"qt:Reel"`
Scene string `qt:"scen" xmp:"qt:Scene"`
Shot string `qt:"shot" xmp:"qt:Shot"`
SongWriter string `qt:"©swf" xmp:"qt:SongWriter"`
SongWriterKeywords string `qt:"©swk" xmp:"qt:SongWriterKeywords"`
Subtitle string `qt:"©snm" xmp:"qt:Subtitle"`
SubtitleKeywords string `qt:"©snk" xmp:"qt:SubtitleKeywords"`
Synopsis string `qt:"ldes" xmp:"qt:Synopsis"`
TitleKeywords string `qt:"©nak" xmp:"qt:TitleKeywords"`
// QT mdta (not in official udta, but has FourCC code)
CoverArt string `qt:"covr" xmp:"qt:CoverArt"`
CollectionUser string `qt:"coll" xmp:"qt:CollectionUser"`
UserRating string `qt:"rtng" xmp:"qt:UserRating"`
RecordingYear int `qt:"yrrc" xmp:"qt:RecordingYear"`
// QT only (technical metadata)
ApertureMode string `qt:"apmd" xmp:"qt:ApertureMode"`
FlightPitch float64 `qt:"©fpt" xmp:"qt:FlightPitch"`
FlightRoll float64 `qt:"©frl" xmp:"qt:FlightRoll"`
FlightSpeedX float64 `qt:"©xsp" xmp:"qt:FlightSpeedX"`
FlightSpeedY float64 `qt:"©ysp" xmp:"qt:FlightSpeedY"`
FlightSpeedZ float64 `qt:"©zsp" xmp:"qt:FlightSpeedZ"`
FlightYaw float64 `qt:"©fyw" xmp:"qt:FlightYaw"`
GimbalPitch float64 `qt:"©gpt" xmp:"qt:GimbalPitch"`
GimbalRoll float64 `qt:"©grl" xmp:"qt:GimbalRoll"`
GimbalYaw float64 `qt:"©gyw" xmp:"qt:GimbalYaw"`
HintInfo string `qt:"hnti" xmp:"qt:HintInfo"`
HintTrackInfo string `qt:"hinf" xmp:"qt:HintTrackInfo"`
HintVersion string `qt:"hinv" xmp:"qt:HintVersion"`
PrintToVideo string `qt:"ptv " xmp:"qt:PrintToVideo"`
TrackType string `qt:"kgtt" xmp:"qt:TrackType"`
WindowLocation Point `qt:"WLOC" xmp:"qt:WindowLocation"`
//
// Vendor-specific tags
//
// Google transcoded videos (YouTube)
GoogleHostHeader string `qt:"gshh" xmp:"qt:GoogleHostHeader"`
GooglePingMessage string `qt:"gspm" xmp:"qt:GooglePingMessage"`
GooglePingURL string `qt:"gspu" xmp:"qt:GooglePingURL"`
GoogleSourceData string `qt:"gssd" xmp:"qt:GoogleSourceData"`
GoogleStartTime string `qt:"gsst" xmp:"qt:GoogleStartTime"`
GoogleTrackDuration string `qt:"gstd" xmp:"qt:GoogleTrackDuration"`
// Canon Cameras
CanonCodec string `qt:"CNCV" xmp:"qt:CanonCodec"` // "CanonAVC0002"
CanonModel string `qt:"CNMN" xmp:"qt:CanonModel"` // "Canon EOS 5D Mark II"
CanonFirmware string `qt:"CNFV" xmp:"qt:CanonFirmware"` // "Firmware Version 2.1.1"
CanonThumbnail []byte `qt:"CNDA" xmp:"qt:CanonThumbnail"`
}
QuickTime User Data as written by the "udta" handler using FourCC atom names. © \251 \xA9 Tags are multi-language versions
Tag ID's beginning with the copyright symbol (hex 0xa9) are multi-language text.
https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFChap2/qtff2.html
func (*QtUserdata) Can ¶
func (m *QtUserdata) Can(nsName string) bool
func (*QtUserdata) CanTag ¶
func (x *QtUserdata) CanTag(tag string) bool
func (*QtUserdata) Namespaces ¶
func (m *QtUserdata) Namespaces() xmp.NamespaceList
func (*QtUserdata) SetTag ¶
func (x *QtUserdata) SetTag(tag, value string) error
func (*QtUserdata) SyncFromXMP ¶
func (x *QtUserdata) SyncFromXMP(d *xmp.Document) error