polymorphicshade / Tubular

A fork of NewPipe that implements SponsorBlock and ReturnYouTubeDislike.
GNU General Public License v3.0
1.33k stars 35 forks source link

Add option to bulk "mark as read" #99

Open thomasdelorge opened 1 month ago

thomasdelorge commented 1 month ago

Checklist

Feature description

Switching from NewPipe x SponsorBlock to Tabularr, I was able to import my subscriptions, but not previously viewed videos.

I use marking videos as viewed a lot to keep a clear subscriptions feed, but by switching apps I had +700 videos to notice in view 😒

I made a zip export of Tabularr, which I opened with SqlLiteBrowser (https://sqlitebrowser.org/dl/) to update the .db file to mark ALL videos as read :

1) Add all video uids to the stream_state table: INSERT INTO stream_state (stream_id, progress_time) SELECT uid, 0 FROM streams WHERE uid NOT IN (SELECT stream_id FROM stream_state);

2) Complete stream_state.progress_time with streams.duration UPDATE stream_state SET progress_time = (SELECT duration * 1000 FROM streams WHERE streams.uid = stream_state.stream_id);

3) Add entries to stream_history (otherwise videos are marked as fully played but still visible in the sub feed) INSERT INTO stream_history (stream_id, access_date, repeat_count) SELECT uid, 1720204936538, 1 FROM streams WHERE uid NOT IN (SELECT stream_id FROM stream_history);

If this helps someone else in the same situation,

Thanks for developing this fork, Thomas

Why do you want this feature?

Simple on-boarding

Why ist the feature relevant to this fork?

Doesn't put the brakes on work adoption

Additional information

No response

justeepin commented 3 weeks ago

I would love a 'mark as read' feature.

I would always go through the YouTube highlight dot on my subscriptions and add the videos I wanted to watch to the watch later playlist. The dot was nice because you knew what was old and what was new.