MoviX is a mini Linux CD distribution containing all the software to boot from a CD and start a console menu from which you can play, thanks to the great MPlayer package (http://www.mplayerhq.hu/), most of the audio/video files out there, and if you are lucky also internet radios and TV :-)
It is basically the same thing as MoviX2, but it does not use X [so it
is much smaller!] and the menu is written in Perl [so it is much easier
to develope and customize!].
Moreover, it supports TV-out for ATI, Matrox, NVidia, Savage and Trident cards.
Supported formats are all formats supported by mplayer, most noticeably DivX and QuickTime but more in general any DVD, VCD, AudioCD, avi, mpeg, wmv, asf, fli and a few others.
BTW, MPlayer reads also mp3 & ogg/vorbis files, so you can also use it to play music!
MPlayer supports playlists so you can also use it to play in the order you want any number of audio/video files.
If you are interested you'll find a copy of the config files for mplayer and the linux kernel in the main dir of this package.
All relevant MoviX configuration files and scripts are in the src/movix
folder from where will be automatically loaded in RAM at boot time, so
if you want to make any change to them it is enough to change those
files and make a new CD.
If you make some nice improvement please let me have a patch!
MoviX is all made from software already available on the net. Here is a list of the main packages I used:
syslinux v2.00 <syslinux.zytor.com> mplayer v0.90 <www.mplayerhq.hu> slackware v8.0 <www.slackware.com> linux kernel v2.4.20 <www.kernel.org> Perl 5.8.0 <www.perl.org> Curses-UI 0.71 <firstname.lastname@example.org> BusyBox 0.60.5 <www.busybox.net> ALSA 0.9.3 <www.alsa-project.org>
All I did is just put these pieces of software together :-)
From the Slackware CD, that uses SysLinux to boot, I extracted the ramdisk that I slightly modified getting rid of a lot of unneeded files and adding all possible audio modules for kernel v2.4.20 and of course the MPlayer.
The menu has been written all in Perl using the nice Curses::UI module made by Maurice Makaay.
There are literally tons of feature that may be added to this menu. I will never have time to add them all and in the future I will not have so much time to spend on this projet, so if you like it and want to help improving it just drop me an email!
I strongly hope the few lines I wrote in the menu will be enough to make everybody able to use it succesfully. Hopefully someone eventually will improve the menu adding a help and the many features that can be introduced.
The only thing you need to use MoviX is a software package to produce the bootable isoimage and one to burn the image on CD. On both Linux and M$ Window$ you can use mkisofs & cdrecord, that you can get from
Working copies of mkisofs.exe and cdrecord.exe are included in the file MoviX_Win32_Script.zip packaged by Christophe Paris and available for download in the usual MoviX download page
Window$ users may be interested in downloading the Win32 MoviX setup
installer packaged by Clovis Sena (email@example.com) that allow
to build very easily MoviX ISO images to be burned later on CD with
cdrecord, Nero or similar software.
There are also different Win32 setup packages recently built by Kangur, you can get them at
Of course it does not matter with which application you write the image on the CD, but you cannot make the iso image in the usual easy way because you want it to become bootable.
Only x86 compatible are supported, and only >= i586.
MoviX-0.8.0rc2 needs at least 64MB.
==> NOTE: in order to keep MoviX working with as few as 64MB a few features may be automatically disabled by the movix script, namely:
I could not manage make the mouse do anything good with Curses in a console :-( Hope to learn it soon.
All IDE controllers are supported.
All SCSI controllers supported by kernel 2.4.20 are also supported.
It is not easy to say on which video cards eMoviX will work. Cards brand that are generally known to work are:
but it is likely that the majority of video cards will work fine. There are good chances that DXR3/Hollywood+ cards now works, please let us have your feedback!
BTW, if you use the "aa" mplayer driver than MoviX should work no matter which card do you have. Ok, it is ASCII visualization but, what the hell, it works! :-)
If your video card works with MoviX please let me know so that I can start writing a database of cards known to work.
*KNOWN DXR3/H+ CARDS PROBLEM*
DXR33 modules (http://dxr3.sf.net/) are not yet able to autodetect the specific chipsets used in the card (apparently there are many different combinations) so it is likely that your card won't work with the standard settings. In this case go in the Edit->DXR3 menu and try different combinations of the parameters until your card is able to visualize anything. If nothing works drop me a note.
MoviX makes use of the ALSA sound drivers. A complete list of all supported cards with detailed info on each of them is available form the ALSA home page at
In case your card has problems with ALSA, you can still try the old OSS modules using the "OSS=y" option at the boot [after a very nice patch by William Daniau].
If you have more than one card on your PC, you can choose the one you want with the "AUDIO=n" boot arg, where n=1,2,... [0 is the default value]. Unfortunately there is no way to know which number will be assigned to each card so you'll have to make experiments :-)
*KNOWN ISA AUDIO CARDS PROBLEM*
If you have an ISA card, it may fail to be automatically detected. In this case try first of all to use the "DETECT=all" boot argument to let the system try all possible audio modules available. If you are brave enough :-) , you can boot with the "AUDIO=n" boot arg (so that audio is not loaded at all) and try to load by hand the right driver with "modprobe".
If nothing works, drop me a note and cross your fingers :-)
All cards supported by kernel 2.4.20 are supported.
MoviX supports hassle-free remotes bundled with Hauppauge TV cards. Starting from this v0.8.0rc2 MoviX also supports serial remotes, but this new feature is not well tested and may not work. With users help it should work fine in next version.
Starting from v0.8.0pre3, all relevant USB devices supported by the 2.4.20 kernel should be used by the system if you specify the "USB=y" option at boot time. In particular, it should be possible to use USB speakers. If you try this new option pls let me know how/if it works!
--> ISO package
Usually a few days after a new version is out I upload a .zip file containing a ready-to-be-burned bootable MoviX ISO image, so if you are particularly lazy you can get that and skip the rest of this section **unless you want to make any change to the standard settings**
--> Win32 Setup
Thanks to Clovis Sena & Kangur, all MoviX distros have now a Win32 installation file, so if you are a WinXX user you may use that file to create a customized ISO image and skip the rest of this section. You can get these packages in the usual MoviX download directory and at
Thanks to Pascal Giard there is now a GNU/Linux Perl GTK+/Gnome/GladeXML interface to help you create customized ISO images for [e]MoviX in secs!
New MoviXMaker packages are available at
--> Custom setup for Win & Lin OS
If you are not familiar with the procedures to create a bootable CD, below you get step-by-step instructions for Linux & M$ Window$.
0. Let me assume your untarred MoviX package is in "/usr/local/movix-0.8.0rc2/";
To "install" the packages, all you have to do is copying the archives in the src/mplayer/codecs directory. Do not unpack the files, just copy them the whole archive(s) you chose to use. Here is the list: - Win32 codecs http://www1.mplayerhq.hu/MPlayer/releases/codecs/win32codecs.tar.bz2 - QuickTime6 DLLs http://www1.mplayerhq.hu/MPlayer/releases/codecs/qt6dlls.tar.bz2 - RealPlayer9 codecs http://www1.mplayerhq.hu/MPlayer/releases/codecs/rp9codecs.tar.bz2 - RealPlayer Win32 codecs http://www1.mplayerhq.hu/MPlayer/releases/codecs/rp9win32codecs.tar.bz2 - XAnim DLLs http://www1.mplayerhq.hu/MPlayer/releases/codecs/xanimdlls.tar.bz2 3. If you want to be able to play your DVDs, you probably need to include the libdvdcss library. DISCLAIMER: the libdvdcss library makes use of the DeCSS algorithm, that has been declared illegal in some country (e.g. USA and Germany), so before adding it I suggest you to make sure it is ok to use it in your country. I am in no way responsible of what you put in your MoviX version. Because of the extremely unclear status of the legal matters about DeCSS I can't even provide a link for those who legitimally can make use of it, but nevertheless all you should do is going in your favorite search engine, look for the package named libdvdcss-1.2.6-1.i386.rpm and copy that package in the src/movix dir. 4. If you speak french or italian, you may replace all txt files of the src/isolinux directory with the corresponding files of the boot-messages/fr or boot-messages/it directories. 5. If you know what you are doing, feel free to modify the configuration files in src/movix :-)
6. Create the .iso file running
depending on the degree of Micro$oft-ness of your OS :-) The scripts output the iso image in /tmp/movix.iso or c:\temp\movix.iso respectively. Edit the scripts if you want to change this setting. 7. Write the iso image with any package you like. E.g. with cdrecord you'd write something like: cdrecord dev=0,0 -v -eject /tmp/movix.iso
If everything went fine, the CD you produced should be a bootable CD and it will automatically boot and start the MoviX menu.
==> NOTE: if you are a window$ user, you probably want to use Christofe Paris scripts! Read above about how to get them.
Boot your PC from a MoviX CD.
You have several option for the boot:
MoviX This is the default label and should be able to select automatically the best mplayer options for you video card. It makes use of the vesa FB linux driver at 800x600. vesaFB1024 Same as MoviX but with a 1024x768 resolution. Choose this if you think you are going to watch your videos in ASCII! :-) vesaFB640 Same as MoviX but with a 640x480 resolution. Choose this if the previous two labels fail (most likely because you don't have much RAM on your video card). FB This uses the Linux FrameBuffer driver specific for your card (if any). It may be faster than the previous one but I have no card to check it with. vesa This driver should work with most cards around but most likely the MoviX menu will mess up soon and you'll have to reboot often. Use it as a last resource. TV Using this option, the code needed to activate your card TV-out is automatically used by the setHardware.pl script. Supported cards are Ati, Matrox, NVidia, S3 Savage and Trident. Probably also Voodoo and other cards work but I do not know, so let me have some feedback!
To boot with a label different from the default one, just write the label at the boot prompt and press ENTER.
There are also two extra labels that can be useful too when you forget a MoviX CD in your drive:
hd - forget the CD and boot from the HD floppy - forget the CD and boot from the Floppy
Thanks a lot to Christophe Paris for this nice suggestion, I use it many times a day!
There are also a few boot parameters you can use:
BootArgs Values Effect
MOUNT n Do not let the movix script to mount your HD partitions.
DMA n Do not try to activate DMA on CD drives. Use this if during the boot process your CD seems to cause a mess of error messages. ACCEL sw,no Force MoviX to use sw or no rescaling. DETECT all Use the old hw detection method, i.e. try all possible modules until the right ones are found. Use this if your audio card is not detected by the default method. OSS y Use OSS audio modules instead of the new ALSA (use this if your audio card is not detected even with DETECT=all) AUDIO 1,2,.. If you have more than one card and get no audio from your speakers, then probably MoviX choose the wrong one. Try using "AUDIO=1" to make it use your second card and so on. Use "AUDIO=n" to skip audio autodetection so that you'll be able to load modules by hand. DHCP y Try connecting to a DHCP server USB n Do not activate USB support IEEE1394 n Do not activate IEEE1394 support KB fr Use french kbd layout REGION <region> Either one of NTSC, NTSC-J, PAL, PAL-B, PAL-M, PAL-NC, PAL-60, PAL-M60 or SECAM. This is needed if you use the "TV" boot label unless you have an Ati card. TVCARD 1,2,.. Specify your TV card type if autodetect fails TVTUNER 1,2,.. Specify your TV tuner type if autodetect fails Check http://bt848x.sourceforge.net/config.en.html for a complete list of cards & tuners. SCSI <module> Force MoviX to load the SCSI module.o module (e.g. "SCSI=tmscsim")
Example: use the default label, do not rescale the video and use the second audio card:
boot: MoviX ACCEL=no AUDIO=1
--> Customizing the default boot parameters
If you want to boot by default with a boot label different from MoviX2 then you should edit the src/isolinux/isolinux.cfg file and modify its very first line.
If you use often certain boot arguments, you can avoid having to digit them at every boot writing a file called 'bootrc' containing all your args one per line and putting the file in the src/movix/ directory. E.g. if you use always "ACCEL=no AUDIO=1" then you can write the following file:
# <--------- .bootrc sample
# ---------> end of .bootrc sample
Boot args passed at boot time have higher priority than the ones written in the bootrc files, so in the few cases you don't want your default options you have a way to override them.
--> Configuration File
Starting from the pre6 version, it is possible to load/save from/to floppy a movix configuration file containing all possible parameters that you can set from the MoviX menu.
The name of this file is 'movixrc'.
Writing it by hand is not trivial and it is highly discouraged. The best way to generate is using the "Edit->Save config" menu of MoviX: once you find your favorite configuration, save it on a floppy and either use the floppy every time to load the config file using the "Edit->Load config" menu or burn a new MoviX CD after putting the movixrc in the src/movix/ directory. This way, the movixrc file will be automatically loaded at boot time by the movix scripts.
You can also save audio mixer settings to floppy in the same way you save movixrc. To load automatically this settings when MoviX start, just put asound.state from the foppy (or your favorite GNU/Linux distro) in src/movix/ and burn a new MoviX CD.
BEWARE: if you use such a "customized" MoviX CD in a different PC, remember to remove the movixrc using the "Edit->Remove config" menu or there will be an inconsistency between MoviX config data and the actual hw of the PC and therefore much likely MoviX won't be able to do much.
If it starts, you can safely remove the MoviX CD and use the console menu to load&play any DVD/VCD/Audio CD/file you want.
Starting from v0.8.0rc1, thanks to a very nice patch by Max Weninger,
the DVD menu will automatically look for the movie track among the
[usually many] DVD tracks and will at the same time fill the "DVD tracks"
menu with a list of all tracks available.
All audio and subtitles available languages will be also shown so that
you can choose your favorite ones.
To avoid having to chosse over and over the same audio/subs language you can set default ones in the "Edit->DVD" menu. Moreover, the "Play->DVD" selection will automatically play the longest DVD track, usually the one you want to see :-)
The same DVD mechanism has been imported to VCDs/XCDs/AudioCDs, so that now after loading their TOC you can choose which track to play.
==> CDs/HD Partitions
Starting from v0.8.0pre3, it is possible to play the whole content of a CD/HD Partition with the "Play->CD" and "Play->Partition" selections. Using this options, the movix script will automatically search the drive or partition for audio/video files and will play them all as a playlist. Once the playlist starts, you can use the MPlayer menu [see below] to navigate through the audio/video files contained in the drive/partition.
==> Playing Files
Starting from v0.8.0rc2, when you choose a file in a folder containing subs and no sub file with the same name is found, then an extra file chooser will automatically appear to let you choose a subtitle [just press <Cancel> if you don't want any].
==> MPlayer menu
The MPlayer binary contained in MoviX is compiled with support for the new
neat "menu" feature of mplayer:
pressing "m" while mplayer is showing any video you should be able to access mplayer's native menu and navigate mplayer options directly from inside mplayer!
There are 3 consoles active, you can choose which one to go pressing ALT-F<n>, where n can be 1, 2 or 3.
console 1 (default): is the one with the MoviX menu. When/if MoviX menu crashes, it is restarted automatically so you don't have anymore to launch the "movix" command. If you need a shell go to console 3.
console 2: here you find the alsamixer, in case the mplayer volume keys do not raise the volume enough or if you want to adjust bass/treble or other things.
console 3: here you'll find a shell in case you want to run anything [like nvtv].
If you find the volume too low even when mplayer's volume is at its maximum value, just change console with ALT-F2, set all volumes with alsamixer and go back to the original console with ALT-F1.
You can play video/audio playlists with mplayer opening them through
the Play->File menu.
The mplayer included in this version is able to use playlists with the following extensions: pls, m3u, asx, txt, list.
If you want to listen to an internet radio you must first set the LAN parameters from the Entry->MoviX Options menu or pass the "DHCP=y" option at the boot [patch by William Daniau] if you have a DHCP server in your network.
After that you can either enter an URL through the Play->URL menu
or use a playlist you load from a CD or a HD partition through
the Play->File menu.
I included two examples called hardhouse56k.pls and hardtrance56k.pls [thanks to Richard Didd for these playlists!] in the movix dir of the MoviX CD.
==> Net volumes
You can also mount remote nfs or samba [e.g. windows partitions] volumes accessing to the mount menu from the Play->Net menu. After you mounted the volume, it should automagically appear in the partition list and that way you can play any audio/video file from it like if it was on your machine.
==> Subtitles character sets
Starting from this version, TrueType fonts are also supported! You can select/change the MPlayer character set from the Edit->MoviX menu. All sets contain the latin character set plus the specific langauge set.
==> Adding Subtitles character sets
To add a new character set to the MoviX ones, just add a new TrueType file
(lower-cased!) or a MPlayer fonts dir under the src/mplayer/mplayer-fonts dir.
The new set will be automatically added by the movix.pl script to the subs
If you want to use it as default, just set it as default in the movixrc configuration file in the way explained above.
==> MoviX Menu fonts size
Starting from this version, you can select/change the MoviX menu font
size from the Edit->MoviX menu.
This is particularly helpful when you use the TV-out, in which case you want to maximize the font size, or when you want to use the ASCII output, in which case you want to minimize the fonts size.
Finally an Edit->TV menu is available and can be used to choose your country's Chanlist and/or your area's channels. Up to now the only local channels list available are the ones of my area, namely the island of Sardinia (Italy). Just send me your own area's to have them added to the distro!
The format of the local area channels is the xawtv format, and to generate it it is enough using the 'scantv' utility under Linux as explained by Balazs in the following forum thread: http://sourceforge.net/forum/forum.php?thread_id=784341&forum_id=207427
I included in MoviX the Balazs script that converts the widely used (under Unix) xawtv format in the MPlayer's one, so that to add your own channels it is enough adding a xawtv file in the src/mplayer/tv_channels/ directory, burning a new CD and select the new list from the Edit->TV menu.
Starting from v0.8.0rc2 thanks to the blackkane suggestions in the Help Forum
the MoviX menu can be controlled through a remote!!! Here's a list of the remote keys currently supported:
VOL+ -> right arrow
VOL- -> left arrow
CH+ -> up arrow
CH- -> down arrow
FULLSCREEN -> ENTER
SOURCE -> Tab
TV -> Escape
The Escape key is particularly useful to bring the menu to its starting status.
KNOWN BUG: for some reason at the first start the MoviX menu piloted by irpty
fails setting the right size, but this may be a problem only in case you need
to use a filechooser.
Nevertheless, it is enough to restart the interface with using the Quit->restart option to restore the normal status.
Piloting the menu with a remote is well worth this little bug, but of course I hope it will be fixed soon.
TV-out should work fine on all Ati, Matrox, NVidia and S3 Savage video cards. EPIA MBs TV-out is also supported but no test has been made yet. It is likely that it will work also with other cards, like for example with the Voodoo cards, but I am not 100% sure about that.
If you manage to use the TV-out with other cards please let us know!!!
MPlayer allows you also to watch a movie encoded in ASCII characters thanks to the nice AA-lib (http://aa-project.sourceforge.net/aalib/).
Unfortunately watching a movie using the "aa" driver messes up the screen so after watching a video you have to close the MoviX menu and restart it launching the "movix" command.
I am not at all an expert in this so I cannot be very precise about this. All I know is that you should be able to play most of the DivX files around and more in general any AVI, MPG file, QUICKTIME, ASF and WMV should be ok. About video files, all MP3 and OGG/VORBIS files should work.
If you have examples of such files not working with eMoviX please let me know.
I want to thank the great guys at www.scriptamanent.it for making the
logo for the MoviX project.
I also want to thanks my friend Andrea Assorgia for all his encouragements and good advices about making MoviX and for actually having suggested the name of the project. Special thanks go to my brother Vincenzo that bought me a very fast CD burner speeding up a lot the development of this package!
Finally I want to thanks Robos for his interest in the project and for suggesting me the best way to develop this menu.