docs: note in-app streaming and tile view
This commit is contained in:
@@ -26,6 +26,12 @@ dialog names exactly what will be deleted before anything happens.
|
|||||||
feed sorted by publish date. Thumbnails are mirrored to local disk so the feed still
|
feed sorted by publish date. Thumbnails are mirrored to local disk so the feed still
|
||||||
renders with no network.
|
renders with no network.
|
||||||
|
|
||||||
|
**Undownloaded videos stream in-app.** YouTube's iframe embed refuses a Tauri window —
|
||||||
|
its origin is `tauri://localhost`, not an http(s) origin, which produces "Error 153" — so
|
||||||
|
`yt-dlp` resolves YouTube's HLS master playlist instead. Its variants are H.264 + AAC up
|
||||||
|
to 1080p, which AVFoundation plays natively in WKWebView with adaptive bitrate. One player
|
||||||
|
element serves both local files and streams.
|
||||||
|
|
||||||
**Downloads shell out to `yt-dlp`,** pinned to H.264 video + AAC audio in an MP4
|
**Downloads shell out to `yt-dlp`,** pinned to H.264 video + AAC audio in an MP4
|
||||||
container. That caps quality at 1080p — YouTube only serves H.264 that high, and anything
|
container. That caps quality at 1080p — YouTube only serves H.264 that high, and anything
|
||||||
above it is VP9 or AV1, which the app's own player cannot reliably decode. The tradeoff is
|
above it is VP9 or AV1, which the app's own player cannot reliably decode. The tradeoff is
|
||||||
@@ -58,9 +64,10 @@ npm run tauri build -- --bundles app && cp -R src-tauri/target/release/bundle/ma
|
|||||||
1. **Settings** — follow the seven-step Takeout guide, then **Import subscriptions.csv**.
|
1. **Settings** — follow the seven-step Takeout guide, then **Import subscriptions.csv**.
|
||||||
2. **Refresh** — pulls the latest videos from every channel.
|
2. **Refresh** — pulls the latest videos from every channel.
|
||||||
3. **Download** on any video — progress shows live on the button; click again to cancel.
|
3. **Download** on any video — progress shows live on the button; click again to cancel.
|
||||||
4. Click a **downloaded** video to play it in the app. Click an undownloaded one to open
|
4. Click any video to play it **in the app** — a downloaded one from disk, anything else
|
||||||
it on YouTube.
|
streamed. Nothing hands off to a browser.
|
||||||
5. **Offline** — the app detects a lost connection and collapses the feed to your
|
5. **List or Tiles** — switch layouts in the top bar; the choice is remembered.
|
||||||
|
6. **Offline** — the app detects a lost connection and collapses the feed to your
|
||||||
downloads. The connectivity pill also toggles a forced offline mode for testing.
|
downloads. The connectivity pill also toggles a forced offline mode for testing.
|
||||||
|
|
||||||
Videos land in `~/Movies/FlightTube` (changeable in Settings). Appearance follows the
|
Videos land in `~/Movies/FlightTube` (changeable in Settings). Appearance follows the
|
||||||
@@ -104,7 +111,7 @@ src-tauri/src/
|
|||||||
net.rs reachability probe
|
net.rs reachability probe
|
||||||
commands.rs Tauri command surface — delegates only
|
commands.rs Tauri command surface — delegates only
|
||||||
src/
|
src/
|
||||||
components/ Sidebar, TopBar, VideoRow, DownloadButton, Player, Settings
|
components/ Sidebar, TopBar, VideoRow, VideoTile, DownloadButton, Player, Settings
|
||||||
components/ui.tsx the design system's component vocabulary, in one place
|
components/ui.tsx the design system's component vocabulary, in one place
|
||||||
components/TakeoutGuide the seven-step export walkthrough
|
components/TakeoutGuide the seven-step export walkthrough
|
||||||
hooks/ useFeed, useDownloads, useConnectivity, useAppearance
|
hooks/ useFeed, useDownloads, useConnectivity, useAppearance
|
||||||
|
|||||||
Reference in New Issue
Block a user