Welcome!

Linux Containers Authors: Liz McMillan, Pat Romanski, Elizabeth White, Yeshim Deniz, Jyoti Bansal

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

@ThingsExpo Stories
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with the 21st International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo Silicon Valley Call for Papers is now open.
SYS-CON Events announced today that DivvyCloud will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. DivvyCloud software enables organizations to achieve their cloud computing goals by simplifying and automating security, compliance and cost optimization of public and private cloud infrastructure. Using DivvyCloud, customers can leverage programmatic Bots to identify and remediate common cloud problems in rea...
SYS-CON Events announced today that Tintri, Inc, a leading provider of enterprise cloud infrastructure, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Tintri offers an enterprise cloud platform built with public cloud-like web services and RESTful APIs. Organizations use Tintri all-flash storage with scale-out and automation as a foundation for their own clouds – to build agile development environments...
SYS-CON Events announced today that Fusion, a leading provider of cloud services, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Fusion, a leading provider of integrated cloud solutions to small, medium and large businesses, is the industry’s single source for the cloud. Fusion’s advanced, proprietary cloud service platform enables the integration of leading edge solutions in the cloud, including cloud...
SYS-CON Events announced today that Peak 10, Inc., a national IT infrastructure and cloud services provider, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Peak 10 provides reliable, tailored data center and network services, cloud and managed services. Its solutions are designed to scale and adapt to customers’ changing business needs, enabling them to lower costs, improve performance and focus intern...
SYS-CON Events announced today that Progress, a global leader in application development, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Enterprises today are rapidly adopting the cloud, while continuing to retain business-critical/sensitive data inside the firewall. This is creating two separate data silos – one inside the firewall and the other outside the firewall. Cloud ISVs ofte...
SYS-CON Events announced today that Systena America will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Systena Group has been in business for various software development and verification in Japan, US, ASEAN, and China by utilizing the knowledge we gained from all types of device development for various industries including smartphones (Android/iOS), wireless communication, security technology and IoT serv...
DevOps at Cloud Expo – being held October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real r...
SYS-CON Events announced today that Hitachi Data Systems, a wholly owned subsidiary of Hitachi LTD., will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City. Hitachi Data Systems (HDS) will be featuring the Hitachi Content Platform (HCP) portfolio. This is the industry’s only offering that allows organizations to bring together object storage, file sync and share, cloud storage gateways, and sophisticated search and...
The 21st International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Machine Learning and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding busin...
SYS-CON Events announced today that Technologic Systems Inc., an embedded systems solutions company, will exhibit at SYS-CON's @ThingsExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Technologic Systems is an embedded systems company with headquarters in Fountain Hills, Arizona. They have been in business for 32 years, helping more than 8,000 OEM customers and building over a hundred COTS products that have never been discontinued. Technologic Systems’ pr...
SYS-CON Events announced today that Carbonite will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Carbonite protects your entire IT footprint with the right level of protection for each workload, ensuring lower costs and dependable solutions with DoubleTake and Evault.
New competitors, disruptive technologies, and growing expectations are pushing every business to both adopt and deliver new digital services. This ‘Digital Transformation’ demands rapid delivery and continuous iteration of new competitive services via multiple channels, which in turn demands new service delivery techniques – including DevOps. In this power panel at @DevOpsSummit 20th Cloud Expo, moderated by DevOps Conference Co-Chair Andi Mann, panelists will examine how DevOps helps to meet th...
SYS-CON Events announced today that Progress, a global leader in application development, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Enterprises today are rapidly adopting the cloud, while continuing to retain business-critical/sensitive data inside the firewall. This is creating two separate data silos – one inside the firewall and the other outside the firewall. Cloud ISVs oft...
SYS-CON Events announced today that CollabNet, a global leader in enterprise software development, release automation and DevOps solutions, will be a Bronze Sponsor of SYS-CON's 20th International Cloud Expo®, taking place from June 6-8, 2017, at the Javits Center in New York City, NY. CollabNet offers a broad range of solutions with the mission of helping modern organizations deliver quality software at speed. The company’s latest innovation, the DevOps Lifecycle Manager (DLM), supports Value S...
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Cloudistics delivers a complete public cloud experience with composable on-premises infrastructures to medium and large enterprises. Its software-defined technology natively converges network, storage, compute, virtualization, and management into a ...
SYS-CON Events announced today that Ocean9will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Ocean9 provides cloud services for Backup, Disaster Recovery (DRaaS) and instant Innovation, and redefines enterprise infrastructure with its cloud native subscription offerings for mission critical SAP workloads.
Multiple data types are pouring into IoT deployments. Data is coming in small packages as well as enormous files and data streams of many sizes. Widespread use of mobile devices adds to the total. In this power panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists will look at the tools and environments that are being put to use in IoT deployments, as well as the team skills a modern enterprise IT shop needs to keep things running, get a handle on all this data, and deli...
We build IoT infrastructure products - when you have to integrate different devices, different systems and cloud you have to build an application to do that but we eliminate the need to build an application. Our products can integrate any device, any system, any cloud regardless of protocol," explained Peter Jung, Chief Product Officer at Pulzze Systems, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm.