个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证GenX Streamer: live TV, a program guide and a public-domain library for Windows and Android
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Good TV never gets old.
Free live TV, a program guide and a public-domain film library for Windows, Android TV, Google TV and Amazon Fire TV, plus Android phones and handhelds. Pass it along to a friend with no app store.
Website • Installation and setup • User guide • Pass It Along • Install on TV • Updates • Verify a download • Architecture • Contributing
If GenX Streamer earns a place on your screen, please star the repo. It helps keep it going.
0.1.25 / build 1025 has been withdrawn after reports of unusable phone and handheld layouts and incorrect Football/NFL search results. Its public release and downloads are unavailable while fixes are developed and verified.
The current public release is 0.1.27 / build 1027. It provides the signed Android APK and Windows x64 downloads. The earlier 0.1.3 / build 1003 remains available in release history.
| Development candidate | Value |
|---|---|
| Candidate version | 0.1.27 |
| Android build | 1027 |
The signed 0.1.26 / build 1026 audit covered the physical Samsung S25 and Google TV Streamer, including phone touch and fullscreen controls, remote navigation, saved scans, Free and Paid TV, Guide, and casting. Build 1027 received targeted checks on both devices. Device audit · Search and Guide verification
The signed universal APK’s version, build number, SHA-256 and test results are in the candidate record.
The historical features and checks below belong to the withdrawn 0.1.25 release. Those checks did not establish usable phone and handheld layouts across the reported browsing states.
0.1.25 / build 1025 adds a live buffer meter with saved per-stream adjustments, History for Free and Paid TV, and focused Sports/Guide browsing.
| Current evidence | Scope |
|---|---|
| Version | 0.1.25 |
| Development checks | All 17 development checks passed: 4,006 unit tests across 356 files, 600 UI checks, 1,702 native tests with 7 existing ignored, 117 casting checks and 45 Python tooling tests; type, lint, format and the remaining tooling checks passed |
| Android | Signed universal ARM32/ARM64, com.tmg.tv, minimum API 24, target API 36; 93,111,678 bytes. SHA-256: 91e2fb538e3cad35e1d2ccbdca03658c7c3ca8cc2d622da7ea5b2b8b5e50f0e5 |
| Windows | 0.1.25 x64 Release; four fresh native fixture decodes and a joined ordinary exit passed |
| Local checks | Current local Google Streamer and Thor checks cover one public Free source each, viewing modes, remote controls, buffering controls and normal Exit; Thor also covers the cached Guide and focused two-card layout. Both apps are closed. Platform image-acquisition warnings remain documented; new Firestick/Flip 2 and current Paid-provider checks are pending. Sport/league, matching PPV and tab/account boundaries passed controlled source tests. Current physical browsing checked cached US/Sports Guide rows on Thor and one Free History channel on Google; broader Paid-provider and all-channel coverage is not claimed. |
New-version Fire TV Stick and Flip 2 follow-up testing is pending. No new local Paid-provider playback is claimed. Historical 0.1.23 development/Windows and internal 0.1.24 PPV checks remain version-specific; see technical evidence and limits. Historical physical Fire TV verification applies to 0.1.3 on AFTKA, not every Amazon model or this new version.
Archived 0.1.3 release · Verify a download
- Want to watch? → Download the latest release, then read the User guide
- Got it from a friend? → Check your copy is genuine
- Want to pass it on? → Pass It Along and Install on TV
- Developer? → Architecture, component guides and Contributing
An unedited recording (watch, 2 min 33 s) of a Galaxy S25 and a Google TV Streamer side by side:
No app store, no GitHub link, no typing on the TV.
| Most TV apps | GenX Streamer | |
|---|---|---|
| Getting it | An app store account | A friend's phone or TV, a QR code, or a link |
| Installing on a TV | Store search, or sideloading by hand | Install on TV: pick the TV, enter its code, approve on the TV |
| Channels | A catalog chosen for you | Free channels found and health-checked on your device; your own playlists and accounts |
| Old TVs and handhelds | Often unsupported | 32-bit Android TVs, phones and handhelds; its own MPEG-2 and MPEG audio decoders where the device has none |
| Your data | In the cloud | On your device; no account, no tracking |
| Testing | Tested for success | Tested for failure: rules (invariants) with codes, real-device runs, recorded evidence |
On a TV
On a phone
| Settings | Pass It Along | Install on TV | About |
|---|---|---|---|
Free TV: finds public channels, checks they actually play, and keeps the ones that do. Favourites, filters, search and voice search.
Paid TV: your own provider accounts (Xtream), kept in your device's protected storage and played through a local relay.
GenXtra: a public-domain film and TV library with downloads.
Program guide (XMLTV), instant replay, captions, a remote and D-pad friendly interface on TVs, and casting to Chromecast and DLNA screens.
Pass It Along:
Every device gets the build that runs on it, or a plain "this won't run here". (How it works)
Voluntary updates: Check for Updates in About, verified against the published SHA-256 before anything installs. (Rules)
Download from Releases:
Amazon Fire TV and Fire TV Stick are supported on Android-based Fire OS devices meeting the Android/ARM requirements below. Verified with 0.1.3 on the Fire TV Stick 4K Max, first generation (AFTKA/kara), Fire OS 7 / Android 9: launch, embedded video, fullscreen, returning to embedded, sound and channel switching all passed owner testing. Other Amazon models have not been individually verified. Fire TV uses the same Android APK.
| File | For |
|---|---|
GenX-Streamer-<version>-Android.apk | Android TV, Google TV, Amazon Fire TV with Android-based Fire OS, plus Android phones, tablets and handhelds (ARM, 32- and 64-bit), Android 7.0 or newer |
GenX-Streamer-<version>-Windows-x64.exe | Windows 10 and 11 (64-bit), with the Microsoft Edge WebView2 Runtime |
GenX-Streamer-<version>-Windows-x64-portable.zip | Windows, portable: extract to a folder of its own and run GenX Streamer.exe |
SHA256SUMS | Checksums to verify any copy |
The Android app is signed with the GenX Streamer release key. The Windows app is unsigned by decision, so SmartScreen may show an unknown-publisher prompt on first run.
GenX Streamer includes two decoders of its own, for formats that some devices offer apps no decoder for (for example Samsung Galaxy phones and MPEG-2 video):
scripts/trier-video/extract_tables.py, not retyped from other
software. Design and measurements: docs/trier-mpeg-video.md.Neither decoder contains code from FFmpeg, libmpeg2 or any other decoder, and the Windows and Android apps do not include or link FFmpeg.
During development, FFmpeg (the ffmpeg-static development dependency) and
libmpeg2 serve only as outside measuring tools:
Trier's output is not bit-identical to FFmpeg's: in the recorded comparison it matched exactly in 1 of 12 streams. That is expected of an independent implementation, since MPEG-2 defines an accuracy bound for the inverse DCT, not one exact result. Tests that need FFmpeg skip themselves when it is not installed.
Other formats (H.264, HEVC, AAC and the rest) are decoded by the platform: Android's Media3/MediaCodec and the system WebView.
aarch64-linux-android and armv7-linux-androideabi
targets for Android buildsjbr works). The build scripts use ANDROID_HOME if set.npm ci
pwsh -NoProfile -File scripts/build-windows.ps1 -Profile Release
pwsh -NoProfile -File src-tauri/scripts/build-android.ps1 -Architecture aarch64 -Optimization 2
scripts/build-windows.ps1 writes
src-tauri/target/release/GenX Streamer.exe.build-android.ps1 makes debug-signed APKs.
Use -Optimization 2 for anything installed on a device.src-tauri/scripts/build-android-release.ps1
makes the one universal APK (arm64-v8a and armeabi-v7a), signed with the
owner's key. It refuses a key kept inside the repository and checks the
signer against the fingerprint compiled into the app.
See docs/release-signing.md.npm run verify runs every development check in order:
It writes a receipt under artifacts/development-verification/. Run it from
PowerShell 7. The checks one by one:
npx vitest run # unit and browser-component tests
npx playwright test tests/ui # interface tests
cd src-tauri; cargo test --lib # native tests
node --test tests/tooling/*.test.mjs # tooling tests
python -B -X utf8 -m unittest discover -s tests/tooling
Packaged acceptance runs (Windows, isolated data folders, owned fixtures):
node scripts/native-smoke.mjs "src-tauri/target/release/GenX Streamer.exe"
node tests/native/playback-fault-matrix.mjs --exe=<absolute exe> --sha256=<sha256>
node tests/native/channel-switch-smoke.mjs <exe> 500 <sha256>
Device checks need an approved device in the environment:
GENX_APPROVED_FLIP_SERIAL, GENX_APPROVED_TV_SERIAL, and ADB for the adb
path. Without them the device scripts refuse to run.
Use Playback diagnostics to capture playback, buffering, errors and expected versus measured player bounds across Free TV, Paid TV, GenXtra and Web Stream. The release quality gate uses short targeted Scan, Menu, Guide and remote-navigation checks on the exact candidate, with scoped local physical results. Fire TV Stick/Flip 2 follow-up testing is pending. Existing sustained captures remain supporting evidence; no additional five-minute interval is required by the current owner request.
Every public release needs a higher version and Android version code. Check for updates compares versions; Android normally refuses lower version codes. Unpublished test rebuilds can share a version when installed manually with the same signing key. The version is written in several files; one command changes them all and checks they agree:
node scripts/bump-version.mjs patch # 0.1.0 -> 0.1.1: fixes
node scripts/bump-version.mjs minor # 0.1.0 -> 0.2.0: new features
node scripts/bump-version.mjs check # do all files agree? (run by npm run verify)
Then build, package and publish:
npm run verify.build-windows.ps1 -Profile Release, and the signed
Android APK with build-android-release.ps1.v<version> with the APK, the exe, the
ZIP, SHA256SUMS, release-manifest.json and the Android notices.node scripts/release-notices.mjs --inventory <inventory.json> --crates <crate list> --product "GenX Streamer for Windows" --output <new file>
node scripts/package-candidate.mjs --windows-exe <exe> --output-dir <new folder> --windows-profile release --mode windows-only --notices <notices> --source-revision <commit>
pwsh -NoProfile -File scripts/windows-sandbox-launch-check.ps1 -Zip <zip> -Out <new folder>
The package holds the release files named with version and platform (above),
a release-manifest.json and SHA256SUMS. The version comes from
src-tauri/tauri.conf.json unless --version is given. The in-app updater
picks its file by these names from the latest GitHub release
(docs/updates.md).
Before publishing or copying this repository anywhere, run:
node scripts/clean-repo.mjs scan
It blocks credentials, keys, databases, user-profile paths and private network
addresses. Your own device serials, addresses and paths belong in an untracked
.private-patterns.json (already in .gitignore); reviewed test placeholders
are listed by fingerprint in scripts/clean-repo-allow.json.
Design notes and rule registers are in docs/. The rules carry codes
such as SH-019 or TV-006 in comments and tests: docs/codes.md.
Requirements: Engineering Spec.MD. Open work:
TASKS.md.
GenX Streamer is free, with no ads and no subscriptions. If it has earned a place on your screen:
The same links are in the app, in About GenX Streamer.
Developers are welcome. CONTRIBUTING.md explains how to set up, make and check a change; docs/components/ has a guide for each part of the app (playback, scans, the program guide, the Trier decoders, the interface and more) so you can start with the one you know best.
GenX Streamer's source code is licensed under the Apache License 2.0. Copyright 2026 Doug Trier. See NOTICE for the third-party components and their licenses.
The GenX Streamer name, logo and brand artwork are not covered by the Apache License: a fork you publish should use its own name and icons. See TRADEMARK.md.