Skip to main content

Play any video as colorful ASCII art in your terminal

Project description

hoopoe-player

Play any video as colorful ASCII art directly in your terminal.

Installation

# Most systems
pip install hoopoe-player

# Ubuntu/Debian
pipx install hoopoe-player

You also need ffmpeg for audio:

sudo apt install ffmpeg   # Ubuntu/Debian
sudo pacman -S ffmpeg     # Arch

Usage

# Play a YouTube video
hoopoe https://www.youtube.com/watch?v=xxxxx

# Play a local file
hoopoe -l video.mp4

# Enable audio
hoopoe -s https://www.youtube.com/watch?v=xxxxx

# Change character mode
hoopoe -m blocks https://www.youtube.com/watch?v=xxxxx

# Show status bar (time, volume, controls)
hoopoe --hud https://www.youtube.com/watch?v=xxxxx

# Combine options
hoopoe -l -s -m invert --hud video.mp4

Controls

Key Action
Space Pause / Play
/ Seek −10s / +10s
/ Volume +10 / −10 (only with -s)
Q or Ctrl+C Quit

Character modes

Mode Style
classic . : - = + * # % @ — default, coloured
blocks ░ ▒ ▓ █ — bold blocks, coloured
braille ⠁ ⠃ ⠇ ⠿ ⣿ — dense dots, coloured
minimal · • ● ■ — clean and minimal, coloured
invert colour as background — selection effect
nocolor classic chars, no colour — for legacy terminals

Requirements

  • Python 3.8+
  • ffmpeg (optional, needed for -s audio)
  • A terminal with true color support (for all modes except nocolor)

Roadmap

  • Fix audio/video sync — audio can drift ahead when rendering is slow
  • Fix scaling when paused — terminal resize not applied until next frame
  • Optimize rendering performance — reduce CPU usage per frame
  • Screenshot to file — press a key to save the current frame as a colored text file (ANSI)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hoopoe_player-0.1.0.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hoopoe_player-0.1.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file hoopoe_player-0.1.0.tar.gz.

File metadata

  • Download URL: hoopoe_player-0.1.0.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for hoopoe_player-0.1.0.tar.gz
Algorithm Hash digest
SHA256 85f036e59b2628841e224cc535efad03135144cdb7f87e98e38647e639a405fb
MD5 e4c7b62fbc7edf853075679314aa9f2f
BLAKE2b-256 b9a0123e775e702e9ef1741b058831f5ec0184748521eaaca2a975c4f660b73a

See more details on using hashes here.

File details

Details for the file hoopoe_player-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: hoopoe_player-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for hoopoe_player-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c859028b9ea480807ececa9bf99d6596775dd0ac5eecda9f9f27637f6cd0ecc6
MD5 8cbbf644315eb019c3b9a0c517d88f88
BLAKE2b-256 aaaa3ec051b6c4ffa324ddc07d34208c5c07610ceef4d5caa545ff1adcd5aa52

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page