How to Use Multimedia on Red Hat and CentOS

Red Hat Linux won’t play MP3 audio or MPEG video files.

This isn’t a new issue. Red Hat removed the codecs, the encoding and decoding shared libraries, back in September 2002 when Red Hat 8 came out. For the first five years they provided an explanation, you can still find it at

The decision makes sense. Red Hat Enterprise Linux is a server distribution. The Server version costs from $1,999 to $3,249 per socket pair per year, plus an added $399 to $998 per year to add High Availability, and plus another $799 to $1,998 per year to add Resilient Storage.

That isn’t a budget for watching movies and listening to music! Even if money were no object, you don’t want to stand at the server console to access multimedia files.

What does make sense is to have Red Hat systems mounted in racks in your server rooms. Multimedia files would be stored on those servers and shared out over NFS. Your users would sit at friendly Mint or Ubuntu or Mac OS X desktops which are NFS clients(or Windows and CIFS). The codecs would run on the desktops, where they are included with those distributions.

So, problem solved?

Well, maybe.

Some of your servers might have the task of encoding or transcoding (that is, converting from one video format to another).

Another issue arises for people using CentOS or a similar enterprise-oriented distribution at home. Since Red Hat leaves out the codecs, so does its clone CentOS, and its close derivatives Oracle Linux and the Department of Energy’s Scientific Linux.

When someone asks me for suggestions about running Linux at home, I ask about their planned platform. Maybe they have a spare PC or plan to use VMware on an existing system, or if they just want to experiment with the command line and they’re OK with booting to a live DVD environment. If so, I send them to the Linux Mint distribution.

Maybe they want practice with the command line and the vi editor, to follow up a week at Learning Tree’s introductory Linux user course. In that case, the distribution makes no difference, and Mint is very user-friendly.

What about practice and experimentation on servers?

But what about using what you have at work?

Learning Tree’s Linux server administration course focuses on the command line and directly manipulating configuration files. This makes what you learn as portable as possible. A week in that course gives you a good background, but now you need more hands-on experience before taking control of mission-critical enterprise servers.

Use what you have at work. Scientific Linux is available for immediate download. Oracle Linux just requires that you register an e-mail address. If your organization uses Red Hat, then download and use the free CentOS distribution. Get the “Everything” DVD ISO image.

Now you may want to listen to music while working.

Adding MP3 / MPEG Codecs

The very short version is that you add additional software package repositories (or repos).

The whole point is that Red Hat does not do this, and organizations like Oracle and DOE similarly don’t see the point. This means we will have to either build everything from source code (possible, but tedious) or rely on someone to have already solved the problem for us.

It’s a big job, so an individual or even an organization will usually do it for just a few major versions. The DAG repo worked for RHEL 2.1 through 5, and then the repo worked for RHEL 5 and 6.

With RHEL 7 we need the Nux Dextop repo (yes, Dextop, not a typo).

Nux adds missing desktop-focused components: multimedia, tools to create and manipulate NTFS file systems, etc. It relies on a number of packages in the Extra Packages for Enterprise Linux (or EPEL) repo, a Fedora project.

Here are the steps:

  1. Download the PGP public keys for both Nux Dextop and EPEL.
  2. Verify the SHA-2-256 hashes of those keys, to make certain you get real software from the real source.
  3. Add those public keys to your RPM database.
  4. Define the new repos for access with YUM.
  5. Add what you want.
  6. Enjoy!

The details are beyond the scope of this blog, see my site for the full details and command syntax.

It’s quite easy and it definitely works, here is a MPEG movie file playing on a CentOS 7 desktop:

MPEG file playing within mplayer on a CentOS 7 desktop
Universal published the movie “Charade” with an invalid copyright notice, so the film was in the public domain in the U.S. upon its release. You can download it from, and now you know how to watch it.

image sources

  • MPEG Decoding on CentOS 7: Bob Cromwell

Type to search

Do you mean "" ?

Sorry, no results were found for your query.

Please check your spelling and try your search again.