Sunday, May 25, 2014

How to watch a video in ASCII art

Prerequisites


  • VLC or mplayer
  • libcaca (libcaca0 on Ubuntu/Debian; should already be installed)
  • A video to watch (I downloaded one from YouTube using youtube-dl)
Linux users tend to know what they're doing, so I'll assume you know how to install these programs. Plus, installation is highly distro-specific, so I'm not going to elaborate further.

mplayer


Open your favorite terminal emulator or switch to a VT and run:

mplayer -vo caca video

where video is the video file you wish to play.

This option is a lot more friendly to the Linux console, but I found that the picture itself in VLC was a lot better.


mplayer with libcaca

VLC


In my opinion, this will get you better results. The colors seem to be a bit more true to the video and not quite as random; also, the window can be resized with the video resizing along with it. Running this in the Linux console does not give good results: VLC's messages show up in the black bars above and below the video (if there are black bars) and to quit one does not simply press the "q" key. A keyboard interrupt also does not work.


Command line


Open your favorite terminal emulator (under X11) and run:

vlc --vout=caca video

where video is the video file you wish to play.

GUI


Open VLC, and go to Tools->Preferences. Then, go into the "Video" section, and, next to "Output", select "Color ASCII art video output".

VLC preferences

Click Save. Open your favorite video in VLC and:

VLC with libcaca

Conclusion


Even though libcaca doesn't provide the most accurate ASCII art renderings of pictures and videos, the results are still impressive and it's something cool and geeky you can show off to your friends. 

I'm back!

Hey guys!


I know it's been a while since I've posted anything here. I've decided that I'd start up again, and try to make this a regular blog (at least once a week). Here are some things coming your way in the near future:
  • How to watch a video using libcaca (a friend of mine suggested this)
  • A week-long project to show how powerful the Linux command line is - details on this will be posted later
  • A clone of the popular game 2048 a friend of mine and I are working on

Suggestions wanted

As you can see, there's not much I've come up with as of yet. If any of you have suggestions as to what I should do next, leave me a tip in the comments!