Download Manager#2012
Conversation
LePips
left a comment
There was a problem hiding this comment.
I understand that working on this looks exciting, but I'm going to caution going too much further. I really need to take a look at the many other open PRs and I would have something like this be implemented after #1752 anyways, which would change the direction of some parts that I see are being worked on.
Understood. This is kind of a thinking out loud branch. For this part I'm primarily just looking to lock down the downloading/metadata side of this. I am expecting this to be a draft until #1752 is done. The paging part of this is really bare bones with the understanding this will need to be reworked post-1752. I also think if "transcoded downloads" are a route in the future that's an SDK item... essentially, request HLS F-MP4 and then combine the results into a file. It's pretty easy to do but it introduces so many edge cases! |
Summary
Resolves: #1784
This should meet the following items. I wrote these for the original post so it was also my gameplan for this as well:
BaseItemDtoto queue downloads- Handle single items and items with children (series/seasons/episodes or collections/children) <- This is missing as folder items are not set with
canDownloadfrom server.DownloadItemViewand support allFilterViewModelfiltering inPagingLibraryViewPosterprotocolBaseItemDtobutDownloadItemDtoItemViewExperimental -> Enable DownloadsistrueOutside of these, I can some stubs set for transcoded downloads although that's mostly just a flag for bitrate. For now this only takes
Maximum.WIP
This is still WIP while I test and try to break this more. I just nailed down the manager/task pattern so I'm likely to find something that doesn't work as expected. I also need to figure out where the downloads end up. There is still a bit I need to figure out so mostly making this as a draft to avoid duplicate work.
Video
Demo.mov