cacaplay
Play ASCII art animations
SYNOPSIS
cacaplay [options…] [filename…]
PARAMETERS
-h, --help
Print short help message
-V, --version
Print program version
-l, --list-drivers
List available output drivers
-d DRIVER, --driver=DRIVER
Select display driver (e.g., ncurses, raw)
-f FORMAT, --format=FORMAT
Force input video format (mpeg, avi, mov, etc.)
-x WIDTH, --width=WIDTH
Scale video to WIDTH characters wide
-y HEIGHT, --height=HEIGHT
Scale video to HEIGHT lines high
-r RATIO, --ratio=RATIO
Set physical aspect ratio (e.g., 4/3)
-g GAMMA, --gamma=GAMMA
Set gamma correction value (0.1-10.0)
-s DELAY, --delay=DELAY
Set frame delay in milliseconds
-L, --loop
Loop video playback
-D, --daemon
Daemon mode (ignore keyboard)
-v, --verbose
Increase verbosity level
DESCRIPTION
Cacaplay is a command-line tool from the libcaca (Colour ASCII Art) library that converts and plays video files directly in the terminal emulator. It decodes video frames using libraries like FFmpeg or libavformat and renders them as high-contrast ASCII characters with ANSI escape codes for colors and attributes.
Supporting formats such as MPEG, AVI, MOV, and more, cacaplay provides a nostalgic, low-bandwidth playback experience perfect for text-only environments, remote sessions, or fun demos. The output scales to fit terminal dimensions, with adjustable width, height, gamma correction for contrast, and frame delays. It uses various output drivers (e.g., ncurses, raw, gem) for flexibility across terminals.
While not suited for high-fidelity video, it's CPU-intensive for real-time conversion but offers unique visual effects like dithering patterns. Keyboard controls include pause (space), quit (q), and seeking in some modes. Ideal for enthusiasts of ASCII art or constrained systems.
CAVEATS
CPU-intensive for HD videos; requires color-supporting terminal; limited format support depends on linked libraries; no audio playback.
EXAMPLES
cacaplay video.mpg
cacaplay -x 80 -y 24 -L file.avi
cacaplay -d ncurses -g 1.5 movie.mov
INSTALLATION
Debian/Ubuntu: apt install caca-utils
Fedora: dnf install libcaca-utils
HISTORY
Part of caca-utils from libcaca project, initiated by Sam Hocevar in 2002; cacaplay added circa 2006 for video support; actively maintained with modern distro packages.


