2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP LINKS YOU MUST CLICK ON


MPlayer: The project from hell
MPlayer works fine once you get past the tyro-written installation script & docs

(LinuxWorld) -- In the year since it first appeared on freshmeat, the popular watering hole for Linux software, a relatively small new project headed up by Arpad Gereoffy has shoved everything else out of the way to become the most popular offering on the site save Linux itself. The project is MPlayer, and it provides Linux users with a tool to let them view videos in almost every popular flavor, including MPEG 1 and 2, and AVI. It also plays video from DVDs. When it is installed and configured correctly, it's a doozy. That's the good news.

The bad news is the installation stinks, configuration is a black art, and the documentation is barren. Worse yet, Gereoffy and the other developers have more attitude than the law allows. At least the law in this county, and I'm the sheriff. In just a year, that attitude has gotten them on the wrong side of Red Hat, of Russian developers porting a clone to OS/2, and many of their own users.

The MPlayer gang seems to relish nothing more than belittling their users and reminding them of just how little they know about Linux and computing in general. I don't know about the rest of you, but I suffer enough of that on my own. I do not need any outside assistance to reinforce that point of view.

Naturally, I was drawn to the project like a moth to a flame. Bring it on, I thought. Whatever it takes, I'll get it installed. I won't be asking that infantile band of RTFM-spewing bozos who maintain it for help, either. My own hardheadedness is probably the only reason I sit here today with MPlayer installed, with a custom GUI skin enabled no less, barely more than a full day after I started.

Custom MPlayer skin

The journey began when I downloaded the latest CVS snapshot from the MPlayer Web site (see the Resources section for the URL). The attitude I mentioned earlier was noticeable in the comments on the project's page at freshmeat, both in the MPlayer team's remarks about gcc 2.96 and MPlayer users' remarks about the project team. One user referred to the MPlayer team as "the project from hell."

Actually, the team's infamous anti-Red Hat rhetoric has been toned down slightly. At Red Hat's request, some false statements the developers made about 2.96 have been removed from MPlayer's Web site. The team still lets you know at every opportunity what they think of Red Hat, which gets tiresome fast.

I was prepared for the typical ./configure; make; make install and expected to have MPlayer running in less than five minutes. Was I ever wrong. The first thing to bite me was the configure script itself. It refused to run after detecting gcc 2.96, which is the default with Mandrake 8.1. Reading back over the generated log messages, I found that I could bypass the ban/warning by adding --disable-gcc-checking to the configure command. Run with that parameter, the script halts and waits for you to hit enter to acknowledge the final warning about not using Red Hat's most notorious offering. I did, and the configure script finally set about its work. make and make install (run as root) followed with no visible problems. I thought I was set.

Wrong again. Mind you, I had just run the install script. But when I tried to execute MPlayer for the first time, it barfed because it couldn't find the codec configuration file (codecs.conf) in either of the two default directories where the program expects it to be. Oh, the file is there all right, buried in a subdirectory in the MPlayer installation directory. More digging around in the documentation, the FAQ, actually, and I found the missing file and the cure. Finally, mplayer runs. There is no GUI and it halts immediately, but it runs. It wants a file name on the command line.

I needed video files. That called for gnutella. I downloaded gtk-gnutella and installed it. It configured, built, and installed itself properly in no time at all. In a few minutes I managed to snag an .avi or two, a couple of .mpeg's, and an .asf video. The first mpeg file I played displayed beautifully. The sound was nice, too. However, the second mpeg, avi, and asf wouldn't play at all. It seems the Win32 codecs, a huge reason for MPlayer's popularity, are not supported by default. Neither is the GUI. I decided it was time to RTFM.

Don't get me wrong. There is documentation. It is scattered, and often incomplete, and carries the same attitude I had seen elsewhere, but it is there. An example of that attitude, taken verbatim from the FAQ:

Q: I compiled MPlayer with libdvdcss/libdivxdecore support, but when I try to start it, it says: error while loading shared libraries: lib*.so.0: cannot load shared object file: No such file or directory

I checked the file and it is there in /usr/local/lib.

A: What are you doing on Linux? Can't you install a library? Why do we get these questions? It's not MPlayer specific at all! Add /usr/local/lib to /etc/ld.so.conf and run ldconfig. Or install it to /usr/lib, because if you can't solve the /usr/local problem, you are careless enough to do such things.

Perhaps instead of taking the time to flame the person asking the question, the smart aleck could have simply answered the question graciously, then spent the time saved by skipping the flames fixing bugs in the installation script.

Eventually I negotiated my way through the installation minefield created by the agonizing installation and poor design. I stepped through it one gotcha at a time. I won't bore you with a tedious play-by-play, but I will mention that I had more bite marks than I would have if I had napped in a fire ant mound. Here's a short tip sheet that might help fellow travelers coming down this path. It's not complete, and it won't replace the documentation, but these tips might save you some aggravation.

  1. Dependencies noted on freshmeat included gcc 2.95.3, libdvdcss, and libdvdread. However, I used gcc 2.96 and had zero problems. It doesn't bother to mention that if you want the GUI, you are also going to need to have gtk installed. You will also need the unzip and bunzip2 archiving tools installed.
  2. In addition to the two DVD libraries, download these files from the MPlayer download page:
    • MPlayer-current.tar.bz2 (the program)
    • mp-arial-iso-8859-1.zip (Western European fonts)
    • win32codec-0.50.zip (codecs required for Windows formats)
    • default.tar.bz2 (the default skin for the GUI, or one of the others available)
  3. Ignore the remarks in the installation docs that have you looking for an install.sh script for the DVD tools. It doesn't exist. Just move or copy the DVD libraries to /usr/local/lib. Then make sure that directory is included in /etc/ld.so.conf and run ldconfig.
  4. If you want to use gcc 2.96 like I did, you must add --disable-gcc-checking to the configure command line. If you want to build the GUI, you must also add --enable-gui to the line.
  5. Examine the .mplayer subdirectory that the installation creates in your home directory. If there is no codecs.conf file present, copy it from the MPlayer installation/etc subdirectory. Also, copy from that same subdirectory the example.conf file and rename it to config. Then edit config so that only the gui and the skin lines are left uncommented. You can experiment with the other config options at your leisure.
  6. If the font subdirectory does not exist in the .mplayer directory, create it. Then unzip the downloaded fonts into a temporary directory, select the size font you want and copy the contents of the subdirectory for that size to the .mplayer/font directory.
  7. If the Skin (note the capital S) subdirectory does not exist in the .mplayer directory, create it. Decompress and untar the skin you downloaded, then move the subdirectory it creates into the .mplayer/Skin directory. If you chose the default, for example, your directory structure will be ~/.mplayer/Skin/default.
  8. When all else fails, take a deep breath and RTFM. Read both FAQS and the online manual, too, if only to learn how not to create effective documentation.

I'm sure I missed a gotcha or two along the way, but those should help. I don't believe that anything I mentioned is absent from the documentation, but many of them are out of place. They belong in the "things you need to know first" category, rather than where you eventually find them.

Software by Marquis de Sade

The entire installation and design process is so poor that it seems as if the developers laid a minefield for users purposely so that they could torment them. I can forgive the poor English, but the outright contempt for hapless users is inexpiable.

The installation script causes MPlayer to crash the first time it is run. It fails to create needed directories, and it fails to move required configuration files to the proper location. A well-written installation script would create the directories and place files where they belong. After that sort of performance, the developers have no justification for their arrogance. This project is popular, at least in terms of interest on freshmeat, and it does seem to have produced some nice code. Unless the project leader and his crew grow up and learn there is more to it than the coding, that popularity won't last.

About Joe Barr
Joe Barr is a freelance journalist covering Linux, open source and network security. His 'Version Control' column has been a regular feature of Linux.SYS-CON.com since its inception. As far as we know, he is the only living journalist whose works have appeared both in phrack, the legendary underground zine, and IBM Personal Systems Magazine.

YOUR FEEDBACK
MCR wrote: Re Adrian: Maybe you should actually read the article, wherein Mr. Barr stated that configure wouldn't run after detecting gcc. That being just the first of many difficulties, most of them occurring *after* the installation.
Adrian wrote: How hard can be to run this: ./configure,make, make install? Maybe Mr Barr should use only the MS win. There are some very easy to use, stupid proof installers. Or maybe he should buy the lattest computer with a 3GHz+ CPU so that he can use the MS media player. This way he does not need to install anything
Brian Eller wrote: Install from any source is HARD. Well not always, however setting up install scripts is not just run a few automated tools, it TAKES REAL WORK and you can't just pass off a hard source install when there are binary releases, sure they are sometimes a little dated, but they are much easier to install
john wrote: thanx for the write up and help with mplayer :) it is folks like you(z) that will help bring down the mighty gates of windoze..
Rob wrote: Hey, give the guy a break, we're not all experts yet! :) Anyway, I found the comments on installing the codec config file useful as I was too lazy to scrutinize the docs, but I agree that installation must be made easier, and the sooner the better! *** Great news about the European Union's fine of $600 million on Microsoft! Ouch, serves them damn right! Justice lives in Europe (lets hope they lose the appeal.)
Carl McKenzie wrote: I tried installing mplayer from rpm, but none of the rpms I downloaded would even install on fedora. I ended up installing from a tarball, which was made much easier thanks to the guide at http://www.mjmwired.net/resources/mplayer-fedora.htm. As many people said, my problems are probably caused by the crippled distro, but I only have dialup internet so im restricted to what I can get through my polytech course
A.S. aka tomato wrote: I used to read "./configure --help" before running it. :) And taking a short glance, what do README and/or INSTALL files say...
Rainer Lehrig wrote: I use SuSE Linux which can install MPlayer from it's DVD using YaST. But the SuSE version doesn't support a lot of codecs. It's castrated. (Same as in RedHat ?) So I had to install the original version. The only problem I remember was that I had to supply --enable-gui to configure.
Joe wrote: I just use LindowsOS which keeps MPlayer updated via Click-N-Run. I've never had to install it (I wouldn't know how). Joe
Randall P wrote: Redhat is getting soo super conservative they have even removed the sudo ramblings (My monkey can type better than you.). Modified the gnome screensavers so they now have linux tips instead of random ramblings. The nerve of those guys. Id like to see mysql group rip off all of the oracle redhat advanced server GNU code and make MySQL work via clustering with all the same features.
Joe wrote: I agree with you. Arrogance is the mark of a small person.
JT wrote: It seems that you're same level of knowledge as joe average, compiling from source is _not_ your thing. And why CVS build, there are releases too? I never had problems with MPlayer, aah, but I read documentation. And that Red Hat compiler was buggy and unsupported by GCC team.For god sake, it was devel version from CVS, only heavily patched by Red Hat. Use RPM's, compiling source belongs to us who know how to read(documentation) and use standard tools.
REd wrote: you should try gentoo then... install works beautifly and none of those silly missing codec warnings, even that exists in MS media players...So for what its worth your concentrating on all the negatives, not a well rounded review. Who cares what the developers of mplayer think of Redhat. You know what, there is a crackhead that lives nextdoor to me who thinks im a bad neighbor, who cares! Opinions are like assholes. Got one, yours stinks.
R. L. wrote: Joe, The best way for RedHat users to install Mplayer is to get the rpm from www.freshrpms.net. http://ftp.freshrpms.net/pub/freshrpms/redhat/9/mplayer/mplayer-1.0-0.1....
LATEST LINUX STORIES
The promised beta release of Moonlight 1.0, the Linux implementation of Microsoft’s Silverlight widgetry, has finally wended its way out. Moonlight is of course the open source implementation of Microsoft's Silverlight and should give Linux users the same rich, high-definition media ...
RedHawk 5.2 was developed to address particular needs in real-time application development. New features include an enhanced industry standard Linux kernel (2.6.26); multi-platform synchronization; advanced memory shielding; and support for the latest x86 CPUs and chipsets.
The two-year anniversary of the Novell-Microsoft alliance that scandalized the open source community passed quietly enough earlier this month. The pair waited a couple of weeks to mark the occasion and then said that in the second year of their arrangement they added upwards of 200 new...
Besides SUSE and its own brand of Linux, rPath is now supporting the Ubuntu and CentOS Linux operating systems as part of its rBuilder and rPath Lifecycle Management Platform. The move broadens the start-up’s options for deploying and managing applications in traditional, virtualized...
SCO filed a notice of appeal with the United States Court of Appeals for the 10th Circuit in Denver Tuesday. Yes, miracle of miracles it finally got a final judgment out of Utah District Court Judge Dale Kimball. That's the hall pass it needs to challenge his devastating summary judgme...
Fedora 10 is out and about. Fedora of course is Red Hat's freebie community OS and testbed for coming attractions in Red Hat Enterprise Linux. The new rev is supposed to have substantial virtualization improvements for remotely installing and managing storage provisioning and includes ...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE