Repository navigation
Configuration
TrueStream offers extensive configuration through its Settings screen. This guide covers every section so you can tailor the app to your preferences.
The Download section controls basic download behavior.
- Download path — Set a custom output directory using the system file picker. The current path is displayed below the setting.
- Wi-Fi only downloads — When enabled, downloads only run over Wi-Fi connections to avoid mobile data usage.
- Turbo download mode — Speeds up downloads by enabling multi-threaded fragment fetching.
- Completion alerts — Shows a notification when a download finishes.
- Thumbnail view — Toggle between grid and list view in the Library tab.
The format picker appears when you paste a URL on the Home screen. It shows available video and audio streams with codec badges, resolution labels, and container options.
- Video quality ceiling — Set a maximum resolution from Highest down to Lowest (144p).
- Audio format — Choose between OPUS (smaller, modern) and M4A (AAC, wider compatibility), plus select the audio bitrate.
- Codec preference cascade — The engine prefers AV1 first, falls back to VP9, then H264. You can adjust this priority order.
- Video codec preference — Explicitly select your preferred video codec (AV1, VP9, or H264).
- Audio codec preference — Choose between OPUS, AAC, or let the engine decide.
The Post-Processing section controls what happens after a download completes.
- Download archive — Track downloaded videos so yt-dlp skips duplicates on future attempts. You can also organize archives by download folder.
- Split chapters — If the media has chapter markers, split it into separate files after download.
- Embed metadata — Write video metadata (title, uploader, description) into the file's tags.
- Embed thumbnails — Attach the video thumbnail to the file.
- Embed subtitles — Mux subtitle tracks into the container (for example, MKV).
- Keep subtitle files — Save subtitle files separately alongside the media file.
SponsorBlock uses community-contributed data to skip unwanted sections in YouTube videos. You can enable or disable each category individually:
- Sponsor
- Intro / Interstitial
- Endcards / Credits
- Unpaid promotion
- Interaction reminder (like and subscribe)
- Preview / Recap
- Music (non-music content)
The settings screen shows how many categories you have selected. All categories are disabled by default.
The Subtitle Settings screen manages how subtitles are downloaded.
- Download subtitles — Master toggle for all subtitle fetching.
- Language selection — Choose from 20 languages (English, Spanish, French, and more) with filter chip toggles.
- Auto-generated subtitles — Include YouTube's auto-captions when available.
- Embed subtitles — Mux subtitles into the output container.
- Subtitle format — Choose between VTT, SRT, or ASS formats.
- Keep subtitle files — Save subtitles as separate files.
- Remember selection — Your language choices persist across sessions.
The Download Schedule and related settings control network behavior.
- Proxy configuration — Set an HTTP or SOCKS proxy for all engine traffic.
- Concurrent downloads — Limit how many downloads run at the same time.
- Download schedule — Restrict downloads to specific time windows (for example, only at night).
-
aria2c acceleration — When enabled, aria2c splits downloads into
multiple concurrent chunks. You can configure:
- Number of concurrent connections (1 to 16)
- Maximum speed limit (for example,
10Mor empty for unlimited)
- Cookie-based auth — Use the built-in WebView to log into sites like YouTube, then export cookies for the engine to use.
- Per-domain cookie records — Store and manage cookie files per domain.
- User-Agent capture — The engine captures and reuses your browser's User-Agent string for more accurate requests.
The Command Templates screen lets you create reusable yt-dlp argument templates.
- Command templates — Write yt-dlp flags as a template that gets injected into the download command. Each template has a name, description, and the flag string.
- URL regex matching — Attach a regular expression to a template so it automatically applies to matching URLs.
- Export / Import — Export your templates as JSON for backup, or import templates from a JSON file.
The Presets screen offers predefined and custom download profiles. Each preset bundles a format string, container, quality ceiling, and codec preferences into a single selection.
Seven built-in presets are available:
- YouTube 1080p
- YouTube 4K
- Podcast Audio
- Lossless FLAC
- Opus Compact
- Twitter/X Video
- Default (uses global settings)
You can create custom presets, edit existing ones, and activate a preset so it's automatically applied in the format picker.
The Binary Downloads section on the Settings screen shows the status of the engine's runtime components:
- yt-dlp — Version and re-download button
- FFmpeg — Installation status and version
- aria2c — Installation status and version
- Deno — JavaScript runtime status and version (used for YouTube decryption on desktop)
You can re-download individual components or trigger a full re-bootstrap. Update channels (stable, nightly, master) control which yt-dlp version the engine fetches. The About screen displays the app's current version.
- Theme mode — Choose between Light, Dark, or System (follows your device's setting).
- Dynamic color — On Android 12+, the app can pick up your system's wallpaper-based accent colors.