Jump to content

Conflicting metadata for Jeopardy


roaku
Go to solution Solved by roaku,

Recommended Posts

I record Jeopardy with Emby OTA.

The guide data says it's currently on Season 39, which matches TMDB.

My recordings library is set to TVDB, which uses the year as season: Season 2022.

Trakt agrees with TVDB that the season is 2022.

 

So, when Emby records Jeopardy, it creates a Season 39 folder and puts episodes there, maintaining TMDB's naming. If I do nothing, I can watch the episode fine, but Trakt doesn't recognize the episode.

 

If I refresh metadata on the episode(s) it pulls down TVDB's info, and the episodes switch to the S2022 naming and numbering. Trakt will now recognize the episodes, but the episodes are now in the wrong season folder.

 

Is there any way to resolve this where all parties and components agree on which episode of Jeopardy any given episode of Jeopardy is?

Link to comment
Share on other sites

Hi, it's not that it's using tmdb numbering, it's coming from the guide data.

Recordings always start with the data from the guide data and you have to manually refresh the metadata if you want to change it.

Refreshing the metadata is your best option.

Link to comment
Share on other sites

I know you were looking for more of an automated approach but it's not that easy. With the guide data not having provider ids, the chances of matching to the wrong data on TVdb or tmdb is going to be higher than usual, so that's why just don't even try it.

Link to comment
Share on other sites

5 hours ago, Luke said:

Hi, it's not that it's using tmdb numbering, it's coming from the guide data.

Recordings always start with the data from the guide data and you have to manually refresh the metadata if you want to change it.

Refreshing the metadata is your best option.

I said that the guide data *matched* TMDB. I did not say that Emby was using TMDB as the source of its guide data.

But to the point, the issue with refreshing metadata is that the season folder becomes incorrect. Does that matter to Emby? Or can I just not worry about it?

 

 

 

Link to comment
Share on other sites

Happy2Play

I would assume this is an issue for all shows that are mis-matched between TVDB and TMDB.

Season 2022 vs Season 39

As you can see Trakt is using TVDB data (2022x01) and the TMDB links are broken as Season 2022 does not exist.

https://www.themoviedb.org/tv/2912/season/2022/episode/1  (Seriesid is correct but not season)

So if guide data comes from one and Emby/Trakt gets from another becomes chaos.  As you can get Emby and Guide using TMDB but Trakt will still be broken as their TMDB data does not work.

Link to comment
Share on other sites

2 minutes ago, Happy2Play said:

I would assume this is an issue for all shows that are mis-matched between TVDB and TMDB.

Season 2022 vs Season 39

As you can see Trakt is using TVDB data (2022x01) and the TMDB links are broken as Season 2022 does not exist.

https://www.themoviedb.org/tv/2912/season/2022/episode/1  (Seriesid is correct but not season)

So if guide data comes from one and Emby/Trakt gets from another becomes chaos.  As you can get Emby and Guide using TMDB but Trakt will still be broken as their TMDB data does not work.

I imagine daily shows and sports would be the most likely to end up in this situation.

Link to comment
Share on other sites

On 12/22/2022 at 8:28 PM, roaku said:

I said that the guide data *matched* TMDB. I did not say that Emby was using TMDB as the source of its guide data.

But to the point, the issue with refreshing metadata is that the season folder becomes incorrect. Does that matter to Emby? Or can I just not worry about it?

 

 

 

If it's possible to improve this and prevent the incorrect match without creating new problems, then of course we'd like to improve this. Can you please supply a server log from an example? How did the file get named by the recording process?

Link to comment
Share on other sites

  • Solution
11 hours ago, Luke said:

If it's possible to improve this and prevent the incorrect match without creating new problems, then of course we'd like to improve this. Can you please supply a server log from an example? How did the file get named by the recording process?

I may have found a solution. TVDB has the Season 39 Episode grouping and numbering available ('Official' order), it's just not their default ('Year' Order). They also have a message that explains the 'Official' order is seen as 'DVD Order' by their APIs.

So, I switched the Jeopardy show level 'Display Order' metadata field to 'DVD' and refreshed the show metadata with 'replace all'. The underlying episodes updated with TVDB data that matches the other sources on the current Season/Episode numbers.

I then set a Jeopardy episode as watched through the Emby UI. The trakt plugin sent the update to trakt, and the watch status was successfully registered on trakt.

We'll see how it goes with a fresh recording today.

https://thetvdb.com/series/jeopardy#seasons

 

Here's a log excerpt from a recording of the Friday the 23rd episode. (This is before I made the metadata change described above):

Quote

2022-12-23 16:29:59.998 Info LiveTV: Recording timer fired for Jeopardy!.
2022-12-23 16:30:00.011 Info HttpClient: GET https://api4.thetvdb.com/v4/search?type=series&q=EP00002348&remote_id=EP00002348
2022-12-23 16:30:00.336 Info HttpClient: GET https://api4.thetvdb.com/v4/search?type=series&q=SH00002348&remote_id=SH00002348
2022-12-23 16:30:00.571 Info App: MovieDbProvider: Finding id for item: Jeopardy!
2022-12-23 16:30:00.572 Info HttpClient: GET https://api.themoviedb.org/3/search/tv?api_key=x_secret1_x&query=Jeopardy!&language=en
2022-12-23 16:30:00.871 Info HttpClient: GET https://api.themoviedb.org/3/tv/2912?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:01.171 Info HttpClient: GET https://api.themoviedb.org/3/tv/209752?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:01.471 Info HttpClient: GET https://api.themoviedb.org/3/tv/12377?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:01.768 Info HttpClient: GET https://api.themoviedb.org/3/tv/3507?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:02.072 Info HttpClient: GET https://api.themoviedb.org/3/tv/9747?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:02.372 Info HttpClient: GET https://api.themoviedb.org/3/tv/153331?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:02.671 Info HttpClient: GET https://api.themoviedb.org/3/tv/74122?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:02.970 Info HttpClient: GET https://api.themoviedb.org/3/tv/16074?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:03.272 Info HttpClient: GET https://api.themoviedb.org/3/tv/97489?api_key=x_secret1_x&append_to_response=alternative_titles,reviews,credits,images,keywords,external_ids,videos,content_ratings&language=en&include_image_language=en,null
2022-12-23 16:30:03.313 Info HttpClient: GET https://private.omdbapi.com?apikey=x_secret2_x&plot=full&r=json&s=Jeopardy!&type=series
2022-12-23 16:30:03.463 Info LiveTV: Found existing series based on provider ids: 526719
2022-12-23 16:30:03.463 Info LiveTV: Found existing series based on path: Jeopardy!
2022-12-23 16:30:03.463 Info LiveTV: Getting media sources for recording from channel *** to record to /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:03.464 Info LiveTV: Opening live stream for recording from channel *** to /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:03.464 Info LiveTvManager: Opening channel stream, external channel Id: hdhr_***
2022-12-23 16:30:03.464 Info LiveTV: Streaming Channel ***, with streamId: native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3
2022-12-23 16:30:03.464 Info HdHomerunHost: GetChannelStream: channel id: ***. stream id: native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3 profile: native
2022-12-23 16:30:03.464 Info SharedHttpPipelineSource: Opening SharedHttpPipelineSource Live stream from http://host3:5004/x_path1_x/x_path6_x
2022-12-23 16:30:03.465 Info HttpClient: GET http://host3:5004/x_path1_x/x_path6_x
2022-12-23 16:30:03.820 Info HttpClient: Http response 200 from http://host3:5004/x_path1_x/x_path6_x after 356ms. HeadersServer=HDHomeRun/1.0, Connection=close, Cache-Control=no-cache, transferMode.dlna.org=Streaming, Date=Fri, 23 Dec 2022 22:30:04 GMT, X-HDHomeRun-Resource=tuner2
2022-12-23 16:30:03.822 Info SharedHttpPipelineSource: Beginning SharedHttpPipelineSource stream to /media/usb/trans-temp/transcoding-temp/f698f89a454441569084ee039a2f6769.ts
2022-12-23 16:30:03.822 Info HdHomerunHost: Live stream opened after 357.5069ms
2022-12-23 16:30:03.822 Info LiveTV: Returning mediasource streamId native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3, mediaSource.Id native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3, mediaSource.LiveStreamId
2022-12-23 16:30:06.822 Info MediaProbeManager: ProcessRun 'ffprobe' Execute: /opt/emby-server/bin/ffprobe -analyzeduration 3000000 -i "http://127.0.0.1:8096/LiveTv/LiveStreamFiles/f698f89a454441569084ee039a2f6769/stream.ts" -threads 0 -v info -print_format json -show_streams -show_format -show_data
2022-12-23 16:30:07.214 Info MediaProbeManager: ProcessRun 'ffprobe' Process exited with code 0 - Succeeded
2022-12-23 16:30:07.227 Info MediaSourceManager: Live stream opened: {"Protocol":"Http","Id":"native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3","Path":"http://127.0.0.1:8096/LiveTv/LiveStreamFiles/f698f89a454441569084ee039a2f6769/stream.ts","Type":"Default","Container":"mpegts","IsRemote":false,"ContainerStartTimeTicks":301203553110,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":false,"IsInfiniteStream":true,"RequiresOpening":true,"RequiresClosing":true,"LiveStreamId":"06044cf0e6f93cdae5f285c9ecfaaeb4_01413a525b3a9622ce6fdf19f7dde354_native_83b31f2b2d33151fc1333f5a793018f3_2ba1e26c9ce68512d7dc47ccc5a846e3","RequiresLooping":false,"SupportsProbing":false,"MediaStreams":[{"Codec":"mpeg2video","StreamStartTimeTicks":301207419670,"TimeBase":"1/90000","VideoRange":"SDR","DisplayTitle":"1080i MPEG2VIDEO","IsInterlaced":true,"BitRate":15000000,"BitDepth":8,"RefFrames":1,"IsDefault":false,"IsForced":false,"Height":1080,"Width":1920,"AverageFrameRate":29.97003,"RealFrameRate":29.97003,"Profile":"Main","Type":"Video","AspectRatio":"16:9","Index":0,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Protocol":"File","PixelFormat":"yuv420p","Level":4,"IsAnamorphic":false},{"Codec":"ac3","CodecTag":"AC-3","Language":"eng","StreamStartTimeTicks":301203553110,"TimeBase":"1/90000","DisplayTitle":"English AC3 5.1","DisplayLanguage":"English","IsInterlaced":false,"ChannelLayout":"5.1","BitRate":384000,"Channels":6,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Protocol":"File"},{"Codec":"eia_608","StreamStartTimeTicks":301207419670,"TimeBase":"1/90000","Title":"Closed Captions 1","DisplayTitle":"Und Closed Captions 1","IsInterlaced":false,"IsDefault":true,"IsForced":false,"Type":"Subtitle","Index":100,"IsExternal":false,"IsTextSubtitleStream":true,"SupportsExternalStream":false,"Protocol":"File","SubtitleLocationType":"VideoSideData"}],"Formats":[],"Bitrate":15384000,"RequiredHttpHeaders":{},"ReadAtNativeFramerate":false,"DefaultAudioStreamIndex":1}
2022-12-23 16:30:07.228 Info LiveTV: Recording ensure file unique input: /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:07.228 Info LiveTV: Recording ensure file unique result: /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:07.228 Info LiveTV: Will record to /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts for 29.879526446666667 minutes.
2022-12-23 16:30:07.317 Info HttpClient: GET https://emby.tmsimg.com/assets/p22882989_b_v12_aa.jpg?w=480&h=720
2022-12-23 16:30:07.318 Info LiveTV: Copying recording stream to file /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:07.591 Info LiveTV: Triggering refresh on /media/usb/DVR/Jeopardy! (1984)/Season 39/Jeopardy! S39E75.ts
2022-12-23 16:30:07.593 Info LiveTV: Refreshing recording parent /media/usb/DVR/Jeopardy! (1984)/Season 39
2022-12-23 16:30:07.670 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=0
2022-12-23 16:30:08.030 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=1
2022-12-23 16:30:08.330 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=2
2022-12-23 16:30:08.590 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=3
2022-12-23 16:30:08.735 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=4
2022-12-23 16:30:09.096 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=5
2022-12-23 16:30:09.553 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=6
2022-12-23 16:30:09.764 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=7
2022-12-23 16:30:10.188 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=8
2022-12-23 16:30:10.624 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=9
2022-12-23 16:30:10.800 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=10
2022-12-23 16:30:10.981 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=11
2022-12-23 16:30:11.189 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=12
2022-12-23 16:30:11.365 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=13
2022-12-23 16:30:11.507 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=14
2022-12-23 16:30:11.632 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=15
2022-12-23 16:30:11.786 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=16
2022-12-23 16:30:11.913 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official?page=17
2022-12-23 16:30:12.453 Info HttpClient: GET https://private.omdbapi.com?apikey=x_secret2_x&i=tt0159881&season=39&detail=full
2022-12-23 16:30:12.549 Info HttpClient: GET https://api.themoviedb.org/3/tv/2912/season/39/episode/75?api_key=x_secret1_x&append_to_response=images,external_ids,credits,videos&language=en&include_image_language=en,null
2022-12-23 16:30:12.673 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=0
2022-12-23 16:30:13.068 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=1
2022-12-23 16:30:13.266 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=2
2022-12-23 16:30:13.423 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=3
2022-12-23 16:30:13.541 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=4
2022-12-23 16:30:13.660 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=5
2022-12-23 16:30:13.790 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=6
2022-12-23 16:30:13.919 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=7
2022-12-23 16:30:14.201 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=8
2022-12-23 16:30:14.352 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=9
2022-12-23 16:30:14.696 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=10
2022-12-23 16:30:14.823 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=11
2022-12-23 16:30:14.947 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=12
2022-12-23 16:30:15.148 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=13
2022-12-23 16:30:15.334 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=14
2022-12-23 16:30:15.456 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=15
2022-12-23 16:30:15.579 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=16
2022-12-23 16:30:15.732 Info HttpClient: GET https://api4.thetvdb.com/v4/series/77075/episodes/official/eng?page=17

 

Link to comment
Share on other sites

Yea these are the kinds of manual workarounds that users can take although I don' think it's something we could automate. Thanks for investigating.

Link to comment
Share on other sites

6 hours ago, Luke said:

Yea these are the kinds of manual workarounds that users can take although I don' think it's something we could automate. Thanks for investigating.

After testing with today's recording and viewing, I can clarify that this isn't a manual workaround in my configuration, at least for Jeopardy.

It's a one time change at the show level that results in all parties agreeing on the season and episode numbering going forward.

I don't need to trigger a manual metadata refresh. There's no season folder mismatch. Trakt works correctly. All is well.

Edited by roaku
Link to comment
Share on other sites

Right but switching all tvdb usage from tvdb default order to tvdb official order could cause any number of problems with other shows.

Link to comment
Share on other sites

1 minute ago, Luke said:

Right but switching all tvdb usage from tvdb default order to tvdb official order could cause any number of problems with other shows.

Ok. I was still talking about my specific problem/solution with one specific show.

 

  • 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...