Media servers: Flash, Hulu, Amazon, ARM and Fedora 16


My media server died this past week.  Actually, just the hard drive.  It was running Fedora 14 and needed to be updated anyway. This server hooks into my Sony bravia TV via HDMI using an nvidia GeForce 9800GT.  After installing Fedora 16 to a new drive, I loaded kmod-nvidia and the vdpau drivers which is what I'd done previously.  I also installed the latest flash player for Linux, 11.2.202.236.  This seemed to work fine for basic desktop services, including XBMC, but not with Hulu Desktop.

Hulu Desktop is rather old – it hasn't been updated in a while.  But it's been working fine for us.  However, when I tried to use it on the updated system it simply crashed.  There were some X errors on the console, but nothing that helped debug the problem.  I tried running strace on it but that didn't provide much additional insight.

I googled around a bit and found an ubuntu forum discussion about related issues that included one comment that suggested that the latest flash player was the culprit.  It pointed me to the adobe Flash archives where I downloaded an older version (11.1) and copied over the libflashplayer.so to /usr/lib64/flash-plugin.  That fixed Hulu Desktop.

Then my wife and I started talking about how Netflix was in financial troubles and that we might need to switch to amazon.  Well, that and the fact the Wii we use to watch Netflix appears to be on its last leg.  She already had Amazon Prime which includes free streaming.  So we gave it a shot.  Ugh.  What a mess.  No matter what I did, Amazon always told me I didn't have the latest flash.  Googling suggested this was due to drm issues, which required installing Hal and libhal RPMs from Fedora 15 (they're not available for Fedora 16).  But even that didn't help. 

While testing this I realized I would have to have two versions of Flash, the latest (or last version supported on Linux by Adobe, 11.2) and the one that Hulu Desktop needed.  Fortunately, Hulu Desktop allowed me to configure a non-standard location for the flash player.  Even with two versions of flash, however, Amazon refused to play.

Next I tried switching to Google's Chromium.  Personally, I'm not a fan of all-things-Google.  It's starting to sound too much like all-things-Windows or all-things-Apple.  So I use firefox.  But Firefox couldn't get a working Flash for Amazon.  Guess what did?  That's right, Google Chromium.  That's scary.  Only one choice. 

Ignoring that no-choices-for-Amazon-but-Google issue, once I got Amazon playing videos I went to try and play Game of Thrones.  According to the Amazon Prime info, we should be able to stream it without extra cost.  So I tried it, but nothing played.  It was just a blank screen.  I'm guessing this was a DRM issue and that the HAL packages didn't completely address it.  I exited, rebooted, tried a few things and when I went back Amazon showed me a "Resume" button, as if it remembered that I had previously been watching that video.  I pressed it.  Amazon charged us $1.99.  No chance to say no, no chance to cancel the order.  Resuming a video that was previously free cost us more money.  Amazon Prime Videos sucks.  We're out.

We'll keep using Hulu Desktop because we get stuff without additional cost (we don't have Hulu Plus, at least not yet).  And it just works under Linux, and works well (take note Amazon).  I even get some stuff in HD.  As for Netflix, we'll hang with it.  At least we know what we're getting and there are no hidden costs when resuming or replaying something.  We even get the DVDs by mail – what's waiting a week or two?  We're patient people.  Amazon should take note of Netflix's model.  People may be leaving Netflix, but after being nickel and dimed to death on Amazon, they'll be back.

So what does all this have to do with arm platforms?  Well, to play content from any major content provider (re: TV stations online) we pretty much have to have Flash.  Hulu needs it.  Amazon needs it.  Going directly to the stations web sites requires it.  But there isn't much movement on Adobe's part to support Flash on ARM, much less Linux on ARM.

That means that all my work with BeagleBox to create a media player for the ARM-based beagleboard to get web content might be pointless when I can't get to the major stations content.  Oh, I'll be able to play ripped DVDs and HTML5 content like YouTube.  But that doesn't really cover much of the stuff available online.  I had hoped to use a browser (surf) based on webkit and a flash player, but that seems a bit of a pipe dream now. 

So, until HTML5 gets wider support, creating a media player with Linux will mean running it on x86 hardware.  There is the APC, from VIA.  But that's not available yet.  I'm hoping I can get my hands on one when they first come out.  But that's being supported with android, at least to start.  I'm going to want an X driver or at least a frame buffer driver with opengl support for what I want to do.

Ugh. Between Flash and Android the embedded meida market is becoming both dull and useless.  Fortunately, there are far more uses for devices like the BeagleBoard than playing media.

What's really frustration about all this is that all the players I mentioned are big users of Linux.  They depend on it for their content distribution.  You'd think that, at a minimum, they could pay back the community by supporting Linux for playback of their content.  I'm willing to pay for the content (under some cost-pain threshold, which Netflix and Amazon seem to fall under at the moment), but that doesn't matter because they (or hollywood, which also are big Linux users) think we're all evil an will steal their stuff.

Where's the love, man?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.