Driving Technology Directions on Cloud Computing Platform

Ezhil Arasan Babaraj

Subscribe to Ezhil Arasan Babaraj: eMailAlertsEmail Alerts
Get Ezhil Arasan Babaraj: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: U.S. Federal Law

U.S. Federal Law: Article

A streaming media player for the rest of us

Xine plays popular streaming media formats flawlessly & installs like a dream

After my less than satisfying visit to the land of Linux streaming media viewers just a few weeks ago, I was a little reluctant to try another, in spite of the readers who suggested I look at Xine. I shouldn't have been. I found the Xine experience satisfying in every aspect.

Xine installation is quick, easy, and well documented. On my Red Hat 7.2 desktop box with its 1-GHz Athlon CPU, 512 megabytes of RAM, and a GeForce 2 MX video card, I got video that rivaled anything I've seen, even in full-screen mode.

I downloaded xine-lib-0.9.8.tar.gz and xine-ui-0.9.8.tar.gz source code tar balls from the Xine project page on SourceForge. A perfectly behaved configure script -- I was impressed by the level of detail and information provided by the scripts -- started the normal install process of ./configure; make; make install. Per the README on the Web site, I installed xine-lib first, then xine-ui.

Please note that for a variety of reasons, the installation process I described does not give you a Xine installation capable of handling all media formats that can be viewed on Xine. Some require plug-ins or Win32 DLLs. The most onerous of those reasons are legal.

Warning: Rant about the DMCA ahead

Give me a hand for a second so I can get up on this soapbox. I love America, but our political system has become so corrupt that it isn't uncommon to see bad people make bad laws and good people threatened with prison time as a result. I'm talking about the DMCA, of course. However, the same can be said of UCITA and other spawn of the marriage of unbridled corporate greed and purchased political power.

How can it be a crime for me to go the store and purchase a DVD drive for my computer, purchase a DVD movie at another store, and bring them home and watch the movie? It appears to be one, because I am running Linux and I don't have an "approved" software to decrypt the movie. We need a modern day Boston Tea Party. We need to send the crooks a message. An unencrypted message. We need to send it loud and clear: WE'RE TAKING BACK THE CONSUMER RIGHTS YOU STOLE FROM US IN PASSING THE DMCA! Okay, I'll get off that soapbox now.

Back to our rave about Xine

The Xine homepage lists a number of related sites and projects that can fill in the missing parts. I visited several of them and ended up with a Xine that could play encrypted DVDs as well as AVIs requiring Win32 DLLs. I also grabbed DVDNav. I am not sure that what I did was legal. Such is the dark cloud cast by the DMCA. (Ed. Warning: Back to the soapbox again.) None of us will be sure until the FBI, which should be unmasking bin Laden's myrmidons, makes a midnight raid on our homes, seizes our computers, and misplaces us for days or weeks in a maze of federal jails.

The GUI interface for Xine is skinnable and in fact, version 0.9.8 includes several optional skins you can select from if you don't care for the default. The first skin I chose (xinetic) crashed the GUI when I selected it. I restarted Xine and chose a different one, mp2k. That one didn't crash. Keep in mind this is beta software.

If you like to fiddle with your audio/video options, Xine is there. You can set just about anything, from paths to device names to the "demuxer selection strategy." The Setup menu includes tabs for gui, video, audio, misc, input, mrl, and codec. You don't have to fiddle with these choices, or at least I didn't. Nevertheless, you can if you have an itch that needs scratching.

So how does it play, you ask? I slipped the bought and paid for copy of my only DVD movie ("The Omega Code") into the drive to find out. It played beautifully. It was awesome. The sound was great, too. I don't believe I have ever seen better video on a PC, regardless of platform, and that includes an eye-popping demo on Be OS several years ago. I captured the image below with Xine's built-in snapshot function while watching the movie.

The Omega Code

I found some helpful hands for my Xine install and setup on the #xine channel on the Open Project Network (irc.openproject.net). Those willing to help newbies with their questions include xine developers and project leaders from related projects. As another newbie on the channel remarked while we were there, it's great to be able to get help from folks who really know what they are talking about.

I also had a chance to exchange a couple of e-mails with Guenter Bartsch, who started the Xine project in 2000. Before his formation of the Xine project, it had simply been a part of the Livid/OMS (Linux Video/Open Media System) work. Bartsch had an itch that wasn't getting scratched, or at least not scratched quickly enough, in Livid/OMS. He felt that work on syncing the audio and video portions of streaming media was way behind where it should be, and patches he submitted to help accomplish this never seemed to be accepted. Hence, the Xine project was born.

As you can tell from my soapbox remarks earlier, I'm not too happy about American IP law at present, especially that of the DMCA. I asked Bartsch for his views on the situation. He replied "From a practical standpoint the worst effect of the DMCA on the Xine project is the uncertain legal situation it created -- we just don't know what we are allowed to do. Some courts say source code is protected by free speech so don't worry about the DMCA as long as you only provide sources, others interpret the DMCA in a stricter way."

When I asked Bartsch what he liked most and least about Xine today, he didn't shy away from the question. "I like its architecture which allows it to support many different formats and decoders while maintaining high performance and good a/v synchronization," he wrote. "My biggest concern at the moment is robustness/stability of the video output engine, there are some problems with mpeg streams that contain still images -- but I hope we'll find a good solution for that soon, at least we're heavily working on it."

He did not shy away from questions about "the competition" nor how Xine stacks up to them. Bartsch said he rarely looks at or uses other media players, but he does look at Mplayer occassionally. The number of different formats MPlayer supports impresses him most. As for Xine itself, he believes it provides the best performance, the best synchronization of video and audio, and the best coding style.

Another developer had told me that as a result of my column on Mplayer, a Xine developer decided to create a Xine test script to help resolve some of the most common problems users run into when installing Xine for the first time. I asked Bartsch if this story was true and he acknowledged that it was. However, he also went on to say that he was "surprised" by my column about Mplayer and thought it was unfair, reminding me that it is a free software project. "If you don't like it," Bartsch said, "you're free not to use it."

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 (0)

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.