Welcome!

Linux Containers Authors: Yeshim Deniz, Elizabeth White, Zakia Bouachraoui, Pat Romanski, Liz McMillan

Related Topics: Linux Containers

Linux Containers: Article

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.

More Stories By 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.

Comments (14) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
MCR 10/11/04 07:54:05 PM EDT

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 10/01/04 03:43:58 AM EDT

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 04/18/04 09:38:36 AM EDT

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 03/24/04 09:46:42 PM EST

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 03/24/04 07:16:05 PM EST

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 02/16/04 02:44:46 PM EST

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 12/24/03 09:27:30 PM EST

I used to read "./configure --help" before running it. :) And taking a short glance, what do README and/or INSTALL files say...

Rainer Lehrig 10/06/03 05:40:37 AM EDT

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 10/04/03 04:49:17 PM EDT

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 10/03/03 04:20:49 PM EDT

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 10/03/03 04:04:07 PM EDT

I agree with you. Arrogance is the mark of a small person.

JT 10/03/03 12:31:32 PM EDT

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 10/03/03 11:22:00 AM EDT

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. 10/03/03 10:29:21 AM EDT

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....

IoT & Smart Cities Stories
IoT is rapidly becoming mainstream as more and more investments are made into the platforms and technology. As this movement continues to expand and gain momentum it creates a massive wall of noise that can be difficult to sift through. Unfortunately, this inevitably makes IoT less approachable for people to get started with and can hamper efforts to integrate this key technology into your own portfolio. There are so many connected products already in place today with many hundreds more on the h...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Disruption, Innovation, Artificial Intelligence and Machine Learning, Leadership and Management hear these words all day every day... lofty goals but how do we make it real? Add to that, that simply put, people don't like change. But what if we could implement and utilize these enterprise tools in a fast and "Non-Disruptive" way, enabling us to glean insights about our business, identify and reduce exposure, risk and liability, and secure business continuity?
DXWorldEXPO | CloudEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
DXWorldEXPO LLC announced today that Telecom Reseller has been named "Media Sponsor" of CloudEXPO | DXWorldEXPO 2018 New York, which will take place on November 11-13, 2018 in New York City, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
To Really Work for Enterprises, MultiCloud Adoption Requires Far Better and Inclusive Cloud Monitoring and Cost Management … But How? Overwhelmingly, even as enterprises have adopted cloud computing and are expanding to multi-cloud computing, IT leaders remain concerned about how to monitor, manage and control costs across hybrid and multi-cloud deployments. It’s clear that traditional IT monitoring and management approaches, designed after all for on-premises data centers, are falling short in ...