djp952 / pvr.hdhomerundvr

Unofficial Kodi HDHomeRun DVR PVR Client
https://github.com/djp952/pvr.hdhomerundvr/wiki
Other
58 stars 9 forks source link

Slow enumeration of Recordings #128

Open alecmascot opened 2 weeks ago

alecmascot commented 2 weeks ago

Since upgrading to Kodi 21 the time it takes to enumerate Recordings has increased significantly. No other changes have been made. The HDHomerunDVR is running in a jail on TrueNAS 13 and Kodi is running under LibreElec. What can I look at to progress this ? Thanks

djp952 commented 1 week ago

Hi! Hmmm... there shouldn't be any difference between Kodi 20 and Kodi 21 for, well, anything (same exact addon code for both versions). Roughly how many recordings do you have, did that number increase a lot recently?

Getting the recordings is pretty time consuming in the grand scheme of things but not so much that you should really notice it happening. The way this works is that the addon makes an initial query to your NAS to get a list of "series" (http://ip:port/recorded_files.json) and then fires off a big list of follow-up queries for each series to get all the data. When HDHomeRun Record first changed to that method I used something called HTTP Pipelining to try and handle all those queries at the same time, but it was flaky and didn't really make enough difference to keep that "feature".

My guess, and it's just a guess, is that something about your environment may not be liking how it's trying to query so many URLs at (effectively) the same time? I'm not familiar with TrueNAS or how the jail might impact it, sadly.

The addon doesn't use Kodi's HTTP query capabilities, it uses its own, and that code (libcurl) is the same for Kodi 20 and Kodi 21 so I'm doubtful that the version of Kodi has much if anything to do with it. It could be that we need to update libcurl (it's been a long while) to address something performance-wise here, but I'm not sure how we go about proving that.

Being on LibreELEC we're not really going to be able to use a web browser to see if maybe the Record engine is just being slow, do you have another machine on the same network with Chrome or Edge (or whatever) that you could use to poke around? The responses from the Record engine should be pretty much instantaneous, if we see any slowness when just querying it we might be able to point the finger in that direction?

Also, thought - do you have the HDHomeRun app installed anywhere? The official app does the same things, but not all at once. If you have that app somewhere, how does navigating the recordings feel there? Normal? Any slower than expected?

alecmascot commented 1 week ago

Thanks for your suggestions. I installed thw Windows client on my laptop and that is quite snappy. I went to the http://hdhomerundvrIP:Port in Chrome and that is quick as well. I down graded to Libreelec 11.06/Kodi 20 and that is good.. I rebooted the whole TrueNAS server with no change in Kodi 21.

??? :-))

alecmascot commented 16 hours ago

I have down graded to Libreelec 11.06/Kodi 20 and it will stay like that to give me the responsiveness I prefer. Rgds