summaryrefslogtreecommitdiffstatshomepage
path: root/content/20
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--content/20/index.md58
1 files changed, 58 insertions, 0 deletions
diff --git a/content/20/index.md b/content/20/index.md
new file mode 100644
index 0000000..ac90ad1
--- /dev/null
+++ b/content/20/index.md
@@ -0,0 +1,58 @@
++++
+date = 2024-09-19T22:45:36+02:00
+title = "List mpv(1)'s watch_later entries with later(1)"
+
+[taxonomies]
+tags = ["projects", "later(1)"]
+
+[extra]
+related = []
++++
+
+If you are like me then you have a basically never-ending backlog of videos to
+watch. Perhaps sometimes you even watch videos so long that they're basically
+impossible to finish in one sitting. Or you have about an hour left on a video,
+but you should really go to sleep.
+
+All of these require some way to remember the timestamp where you left off. I
+use [`mpv(1)`](https://mpv.io/) to watch my videos and thankfully there is a
+built-in way to do this. By default, hitting `Q` will quit the video and
+remember the timestamp ([among other
+settings](https://mpv.io/manual/stable/#resuming-playback)) for next time you
+open the file. This works regardless of whether the video exists on your
+filesystem or is streamed from a URL.
+
+After a while of using this you might amass more than a couple of unfinished
+videos that `mpv(1)` knows about, but what it sadly does not provide is an easy
+way to show you which videos those are...
+
+This is where a shared effort between my partner
+[nortti](https://ahti.space/~nortti/) and me comes in:
+[`later(1)`](https://git.oriole.systems/later/about/). It is a small Python
+script that parses `mpv(1)`'s [watch
+later](https://mpv.io/manual/stable/#watch-later) entries and displays them in a
+human-readable and pretty manner:
+
+```
+albatross ~$ later
+Sep 19 19:50 https://www.youtube.com/watch?v=VKGtMK4CGV4 # The 2 Hour Hunt for Light Arrows - OoT Randomizer
+Sep 19 22:30 /home/wolf/Mall Grab - Understand feat. Brendan Yates.webm
+```
+
+From here it is easy to open up the video you want to continue watching: simply
+paste the path or URL printed by `later(1)` into `mpv(1)`.
+
+You might notice that the YouTube video is commented with its title. This is not
+information that `mpv(1)` saves, but `later(1)` can help here too. Using the
+`-u` or `--update-titles` flag, it will extract video titles using
+[`yt-dlp(1)`](https://github.com/yt-dlp/yt-dlp) and save them in its cache for
+subsequent retrieval. This should work for any site that `yt-dlp(1)` itself
+supports.
+
+If you have a Python available, setting up and using `later(1)` is trivial:
+simply copy the script into a directory in your `$PATH` (and the manual into
+`$MANPATH`) or use the `Makefile`:
+
+```
+$ PREFIX=~/.local make install
+```