iBicha / playlet

The unofficial, privacy driven, YouTube client for Roku
GNU Affero General Public License v3.0
277 stars 11 forks source link

Remembering Playback Position and Watch History #138

Open joseio opened 9 months ago

joseio commented 9 months ago

It would be beautiful if the app could cache a list of the 10 (arbitrary number) most recently watched videos along with their corresponding playback positions.

Currently, users need to manually search for the video they were previously watching, then scrub to the approximate position that they left off at. This becomes a bit of a hindrance, especially in longer-form videos that cannot be watched in one sitting.

iBicha commented 9 months ago

This is a great idea. The watch history itself can be done using Invidious's watch history (right now if you're logged in and watch a video, it gets added to the Invidious watch history).

I think we could add a Continue watching section with recently watched, but unfinished videos. We can save this information locally on Roku.

This does turn into a problem where the Continue watching becomes a graveyard of videos you started but you did not find interesting. Some perhaps an expiry date to these videos can be useful (they go away after X days of not continue watching them) and an easy way to remove videos from the list would also need to be put in place

joseio commented 9 months ago

Right! One thing to consider with the expiration date approach is that the cache size would be bounded by the number of videos a user can watch (and not necessarily finish) within a certain expiration date. This can be acceptable if we're not really concerned with a bloated cache. If memory is of much concern, though, perhaps a watch history list with a fixed length may be appropriate. Spitballing here, but perhaps the watch history list length may be configurable in settings (i.e., save only the 5, 10, 20 most recently watched videos).