I am using the "-vo caca" option in order to be able to play a video in the terminal. However, mplayer is opening up a window in which the video runs. Is there any way to make it play in the console window (to have it filled)? I am using Linux Mint 16.
No. Mplayer can run using the the linux kernel framebuffer, which if you are on one of the virtual consoles (these are
tty devices, and they are not the same as what's used in a GUI terminal) makes it seem as if it's running "in the console" because, of course, that's the entire screen. But it's not running in the console, it's running in the framebuffer, which takes the screen.
If you are using a GUI desktop, you have an X server running, and it controls the screen, so you cannot use the framebuffer at the same time (although you can switch back and forth to a VT and use the framebuffer there). Mplayer detects this context and adapts itself accordingly.
Yes, simply unset DISPLAY variable:
unset DISPLAY; mplayer -vo caca path_to_videofile
DISPLAY= mplayer -vo caca path_to_videofile
But I found that it works slower.
Update: I found out that rxvt-unicode terminal is fast enough.
Also this link http://helpful.knobs-dials.com/index.php/Aalib,_caca might be helpful.