20090712 linuxs ugly little secret - plembo/onemoretech GitHub Wiki

title: Linux's ugly little secret link: https://onemoretech.wordpress.com/2009/07/12/linuxs-ugly-little-secret/ author: lembobro description: post_id: 286 created: 2009/07/12 18:11:25 created_gmt: 2009/07/12 18:11:25 comment_status: open post_name: linuxs-ugly-little-secret status: publish post_type: post

Linux's ugly little secret

totem
Multimedia has come a long way on Linux since I started exploring the O/S back in 1995. Of course multimedia in general has come a long way. But progress has been slow, and uneven, in both the open and closed source worlds.

Intellectual property law has had a big impact on that. Software patents and copyright have severely restricted what formats can legally be read by open source programs in many places. In the United States the DCMA, otherwise known as the “Hollywood Lawyer Full Employment and Innovation Suppression to Perpetuate Monopoly Power Act of 1998”, has as a practical matter prevented commercial Linux vendors from competing with Microsoft on the desktop, at least in the United States. Red Hat has been particularly careful to not ship with anything that has even the remotest chance of running afoul of the law. Because their preferred market is the corporate data center, this makes a lot of sense. Ubuntu and other noncommercial distros, whose target audience are mostly home users, argue that “fair use” exempts their users from legal issues raised by some of the multimedia software availabel for their versions (like apps that use libdvdcss, or have reverse-engineered patented codecs).

There are some significant exceptions to this restricted market, of course. Real Networks has licensed the codecs for playback of several proprietary formats using its Real Player software on Linux. In addition to their own Real Media formats (ra, rm, rv, ram, rmm), these include mp3, wav, aac, avi, wmv, and mpeg (1, 2 and 4).

Adobe Flash video has become a standard for most sites on the Internet, and, except for some nagging page formatting issues that have more to do with the Firefox browser than Linux, works just as well on Linux as it does on Windows.

Finally, there are a variety of players and plugins (along with the necessary codecs) that will allow viewing of various media formats, including the most popular proprietary ones like mp3, wmv and mov. These are all developed in countries where software patents and the most extreme regulation of copyright are not recognized. Mplayer (HU), Xine (HU) and VLC (FR) are three projects in this category.

Last in line has been totem, a media player built on the Gstreamer Framework. The shipping base and gstreamer-plugins-good packages support free formats like ogg, vorbis, theora, dv, rtsp, and avi as well as free image formats like png and jpeg.

Also available for totem is the gstreamer-plugins-ugly package, which includes support for reading many unlicensed formats such as mpeg, aac, asf, wav, and wmv. The “ugly” designation is a not-so-veiled reference to the legal questions raised by the capabilities provided by the plugin. Other packages like gstreamer-ffmpeg support additional formats through use of the ffmpeg libraries. The main problem to date with this last package has been that the base ffmpeg package doesn’t always support the full range of codecs a successful source build would be capable of. A secondary problem is that it is exceedingly difficult to successfully build ffmpeg from source.

I’ve tried different combinations of multimedia players on my own machines. At the time this was written the most effective, and coincidentally, legal, is to use totem for accessing free formats like ogg and theora, while relying on realplayer and flash for proprietary formats like mp3, wmv, wav and flv. About the only thing I can’t access with that combination is Apple quicktime, and to be honest that’s more their (Apple’s) loss than mine.

References:

Red Hat’s policy on multimedia formats can be found here.

A description of the formats supportable by gstreamer can be found here, broken down by plugin.

Copyright 2004-2019 Phil Lembo