diff --git a/docs/index.md b/docs/index.md index 4ef5145..552ac59 100644 --- a/docs/index.md +++ b/docs/index.md @@ -13,6 +13,7 @@ Information about a WROLPi system. * [How WROLPi Stores Files](system/filegroups.md) * [How Configs Work](system/configs.md) * [Tags](system/tags.md) +* [Resume Where You Left Off](system/viewing-progress.md) * [Collections](system/collections/index.md) * [Reorganize Collections](system/collections/reorganization.md) * [Backup](system/backup.md) diff --git a/docs/other/ebooks.md b/docs/other/ebooks.md index 5911884..7fbe652 100644 --- a/docs/other/ebooks.md +++ b/docs/other/ebooks.md @@ -11,6 +11,9 @@ Epub files are desired as ebooks, though some support for Mobi files is provided * Device support for Epubs is nearly ubiquitous. * Because an Epub contains HTML files, it makes it easy to display them in a web browser. +EPUB eBooks and comic books open on the page you were reading; see +[Resume Where You Left Off](../system/viewing-progress.md). + Cover images are detected automatically — including Calibre-style directories with a `cover.jpg` — see [Cover Images](../modules/docs/index.md#cover-images). diff --git a/docs/other/pdfs.md b/docs/other/pdfs.md index 8b6a2ea..6cc6e85 100644 --- a/docs/other/pdfs.md +++ b/docs/other/pdfs.md @@ -3,6 +3,9 @@ PDFs are managed by the [Docs module](../modules/docs/index.md), where they can be browsed, filtered by author and subject, searched, and read directly in the browser with the embedded PDF viewer. +WROLPi does not remember your page in a PDF: the browser's PDF viewer does not report it. See +[Resume Where You Left Off](../system/viewing-progress.md). + ## Searching When indexes for a PDF are generated, they are searched in the following order of precedence: diff --git a/docs/system/configs.md b/docs/system/configs.md index 5c7c0e3..478b4e8 100644 --- a/docs/system/configs.md +++ b/docs/system/configs.md @@ -26,6 +26,7 @@ All configs are stored in the `config` directory of your media directory: `/medi | `download_cache.yaml` | Cached video durations (safe to ignore). | | `map_pins.yaml` | Your [Map](../modules/map/index.md) pins. | | `bookmarks.yaml` | Your [Bookmarks](../modules/bookmarks/index.md), including their directories and order. | +| `recently_viewed.yaml` | Your 1,000 most recently viewed files, and [where you left off](viewing-progress.md) in each. | | `inventory/*.yaml` | One file per [Inventory](../modules/inventory/index.md), plus the food catalog. | | `cookies.txt.enc` | Your [encrypted cookies](../modules/videos/cookies.md). | | `controller.yaml` | [Controller](../controller/index.md) settings: drives, Samba shares, hotspot. | @@ -91,7 +92,7 @@ Imports are designed to be safe, but you should know the rules: A few things live only in the database and are lost if the database is rebuilt: -* Video watch history / view positions. +* Viewing history beyond your 1,000 most recently viewed files (see [Resume Where You Left Off](viewing-progress.md)). * The file index itself (this is simply rebuilt by a file refresh). Everything you deliberately curated — Tags, Channels, Playlists, Downloads, Inventories, pins, settings — is in the diff --git a/docs/system/recently-viewed-continue.png b/docs/system/recently-viewed-continue.png new file mode 100644 index 0000000..76a73c3 Binary files /dev/null and b/docs/system/recently-viewed-continue.png differ diff --git a/docs/system/viewing-progress.md b/docs/system/viewing-progress.md new file mode 100644 index 0000000..71e7ce9 --- /dev/null +++ b/docs/system/viewing-progress.md @@ -0,0 +1,87 @@ +# Resume Where You Left Off + +WROLPi remembers how far you are through your videos, audio, eBooks and comic books. When you open one again, it +picks up where you stopped — even on a different phone, tablet or computer. + +## What is remembered + +| File type | Where you left off | Finished when | +|---|---|---| +| Videos and audio | The playback time | You are 95% of the way through, or it plays to the end | +| EPUB eBooks | The page you were reading | You reach the end of the book | +| Comic books (`.cbz`, `.cbr`, `.cbt`, `.cb7`) | The page you were on | You reach the last page | + +PDFs are shown in your browser's built-in PDF viewer, which does not tell WROLPi what page you are on, so PDFs are only +marked as viewed. Archives, images and text files are also only marked as viewed, and Zim articles are not +tracked. + +Files in directories you [Ignore](../modules/files/index.md#files-tools) are never tracked. + +## Resuming + +Open a file from anywhere — its page, a search result, the [Files](../modules/files/index.md) browser, or a +preview — and it opens where you left off: + +* A video or audio file jumps to where you stopped and keeps playing. If your browser blocks automatic playback + (some phones do), it waits at that spot for you to press play. +* An eBook opens on the page you were reading. +* A comic book opens on the page you were on. + +A file you **finished** starts again from the beginning. + +A file you only **just started** is not resumed: the first 10 seconds of a video, the cover of a comic book, or the +first page of an eBook. Flipping back to the cover of a comic, or to the start of an eBook, does not lose your place. + +> To start a video at a particular time instead, add `?t=` and the number of seconds to its address. For example, +> `/videos/123?t=90` starts at 1:30. + +Opening an eBook from a search result still opens at the match, not where you left off. + +### Using more than one device + +Your place is saved on your WROLPi, not in your browser, so you can stop watching on a phone and continue on a laptop. +Whichever device saved most recently wins. + +Your place is saved every 15 seconds while you watch or read, and again when you pause, close the page or switch to +another tab. + +## Progress bars + +Videos, audio files, eBooks and comic books show a bar along the bottom of their picture showing how far through them +you are. A full bar means you finished it. A file you have not started has no bar. + +## Continue on the Dashboard + +The **Recently Viewed Files** panel at the bottom of the Dashboard has two views: + +* **All** shows the files you viewed most recently. +* **Continue** shows only the files you are part way through, most recent first. + +> To find what you were in the middle of, click **Continue** in the Recently Viewed Files panel on the Dashboard. + +![The Continue view of Recently Viewed Files](recently-viewed-continue.png) + +WROLPi remembers which view you chose on each browser. + +## The recently viewed config + +Your viewing history is saved in the `recently_viewed.yaml` [config](configs.md), so it survives a rebuilt database, +like your Tags and Channels do. It holds the **1,000 most recently viewed files**: each file's path, when you last +viewed it, and how far through it you are. + +```yaml +files: + - path: videos/Channel Name/Video Title.mp4 + viewed: '2026-10-08T21:13:07+00:00' + progress: 0.4 + position: + kind: time + seconds: 338.0 +``` + +* The config is saved when you open a file, when you pause or close it, and after files are moved, renamed or + deleted. While you are watching, your place is saved to the database every 15 seconds, but the config is only + written when you stop, so your drive is not written to constantly. +* When the config is imported, a file you viewed more recently than the config was written keeps its newer place. +* Files that were deleted are skipped. +* Files older than the 1,000 most recent are still marked as viewed in the database, but are not in the config.