Jump to content

Missing Emby "metadata" Fields with Embedded Meta Information


luser

Recommended Posts

luser

It's possible to update some, but not all, Emby "metadata" fields using a file's embedded meta information.
It would be great if it was possible to populate all or more Emby "metadata" fields using file meta information.

From my testing (with MP4), it's only possible to populate the following Emby "metadata" fields with file meta information:

  - Title => Read from the `©nam` QuickTime tag
  - Overview => Read from the `ldes` QuickTime tag
  - Year => Read from the `©day` QuickTime tag
  - Genres => Read from the `©gen` and `gnre` QuickTime tags

I'd really like to be able to populate the following fields with file meta information as well:

  - People
  - Studios  *It was reported that this field could be populated using the `cprt` QuickTime tag. However, this doesn't work for me.
  - Tags


This functionality already exists, as it's possible to update some Emby "metadata" fields. Therefore, I assume allowing the missing fields to be updated wouldn't be a big undertaking.

Thank you

Link to comment
Share on other sites

HI, regarding studios, I've never heard of the cprt field but we do support the copyright field.

People are supported in two forms:

  • WM/MediaCredits
  • itunes formatted embedded info
Link to comment
Share on other sites

luser

The `cprt` (ID) tag is considered the copyright field. What iTunes tags do I need to update to populate the following Emby fields? I've tried them all and only four (mentioned above) have an effect.

  - People
  - Tags

Edited by luser
Link to comment
Share on other sites

the itunes format is an entire xml structure embedded as a tag:

http://www.apple.com/DTDs/PropertyList-1.0.dtd

It's not something I would suggest trying to mimic. I was just responding to indicate that it is supported via that.

I haven't heard of other ways to store a list of people in embedded metadata. What's commonly used out there?

Link to comment
Share on other sites

luser

Multiple values, separated by `\\`. It already works for genres. There are a bunch of QuickTime tags that Emby doesn't use. Any of them would work. Here's a list.  https://exiftool.org/TagNames/QuickTime.html. Also, it wouldn't have to be a QuickTime tag. It could be a EXIF tag (https://exiftool.org/TagNames/EXIF.html).

Edited by luser
Link to comment
Share on other sites

luser

Multiple values, separated by `\\`. It already works for genres. There are a bunch of QuickTime tags that Emby doesn't use; artist, director, author, Conductor, Publisher, and so on. Any of them would work. Here's a list.  https://exiftool.org/TagNames/QuickTime.html. Also, it wouldn't have to be a QuickTime tag. It could be a EXIF tag (https://exiftool.org/TagNames/EXIF.html).

 

(editing posts no longer works)

Edited by luser
  • Thanks 1
Link to comment
Share on other sites

luser
| Tag ID | Tag Name              | Writable  | Values / Notes                                               |
| ------ | --------------------- | --------- | ------------------------------------------------------------ |
| '----' | iTunesInfo            | -         | --> [QuickTime iTunesInfo Tags](https://exiftool.org/TagNames/QuickTime.html#iTunesInfo) |
| '@PST' | ParentShortTitle      | string    |                                                              |
| '@ppi' | ParentProductID       | string    |                                                              |
| '@pti' | ParentTitle           | string    |                                                              |
| '@sti' | ShortTitle            | string    |                                                              |
| 'AACR' | Unknown_AACR?         | string    |                                                              |
| 'CDEK' | Unknown_CDEK?         | string    |                                                              |
| 'CDET' | Unknown_CDET?         | string    |                                                              |
| 'GUID' | GUID                  | string    |                                                              |
| 'VERS' | ProductVersion        | string    |                                                              |
| 'aART' | AlbumArtist           | string    |                                                              |
| 'akID' | AppleStoreAccountType | int8s     | 0 = iTunes   1 = AOL                                         |
| 'albm' | Album                 | string/   |                                                              |
| 'apID' | AppleStoreAccount     | string    |                                                              |
| 'atID' | AlbumTitleID          | int32s    |                                                              |
| 'auth' | Author                | string    |                                                              |
| 'catg' | Category              | string    |                                                              |
| 'cnID' | AppleStoreCatalogID   | int32s    |                                                              |
| 'covr' | CoverArt              | string    |                                                              |
| 'cpil' | Compilation           | int8s     | 0 = No   1 = Yes                                             |
| 'cprt' | Copyright             | string    |                                                              |
| 'desc' | Description           | string/   |                                                              |
| 'disk' | DiskNumber            | undef     |                                                              |
| 'dscp' | Description           | string/   |                                                              |
| 'egid' | EpisodeGlobalUniqueID | string    |                                                              |
| 'geID' | GenreID               | int32s    | --> [QuickTime GenreID Values](https://exiftool.org/TagNames/QuickTime.html#GenreID) |
| 'gnre' | Genre                 | undef/    |                                                              |
| 'grup' | Grouping              | string/   |                                                              |
| 'gshh' | GoogleHostHeader      | string    |                                                              |
| 'gspm' | GooglePingMessage     | string    |                                                              |
| 'gspu' | GooglePingURL         | string    |                                                              |
| 'gssd' | GoogleSourceData      | string    |                                                              |
| 'gsst' | GoogleStartTime       | string    |                                                              |
| 'gstd' | GoogleTrackDuration   | string    |                                                              |
| 'hdvd' | HDVideo               | int8s     | 0 = No   1 = Yes                                             |
| 'itnu' | iTunesU               | int8s     | 0 = No   1 = Yes                                             |
| 'keyw' | Keyword               | string    |                                                              |
| 'ldes' | LongDescription       | string    |                                                              |
| 'pcst' | Podcast               | int8s     | 0 = No   1 = Yes                                             |
| 'perf' | Performer             | string    |                                                              |
| 'pgap' | PlayGap               | int8s     | 0 = Insert Gap   1 = No Gap                                  |
| 'plID' | PlayListID            | int32s[2] |                                                              |
| 'prID' | ProductID             | string    |                                                              |
| 'purd' | PurchaseDate          | string    |                                                              |
| 'purl' | PodcastURL            | string    |                                                              |
| 'rate' | RatingPercent         | string    |                                                              |
| 'rldt' | ReleaseDate           | string    |                                                              |
| 'rtng' | Rating                | int8s     | 0 = none   1 = Explicit   2 = Clean   4 = Explicit (old)     |
| 'sdes' | StoreDescription      | string    |                                                              |
| 'sfID' | AppleStoreCountry     | int32s    | --> [QuickTime AppleStoreCountry Values](https://exiftool.org/TagNames/QuickTime.html#AppleStoreCountry) |
| 'shwm' | ShowMovement          | int8s     | 0 = No   1 = Yes                                             |
| 'soaa' | SortAlbumArtist       | string    |                                                              |
| 'soal' | SortAlbum             | string    |                                                              |
| 'soar' | SortArtist            | string    |                                                              |
| 'soco' | SortComposer          | string    |                                                              |
| 'sonm' | SortName              | string    |                                                              |
| 'sosn' | SortShow              | string    |                                                              |
| 'stik' | MediaType             | int8s     | 0 = Movie (old)   1 = Normal (Music)   2 = Audiobook   5 = Whacked Bookmark   6 = Music Video   9 = Movie   10 = TV Show   11 = Booklet   14 = Ringtone   21 = Podcast   23 = iTunes U |
| 'titl' | Title                 | string/   |                                                              |
| 'tmpo' | BeatsPerMinute        | int16s    |                                                              |
| 'trkn' | TrackNumber           | undef     |                                                              |
| 'tven' | TVEpisodeID           | string    |                                                              |
| 'tves' | TVEpisode             | int32s    |                                                              |
| 'tvnn' | TVNetworkName         | string    |                                                              |
| 'tvsh' | TVShow                | string    |                                                              |
| 'tvsn' | TVSeason              | int32u    |                                                              |
| 'yrrc' | Year                  | string    |                                                              |
| "©ART" | Artist                | string    |                                                              |
| "©alb" | Album                 | string    |                                                              |
| "©ard" | ArtDirector           | string    |                                                              |
| "©arg" | Arranger              | string    |                                                              |
| "©aut" | Author                | string/   |                                                              |
| "©cmt" | Comment               | string    |                                                              |
| "©com" | Composer              | string/   |                                                              |
| "©con" | Conductor             | string    |                                                              |
| "©cpy" | Copyright             | string/   |                                                              |
| "©day" | ContentCreateDate     | string    |                                                              |
| "©des" | Description           | string    |                                                              |
| "©dir" | Director              | string    |                                                              |
| "©enc" | EncodedBy             | string    |                                                              |
| "©gen" | Genre                 | string    |                                                              |
| "©grp" | Grouping              | string    |                                                              |
| "©lyr" | Lyrics                | string    |                                                              |
| "©mvc" | MovementCount         | int16s    |                                                              |
| "©mvi" | MovementNumber        | int16s    |                                                              |
| "©mvn" | MovementName          | string    |                                                              |
| "©nam" | Title                 | string    |                                                              |
| "©nrt" | Narrator              | string    |                                                              |
| "©ope" | OriginalArtist        | string    |                                                              |
| "©prd" | Producer              | string    |                                                              |
| "©pub" | Publisher             | string    |                                                              |
| "©sne" | SoundEngineer         | string    |                                                              |
| "©sol" | Soloist               | string    |                                                              |
| "©st3" | Subtitle              | string    |                                                              |
| "©too" | Encoder               | string    |                                                              |
| "©trk" | Track                 | string    |                                                              |
| "©wrk" | Work                  | string    |                                                              |
| "©wrt" | Composer              | string    |                                                              |
| "©xpd" | ExecutiveProducer     | string    |                                                              |
| "©xyz" | GPSCoordinates        | string    |                                                              |

 

Link to comment
Share on other sites

luser

The `cprt` QuickTime tag does work for me. I'm not sure what mistake I made previously. I probably forgot to re-scan metadata. I'm able to populate multiple studios by separating them with `\\` or `,` .

This is a perfect example.
The "Studios" field is populated based on the value of the copyright (`cprt`) tag. If this same scenario existed for tags and people, I'd be grateful!

Using the same logic as "Studios"...
  - "People" could be populated using the value of the Artist (`©ART`) tag
  - "Tags" could be populated using the value of the Grouping (`©grp`) tag

Link to comment
Share on other sites

luser

(I can't edit the initial post so I'll summarize here)

Only a subset of Emby "metadata" fields can be populated.
> I tested this by populating every QuickTime ItemList tag with a string data type.

  - Title => Read from the `©nam` QuickTime tag
  - Overview => Read from the `ldes` QuickTime tag
  - Year => Read from the `©day` QuickTime tag
  - Genres => Read from the `©gen` and `gnre` QuickTime tags
  - Studios => Read from the `cprt` QuickTime tag


Functionality for all other Emby "metadata" fields is missing.
  - Tags, People, and so on
 

Suggested fix:
  - People => Read from the `©ART` QuickTime tag
  - Tags => Read from the `©grp` QuickTime tag

 

Edited by luser
  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...