Slow to obtain images via API

Post here any issues with the API or feature requests
Post Reply
mofa2016
Posts: 2
Joined: Mon Oct 28, 2019 6:07 pm

Slow to obtain images via API

Post by mofa2016 »

I am a Emby user and built-in "fanart.tv" image provider worked good in those days earlier, about a month ago.

But recently I found it often hits "Time Out". I used my webbrowser to open the image link in the log, found out it is much slower than usually viewing images on fanart.tv website. It took meto download a 200KB poster via the API link, and seconds via usually website visiting.

Giving a little more bandwith like 400kbps(50KB/s) to personal API would help a lot.

that would be fair enough to download a 1MB image within 30s.
Attachments
embyserver.txt
(611.65 KiB) Downloaded 628 times
doug2h@hotmail.com
Posts: 1
Joined: Mon Nov 18, 2019 2:54 am

Re: Slow to obtain images via API

Post by doug2h@hotmail.com »

Is there a update on this or anything that needs to be changed in Emby?


2019-11-17 17:57:19.714 Error ProviderManager: FanartSeriesProvider failed in GetImageInfos for type Series
*** Error Report ***
Version: 4.3.0.22
Command line: Y:\Emby-Server\system\EmbyServer.dll
Operating system: Microsoft Windows NT 6.2.9200.0
64-Bit OS: True
64-Bit Process: True
User Interactive: True
Runtime: file:///Y:/Emby-Server/system/System.Private.CoreLib.dll
Processor count: 12
Program data path: Y:\Emby-Server\programdata
Application directory: Y:\Emby-Server\system
MediaBrowser.Model.Net.HttpException: MediaBrowser.Model.Net.HttpException: Connection to https://webservice.fanart.tv/v3/tv/7890 ... =CLIENTKEY timed out
---> System.Threading.Tasks.TaskCanceledException: The operation was canceled.
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean allowHttp2, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
--- End of inner exception stack trace ---
at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsync(HttpRequestOptions options, String httpMethod)
at Fanart.FanartSeriesProvider.DownloadSeriesJson(String tvdbId, CancellationToken cancellationToken)
at Fanart.FanartSeriesProvider.EnsureSeriesJson(String tvdbId, CancellationToken cancellationToken)
at Fanart.FanartSeriesProvider.GetImages(BaseItem item, LibraryOptions libraryOptions, CancellationToken cancellationToken)
at MediaBrowser.Providers.Manager.ProviderManager.GetImages(BaseItem item, LibraryOptions libraryOptions, CancellationToken cancellationToken, IRemoteImageProvider provider, Int32 providerIndex)
Source: Emby.Server.Implementations
TargetSite: Void MoveNext()
InnerException: System.Threading.Tasks.TaskCanceledException: The operation was canceled.
Source: System.Private.CoreLib
TargetSite: Void Throw()
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean allowHttp2, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
at Emby.Server.Implementations.HttpClientManager.CoreHttpClientManager.SendAsyncInternal(HttpRequestOptions options, String httpMethod)
Post Reply