2025-01-24, 08:48 PM
(2025-01-24, 07:49 PM)theguymadmax Wrote: I'm only able to test with the data I have. So, based on my XML file:
Example 1: Jellyfin processes this correctly without throwing any exceptions in the logs.
Code:curl -I https://zap2it.tmsimg.com/assets/p28311369_b_v13_ab.jpg
HTTP/2 200
content-type: image/jpeg
content-length: 1907753
date: Thu, 16 Jan 2025 22:19:35 GMT
server: nginx/1.18.0 (Ubuntu)
Example 2: Content-type isn't included in the header.
Code:curl -I https://zap2it.tmsimg.com/assets/p11334917_st_v9_aa.jpg
HTTP/2 200
content-length: 440691
date: Tue, 21 Jan 2025 16:50:01 GMT
server: nginx/1.18.0 (Ubuntu)
In this case, Jellyfin encounters an issue:
Jellyfin is unable to determine the content-type because it’s not provided in the response. In the future, the system will fall back to determining the content-type based on the url file extension, preventing this exception from being thrown.Code:[2025-01-24 03:21:48.767 +00:00] [WRN] [121] Jellyfin.LiveTv.Guide.GuideManager: Unable to pre-cache "https://zap2it.tmsimg.com/assets/p11334917_st_v9_aa.jpg"
System.Net.Http.HttpRequestException: Invalid image received: contentType not set.
at MediaBrowser.Providers.Manager.ProviderManager.SaveImage(BaseItem item, String url, ImageType type, Nullable`1 imageIndex, CancellationToken cancellationToken)
at Emby.Server.Implementations.Library.LibraryManager.ConvertImageToLocal(BaseItem item, ItemImageInfo image, Int32 imageIndex, Boolean removeOnFailure)
at Jellyfin.LiveTv.Guide.GuideManager.<>c__DisplayClass24_0.<<PreCacheImages>b__2>d.MoveNext()
If your images are sending a content-type header like the first example, please open an issue on the GitHub repo.
Since SchedulesDirect isn't Zap2It, I don't have any control over what they're doing.
But from your second example, p11334917_st_v9_aa.jpg -> "882a86de40012ed1b119084d73098130ab25ff29b144d1402a3c000e07cdf8bb.jpg" on SchedulesDirect, and if you request 882a... you'll see that we're sending a correct Content-Type of image/jpg