Jellyfin Forum
Issues With TheMovieDB Metadata identification - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+---- Forum: Media Scanning & Identification (https://forum.jellyfin.org/f-media-scanning-identification)
+---- Thread: Issues With TheMovieDB Metadata identification (/t-issues-with-themoviedb-metadata-identification)



Issues With TheMovieDB Metadata identification - shotblocker - 2024-12-07

Here is my log for example when I try to pull data from TheMovieDB for "Tropic Thunder." I have read similar issues of it possibly being a DNS issue, but it doesn't seem to be the case. However, I am open to any and all suggestions.


Code:
[2024-12-07 01:55:46.797 +00:00] [INF] [8] Jellyfin.Api.Controllers.ItemLookupController: Setting provider id's to item 13430b5f-39ac-2259-b38c-b9ec665ef8ef-"Tropic Thunder": [("Tmdb": "7446")]
[2024-12-07 01:55:46.968 +00:00] [INF] [8] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting "/usr/lib/jellyfin-ffmpeg/ffprobe" with args "-analyzeduration 200M -probesize 1G -i file:\"/data/media/movies/Tropic Thunder (2008)/Tropic Thunder (2008) Bluray-1080p.mp4\" -threads 0 -v warning -print_format json -show_streams -show_chapters -show_format"
[2024-12-07 01:55:47.385 +00:00] [INF] [8] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting "/usr/lib/jellyfin-ffmpeg/ffprobe" with args "-analyzeduration 200M -probesize 1G -i file:\"/data/media/movies/Tropic Thunder (2008)/Tropic Thunder (2008) Bluray-1080p.eng.srt\" -threads 0 -v warning -print_format json -show_streams -show_format"
[2024-12-07 01:55:47.824 +00:00] [ERR] [8] MediaBrowser.Providers.Movies.MovieMetadataService: Error in "TheMovieDb"
Newtonsoft.Json.JsonReaderException: Could not convert string to DateTime: 2010-05-24 04:56:33 UTC. Path 'videos.results[0].published_at', line 1, position 78879.
  at Newtonsoft.Json.JsonReader.ReadDateTimeString(String s)
  at Newtonsoft.Json.JsonTextReader.FinishReadQuotedStringValue(ReadType readType)
  at Newtonsoft.Json.JsonTextReader.ReadStringValue(ReadType readType)
  at Newtonsoft.Json.JsonTextReader.ReadAsDateTime()
  at Newtonsoft.Json.JsonReader.ReadForType(JsonContract contract, Boolean hasConverter)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
  at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
  at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
  at TMDbLib.Utilities.Serializer.TMDbJsonSerializer.Deserialize(Stream source, Type type)
  at TMDbLib.Utilities.Serializer.SerializerExtensions.Deserialize[T](ITMDbSerializer serializer, Stream source)
  at TMDbLib.Rest.RestResponse`1.GetDataObject()
  at TMDbLib.Client.TMDbClient.GetMovieAsync(String imdbId, String language, String includeImageLanguage, MovieMethods extraMethods, CancellationToken cancellationToken)
  at TMDbLib.Client.TMDbClient.GetMovieAsync(Int32 movieId, String language, String includeImageLanguage, MovieMethods extraMethods, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Plugins.Tmdb.TmdbClientManager.GetMovieAsync(Int32 tmdbId, String language, String imageLanguages, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Plugins.Tmdb.Movies.TmdbMovieProvider.GetMetadata(MovieInfo info, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Manager.MetadataService`2.ExecuteRemoteProviders(MetadataResult`1 temp, String logName, Boolean replaceData, TIdType id, IEnumerable`1 providers, CancellationToken cancellationToken)
[2024-12-07 01:55:48.095 +00:00] [ERR] [21] MediaBrowser.Providers.Manager.ProviderManager: "TmdbMovieImageProvider" failed in GetImageInfos for type "Movie" at "/data/media/movies/Tropic Thunder (2008)/Tropic Thunder (2008) Bluray-1080p.mp4"
Newtonsoft.Json.JsonReaderException: Could not convert string to DateTime: 2010-05-24 04:56:33 UTC. Path 'videos.results[0].published_at', line 1, position 86000.
  at Newtonsoft.Json.JsonReader.ReadDateTimeString(String s)
  at Newtonsoft.Json.JsonTextReader.FinishReadQuotedStringValue(ReadType readType)
  at Newtonsoft.Json.JsonTextReader.ReadStringValue(ReadType readType)
  at Newtonsoft.Json.JsonTextReader.ReadAsDateTime()
  at Newtonsoft.Json.JsonReader.ReadForType(JsonContract contract, Boolean hasConverter)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
  at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
  at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
  at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
  at TMDbLib.Utilities.Serializer.TMDbJsonSerializer.Deserialize(Stream source, Type type)
  at TMDbLib.Utilities.Serializer.SerializerExtensions.Deserialize[T](ITMDbSerializer serializer, Stream source)
  at TMDbLib.Rest.RestResponse`1.GetDataObject()
  at TMDbLib.Client.TMDbClient.GetMovieAsync(String imdbId, String language, String includeImageLanguage, MovieMethods extraMethods, CancellationToken cancellationToken)
  at TMDbLib.Client.TMDbClient.GetMovieAsync(Int32 movieId, String language, String includeImageLanguage, MovieMethods extraMethods, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Plugins.Tmdb.TmdbClientManager.GetMovieAsync(Int32 tmdbId, String language, String imageLanguages, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Plugins.Tmdb.Movies.TmdbMovieImageProvider.GetImages(BaseItem item, CancellationToken cancellationToken)
  at MediaBrowser.Providers.Manager.ProviderManager.GetImages(BaseItem item, IRemoteImageProvider provider, String preferredLanguage, Boolean includeAllLanguages, CancellationToken cancellationToken, Nullable`1 type)



RE: Issues With TheMovieDB Metadata identification - TheDreadPirate - 2024-12-07

I'm seeing the same messages in my log starting a couple hours ago. And I've seen a couple other users start reporting this issue.

It is likely something on TMDB's end. I'm looking around for confirmation.


RE: Issues With TheMovieDB Metadata identification - TheDreadPirate - 2024-12-07

https://github.com/jellyfin/jellyfin/issues/13171


RE: Issues With TheMovieDB Metadata identification - shotblocker - 2024-12-07

Thanks! Will keep an eye on the issue.


RE: Issues With TheMovieDB Metadata identification - TheDreadPirate - 2024-12-07

The workaround is to have the TVDB plugin installed and as your secondary image provider. I didn't notice any issues since my setup was falling back to TVDB. Once I poked around did some testing, TMDB definitely changed something on their end.


RE: Issues With TheMovieDB Metadata identification - Fate - 2024-12-07

Seems ReleaseData changed in the API
https://github.com/jellyfin/TMDbLib/issues/522