cacademo
Display animated ASCII art in the terminal
TLDR
View an animation
SYNOPSIS
cacademo [OPTIONS]
PARAMETERS
-W <width>
Sets the desired display width in characters.
-H <height>
Sets the desired display height in characters.
-b <color>
Specifies the background color for the demo (e.g., black, white, red).
-f <color>
Specifies the foreground color for the demo (e.g., black, white, red).
-d <driver>
Selects the display driver to use (e.g., auto, ncurses, X11, raw).
--help
Displays the help message and exits.
--version
Displays version information and exits.
DESCRIPTION
cacademo is a demonstration program that showcases the features and capabilities of the libcaca graphics library. libcaca (Colour AsCii Art) is a free software library that converts images, videos, and text into ASCII art, coloured text, or other low-resolution character-based representations.
cacademo typically presents a variety of visual effects, animations, and rendering modes supported by the library, often including fractal rendering, video playback, text transformations, and image display, all rendered using characters in a terminal. It serves as an excellent example for developers interested in using libcaca and for users to appreciate the library's potential for creating graphical output in text-only environments. Its primary purpose is to illustrate the libcaca library's versatility and performance in rendering complex visuals using only standard terminal characters and colors, providing a unique blend of retro aesthetics and modern algorithmic art.
CAVEATS
The cacademo command requires the libcaca library and its utilities package to be installed, which may not be present by default on all Linux distributions.
Its visual output relies on the capabilities of the terminal emulator, including support for ANSI escape codes and sufficient character resolution.
Performance can vary significantly depending on the terminal, the system's processing power, and the complexity of the specific demo being displayed.
ARTISTIC AND EDUCATIONAL VALUE
Beyond its technical demonstration purpose, cacademo offers significant artistic and entertainment value, transforming complex graphical concepts into unique ASCII art experiences. It serves as an excellent educational tool for understanding character-based graphics and the underlying principles of the libcaca library.
PORTABILITY
As part of the libcaca project, cacademo inherits the library's strong emphasis on portability, allowing it to run on a wide variety of systems and terminal emulators, often with different display drivers (e.g., ncurses, X11, raw).
HISTORY
The cacademo program is an integral part of the libcaca project, a graphic library that outputs text instead of pixels. libcaca was created by Sam Hocevar and first released in 2005, aiming to provide a powerful and portable tool for rendering ASCII and ANSI art. cacademo was developed alongside the library as its primary showcase, demonstrating a wide array of visual effects, animations, and rendering techniques that the library is capable of producing in a text-only terminal environment. Its existence is tied directly to the evolution of libcaca, serving as a live exhibition of its features through different versions and improvements.