mirror of
https://github.com/narrrl/proton-stream.git
synced 2026-11-03 16:41:26 +01:00
docs: sidecar subtitles are no longer a gap
This commit is contained in:
1 parent
7790ae9cbb
commit
e3e855a02d
2 files changed
+18
-13
No files matched your search
@@ -24,9 +24,9 @@ layer and the player are done and verified against a real share, and the app has
|
|||||||
a library wall, a page per title with seasons and episodes,
|
a library wall, a page per title with seasons and episodes,
|
||||||
resume-where-you-left-off, an overlay with a chapter-marked seek bar, a skip
|
resume-where-you-left-off, an overlay with a chapter-marked seek bar, a skip
|
||||||
button for openings and endings, next/previous episode with an "up next"
|
button for openings and endings, next/previous episode with an "up next"
|
||||||
countdown, optional metadata, themes and share management. What is left is mostly sidecar subtitle files
|
countdown, subtitle files beside the video, optional metadata, themes and share
|
||||||
(`.srt`/`.ass` beside the video are invisible to the crawl today) and running the
|
management. What is left is mostly running the macOS packaging on a real Mac. See
|
||||||
macOS packaging on a real Mac. See `docs/DEVELOPMENT.md`.
|
`docs/DEVELOPMENT.md`.
|
||||||
|
|
||||||
A native Android 12+ client is under `android/`, sharing the Rust catalog and
|
A native Android 12+ client is under `android/`, sharing the Rust catalog and
|
||||||
streaming implementation through UniFFI. It features a modern Material 3 interface,
|
streaming implementation through UniFFI. It features a modern Material 3 interface,
|
||||||
|
|||||||
+15
-10
@@ -15,10 +15,7 @@
|
|||||||
|
|
||||||
## Build order from here
|
## Build order from here
|
||||||
|
|
||||||
1. **Sidecar subtitle files** — see the "not done" note at the end of this
|
1. Packaging is in place (`packaging/README.md`); what is left there is running
|
||||||
section. The work is in `pstr-core`: crawl them, and pair them to a video by
|
|
||||||
name.
|
|
||||||
2. Packaging is in place (`packaging/README.md`); what is left there is running
|
|
||||||
the macOS half on a real host, and a release workflow that drives every
|
the macOS half on a real host, and a release workflow that drives every
|
||||||
platform.
|
platform.
|
||||||
|
|
||||||
@@ -151,12 +148,20 @@ Note the glyph trap: egui's bundled fonts cover the transport icons
|
|||||||
(`⏮ ⏭ ⏸ ▶ 🔊 🔇 ⛶`) and *not* `← 💬 ▣`, which draw as an empty box. Anything new
|
(`⏮ ⏭ ⏸ ▶ 🔊 🔇 ⛶`) and *not* `← 💬 ▣`, which draw as an empty box. Anything new
|
||||||
on a button wants checking on screen before it ships.
|
on a button wants checking on screen before it ships.
|
||||||
|
|
||||||
Not done: **sidecar subtitle files**. A `.srt`/`.ass` sitting beside the video in
|
**Sidecar subtitle files.** A `.srt`, `.ass`, `.ssa` or `.vtt` beside a video
|
||||||
the share is invisible to all of this — the crawl stores video files only, so
|
is paired with it by name at crawl time (`catalog::build_sidecars`): the video's
|
||||||
there is nothing to offer in the menu. The player side is nearly free once the
|
name followed by a dot or nothing (`S01E01.en.forced.ass`), the same inside a
|
||||||
catalog has them (`sub-add pstr://<token>` through the same registry, since mpv
|
`Subs` folder beside the videos, the RARBG layout `Subs/<video>/2_English.srt`,
|
||||||
reads an external subtitle through the same protocol); the work is in
|
and failing those the only video in the folder. The words past the video's
|
||||||
`pstr-core`: crawl them, and pair them to a video by name.
|
name give the language and the picker's title. They are stored in `sidecars`
|
||||||
|
(schema v12), rebuilt by every crawl like `nodes`.
|
||||||
|
|
||||||
|
Each client opens them while mpv opens the video and adds them with `sub-add
|
||||||
|
pstr://<token>` through the same registry once mpv reports the file loaded. One
|
||||||
|
is turned on only when subtitles are on and the file has none of its own
|
||||||
|
playing, and only in the preferred language (`catalog::preferred_sidecar`); the
|
||||||
|
rest wait in the subtitle menu. A downloaded episode played without a session
|
||||||
|
goes without them, and they are not downloaded with it.
|
||||||
|
|
||||||
## Design decisions already taken
|
## Design decisions already taken
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user