JaTubePlayer Jackaopen
winget install --id=Jackaopen.JaTubePlayer -e JaTubePlayer combines local media playback with online video, playlist, live-stream, media-saving, account, and Windows integration features in a Windows 11-inspired interface.
winget install --id=Jackaopen.JaTubePlayer -e JaTubePlayer combines local media playback with online video, playlist, live-stream, media-saving, account, and Windows integration features in a Windows 11-inspired interface.
JaTubePlayer seamlessly bridges online streaming and local playback with Python, yt-dlp, and mpv.
Stream videos, access playlists, archive content —all through a stunning Windows 11-inspired interface featuring glass/acrylic blur effects and intuitive customtkinter design.
> [!Important] > The essentials work without signing in. Local playback, online search, playback lists, starred media, and media saving are immediately available. > > Personal playlists, subscriptions, liked videos, and optional signed-in requests are enabled from Settings → Account & Playlist → Login Google. No manually entered API key, client-secret file, or raw cookie file is required. > > Your login sessions are encrypted locally with AES-256-GCM, and the encryption key is protected for the current Windows user with DPAPI.
Playback & Control
Media-List Management
Add, remove, reorder, and clear items while preserving the original source
Browse long lists with 50-item pages and page controls
Load local files, folders, search results, recommendations, account sources, and remote playlists into the shared media-list flow
Queue media from the Chrome extension without replacing the active item
System Integration & Diagnostics
Logging System
time | severity | component | message, and mirror them to the live GUI viewer%APPDATA%\JaTubePlayer\JaTubePlayer_log.txt, flushing queued entries every second, immediately for warnings and errors, and once more during shutdown> [!Tip] > ### Keeping yt-dlp Current > - Update yt-dlp before reporting online playback, extraction, playlist, or download failures because supported sites change frequently. > - The built-in updater supports both Stable and Nightly channels. If the latest stable build still fails, install the latest nightly build and try the same operation again. > - Reproduce the issue after updating and attach the new session log when reporting it.
📚 Complete GUI Guide | 🆕 Version 3 Update Details | 🧩 Extension Setup
| Component | Minimum Specs |
|---|---|
| Processor | AMD Ryzen 3 1200 / Intel Core i3-6100 |
| Memory | 8 GB RAM |
| Graphics | NVIDIA GTX 750 or GT1030 / AMD Radeon RX 460 / Intel UHD 610 or Vega 8 |
| Storage | At least 4 GB available |
| OS | Windows 10 / 11 (64-bit) |
| Category | Libraries / Components |
|---|---|
| Runtime | Python 3.13+ |
| GUI | customtkinter, tkinter, CTkMessagebox, sv_ttk , CTkColorPicker |
| Media | Pillow, ffmpeg-python, python-mpv, yt-dlp, Deno, Streamlink |
| Network & services | requests, aiohttp, Flask, flask-cors, google-api-python-client |
| Windows integration | pywin32, win11toast, winsdk, pystray, pynput, pypresence |
| Security & updates | pycryptodome, Windows DPAPI, WebView2, rpgp-py |
| Bundled | ffmpeg.exe, ffprobe.exe, libmpv-2.dll, Deno, yt-dlp, Streamlink, WebView2Host |
> Not all dependencies are listed.
JaTubePlayer 3.0 includes general safeguards against common risks. They support safer operation but still users are required to have basic security awareness.
.sig and SHA-256 hashes, validates its registered installation location, limits elevated replacement paths, and supports backup and rollback.Program Files, where standard Windows permissions better protect application files.A newly downloaded JaTubePlayer build may show “Windows protected your PC” when Microsoft SmartScreen has not established enough reputation for that file. This warning is caused by the installer is currently unsigned; it does not mean that malware was detected.
Official releases starting with v3.1 include a GitHub artifact attestation. Optionally, you can verify that an installer was attested by this repository’s GitHub Actions workflow. Install the GitHub CLI and run:
gh attestation verify "/path/to/installer" --repo jackaopen/JaTubePlayer
replace /path/to/installer with the downloaded installer path.
If you have problems, ideas, suggestions, or improvements, feel free to Open an issue first to discuss proposed changes. I appreciate all feedback and suggestions! 🚀
> [!Tip]
> Before opening an issue, update yt-dlp (try the latest Nightly build when the stable build still fails), reproduce the problem, and collect the log from the same session.
>
> you can check out part of codebase explantion in docs_3.0folder
Every bug report must include:
%APPDATA%\JaTubePlayer\JaTubePlayer_log.txt from the affected sessionRemove account identifiers, cookies, tokens, local usernames, and other private data before attaching a log.
Issues missing both a useful description and the relevant log may be closed until the required information is provided.
> [!Note] > Since this project is maintained solely by me, some parts of the codebase include messy legacy logic from earlier stages of development. A full refactor is not currently planned, as it would be a large task; however, some targeted refactors and logic refinements have already been made, with additional improvements planned over time. Due to other ongoing work and commitments, pull requests will take longer to review, but issues and feedback are always welcome!
>This project is provided for educational and research purposes. Users are responsible for complying with applicable laws and the terms of service of any platforms they interact with.