個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Ambient TV – a versatile media player for Android TV and phones. Brings Plex, Jellyfin, Emby, live TV, DLNA, and NAS together in one app, powered by MPV, VLC, and Media3.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Android TV & phone client for local media — Plex, Jellyfin, Emby, TVHeadend, SmartTube, Spotify, DLNA, files/NAS and photos in one app, played through MPV, VLC or Media3.
Screenshots · Features · Why? · Support · Disclaimer · Build · Docs · Deutsch
All screenshots on the website
Package com.ambient.tv · Version (repo) 1.0 (352) · Min Android API 29 · License CC0 1.0
It started with Plex. Every client out there was missing something — Wake-on-LAN for the server, say, or real picture processing with the scalers, upscalers and filters that no other Android TV player offers. So this one has them.
From there the goal grew into an all-in-one app: every video, whatever its source, runs through the renderer of my choice. WireGuard is built in, so the libraries are just as close when I'm away from home. And the good ideas that are usually scattered across half a dozen players finally live together in one place.
Ambient TV is built in spare time, out of love for a good couch evening. If it makes your TV a little nicer, a coffee or a sponsorship helps keep it going — thank you! ☕
[!WARNING] Ambient TV is a hobby project, provided as is. Use at your own risk. No responsibility is taken for melting TVs, exploding TV boxes, overheated living rooms or a sudden urge to buy new hardware.
Picture processing is hungry: how well filters, upscalers/shaders, motion smoothing (SVP), deinterlacing, HDR conversion and friends run depends heavily on your hardware. What is silky smooth on one box can turn another into a slideshow (and a space heater). If playback stutters, lower the settings or switch the performance mode to Low.
📖 Every setting and player option: feature compendium · Deutsch · Docs index
| Requirement | Details |
|---|---|
| Devices | Android TV / Google TV, phones and tablets with Android API 29+ |
| ABIs | arm64-v8a · armeabi-v7a · x86 · x86_64 |
| Device-dependent | Vulkan output/decoding, SDR → HDR (Android 14+, HDR10 display), passthrough formats, SVP |
| Network | LAN to media servers / NAS; internet for Plex Link, SmartTube, Spotify, trailers |
| Build | JDK 17, Android SDK/NDK (ANDROID_NDK_HOME or ANDROID_NDK_ROOT); optional keystore |
# Debug APK (builds native engines if needed)
./build.sh debug
# Signed release (when keystore.properties is present)
./build.sh release
# Single ABI (ARM TV / devices)
./build.sh arm64
./build.sh armv7
# Emulator ABIs
./build.sh x86
./build.sh x86_64
# Check / update pinned engines
./build.sh libs-check
./build.sh libs-update
Artifacts land under dist/ (e.g. ambient-tv-arm64-<version>.apk, ambient-tv-x86_64-<version>.apk). Pre-release suffixes such as beta, alpha or rc keep the suffix and insert the build number before it (ambient-tv-arm64-1.0.270-beta.apk).
Gradle only (no native preflight): ./gradlew :app:assembleDebug — prefer ./build.sh for product-like builds. SKIP_MPV_NATIVE=1 skips the native MPV build (quick builds/CI), e.g. SKIP_MPV_NATIVE=1 ./gradlew :app:assembleDebug :app:testDebugUnitTest. No Spotify client ID is built in; see Spotify setup.
Details & env vars: docs/DOCUMENTATION.md §14 · EXTERNAL_LIBRARIES.md
The release keystore and keystore.properties are not in the repository (both are in .gitignore). To sign, either keep a local keystore.properties (storeFile, storePassword, keyAlias, keyPassword) next to build.sh, or set:
export AMBIENT_TV_KEYSTORE_FILE=/path/to/release.jks
export AMBIENT_TV_KEYSTORE_PASSWORD=…
export AMBIENT_TV_KEY_ALIAS=…
export AMBIENT_TV_KEY_PASSWORD=…
Without either, debug builds work and release APKs stay unsigned. ./build.sh gen-keystore creates a new key.
| Area | Contents |
|---|---|
| Start & controls | Home rows, media selection, language, library |
| Appearance | Theme, accent, scale, performance, background video, screensaver |
| Systems & accounts | Plex / Jellyfin / Emby / TVH / IPTV / SmartTube / Spotify / Trailers / DLNA / Files |
| Devices & network | Phone & devices, UPnP receiver, WireGuard / VPN, servers & Wake-on-LAN |
| Playback | Player backend, subtitles, “Up next”, seek jump |
| Picture & sound | Image/audio profiles, visualizer, photos |
| App & data | Backup, diagnostics, advanced, About |
ambienttv://spotify-auth (sign-in on the device)https://seinist.github.io/ambient-tv-spotify-callback/spotify-callback.html (QR sign-in on a TV; the page only forwards the code to the TV in your network)A v* tag push builds the signed release and debug APKs and publishes a GitHub Release — setup, secrets and versioning: build docs §14.5.
Ambient TV is built by one enthusiast for everyone who wants more from their media setup. Give it a spin, push the filters to the limit (gently — see the disclaimer) and tell me what you think: bugs, crashes, ideas and "it would be great if…" are all welcome in the issues. Every report helps make Ambient TV the best media client on Android TV.
app/src/main/res/raw/nnedi3_deinterlace_weights.bin, GPLv2) are kept in-tree; other native libraries (MPV/FFmpeg, …) are built or downloaded by ./build.sh on first use.| Document | Language |
|---|---|
| docs/DOCUMENTATION.md | English (default, full) |
| docs/DOCUMENTATION.de.md | Deutsch (vollständig) |
| README.de.md | Deutsch – Kurzüberblick |
| docs/README.md | Docs index (EN) |
| EXTERNAL_LIBRARIES.md | EN – engine pins |
This project is dedicated to the public domain under Creative Commons Zero v1.0 Universal (CC0-1.0) — to the extent possible under law; no warranty.
Third-party engines and trademarks (Plex, Jellyfin, Emby, YouTube/SmartTube, Spotify, …) remain under their own licenses and branding — see About in the app and third_party_licenses/.
Built APKs: the app bundles GPL-licensed components (mpv, several GLSL shaders, NNEDI weights, the TVHeadend logo) and LGPL components (FFmpeg, VLC, SVP adapters). APKs built from this repository are therefore distributed under the terms of the GNU GPL v3.0; the corresponding source is this repository plus the pinned upstream sources in gradle/external-versions.properties.