ytascii-player
Play any YouTube video as synced, true-color ASCII art in your terminal.
pip install ytascii-player
ytascii "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
That's it — no cloning a repo, no copying .py files, no python script.py syntax,
and no separate ffmpeg/yt-dlp install. pip install is genuinely all that's needed.
Requirements
- Python 3.8+ — that's it. Everything else is a normal pip dependency:
yt-dlp(used as a Python library, not a CLI tool),opencv-python,numpy, andimageio-ffmpeg(ships a real ffmpeg binary inside the pip package itself, so there's nothing to separately download or add to PATH).
Usage
ytascii "https://www.youtube.com/watch?v=VIDEO_ID"
ytascii "URL" --width 140
ytascii "URL" --mode grayscale
| Flag | Default | Description |
|---|---|---|
--width |
120 |
ASCII art width in characters. Higher = more detail, more CPU. |
--mode |
color |
color = true 24-bit RGB per character. grayscale = classic single-color, faster. |
Press Ctrl+C anytime to stop playback.
Tuning tips
- Maximize your terminal and shrink the font (try 8pt) before running.
- Windows Terminal renders far more smoothly than the legacy
conhostcmd window. - If playback is choppy, lower
--widthor use--mode grayscale.
Troubleshooting
ytascii : command not recognized, right after installing
Pip installs the command into a Scripts folder that isn't always on your
system's PATH by default — this depends on how Python itself was installed on
your machine. Two options:
- Quick workaround, no setup changes: run
python -m ytascii.cli "URL"instead — this works immediately because it doesn't rely on PATH at all. - Permanent fix: when you ran the install, pip prints a warning like
The script ytascii.exe is installed in 'C:\...\Scripts' which is not on PATH. Copy that exact folder path, then: Win key → search "Environment Variables" → Edit environment variables for your account → selectPath→ Edit → New → paste the folder → OK. Open a new terminal andytasciiwill work directly.
'pip' is not recognized
Same PATH issue, one level up. Use python -m pip install ytascii-player instead,
which works regardless of PATH.
Legal note
Only use this on videos you have the right to download — your own uploads, Creative Commons content, or otherwise permitted use.
For developers: installing from source
git clone <this-repo>
cd ytascii-player
pip install -e .
-e installs in "editable" mode — code changes apply instantly without reinstalling.
Publishing (maintainer notes)
pip install build twine
python -m build
twine upload dist/*
Username is literally __token__; password is your PyPI API token from
Account Settings → API tokens. Remember to bump the version number in
pyproject.toml and src/ytascii/__init__.py before every new upload —
PyPI never allows re-uploading the same version number.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ytascii_player-0.2.0.tar.gz.
File metadata
- Download URL: ytascii_player-0.2.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3cf823e12b9e746eff467738d1f7c92c431a3e6631a41b1353b2da72ae45386
|
|
| MD5 |
35639889a250864acef04ad0b76871ee
|
|
| BLAKE2b-256 |
811877535b10d3c7d4df4b77ec104af79a5e9f1603ef705a3e48ba90189c6517
|
File details
Details for the file ytascii_player-0.2.0-py3-none-any.whl.
File metadata
- Download URL: ytascii_player-0.2.0-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49edc37062e79edc09a2f79ba2ae87c5b3b75d99855836921422e179e6c21976
|
|
| MD5 |
05b3471d3c63f44deeb14a818854d9cb
|
|
| BLAKE2b-256 |
0297378d6d9c8b0e34088856263f22551d348defda72834f2c7c6ccb1e088083
|