Archive for the ‘Software’ Category

Flash’s H.264 decoder is a Pig. Please Adobe, Go Buy CoreAVC!

Wednesday, December 5th, 2007

Yesterday Adobe released Moviestar officially as “Adobe(r) Flash(r) Player 9 Update 3″. As the name implies, Moviestar includes the ability to playback H.264 video.

Adobe Flash LogoIn the press release it says “The latest update also features hardware accelerated, multi-core enhanced, full-screen video playback for high-resolution viewing across major operating systems and browsers.”

After reading this, I first thought “wow! something is finally going to use my GPU for decoding!”. Unfortunately upon further investigation I discovered that the only hardware acceleration going on is for scaling. That’s definitely better than the software scaling flash was doing before (which is why those full-screen flash videos had so much tearing and lagginess) but not what I was hoping for.

I write this from my first-generation MacBook Pro which has an ATI Radeon X1600 GPU. This particular GPU is capable of doing hardware decoding of H.264 video. From ATI’s web site:

“Free your CPU to devote more processing power to other applications with Avivo’s hardware accelerated processing of new HD video formats, including H.264.”

Picture 2.pngThen there is a link to Cyberlink’s PowerDVD 6 expansion pack page where you are presented with the option to pay another $24.95 for a Windows-only package that will presumably use the “Avivo” hardware acceleration. Upon further searching, it seems that Nero, Elecard, and others are able to do hardware accelerated decoding as well.

As such, whether I use Mac OS X or Windows (without paying more money) I appear to be stuck with software decoding. I am not aware of any free software for Windows or any software at all for Mac OS X that can use my GPU’s H.264 decoder. That includes Quicktime Pro and the new Flash.

There’s more bad news. The new Flash does support “True HD” up to 1920×1080p but according to the system requirements page I would need a much faster Mac to be able to decode 1080p video as my 2 GHz Core Duo doesn’t pass the test. I can accept this in a vacuum but two major facts make this totally unacceptable:

1. My GPU could be doing it without a second thought and leaving my CPU for more important things.

2. If I were running Windows or Linux, it would be no problem at all! Have a look at the requirements table below.

Picture 3.png

Notice that 1080p can be decoded with a 1.8 GHz Core Duo on Windows and Linux but jumps up to a whopping 2.66 GHz on the Mac! Also notice that Adobe seems to have access to some kind of bizarre prototype Macintosh with a 1.33 GHz Core Duo for doing 480p decoding tests. wtf is that?

Of course, I would prefer Flash figure out how to do hardware-accelerated decoding. But if a software solution is the only choice, can’t they just buy these guys or at least license their decoder like Joost did? Just to give an idea of what can really be done in software, take a look at the requirements for the CoreAVC decoder:

Picture 4.png

As they say on their web site…

“The efficiency of CoreAVC in ’software’ is often compared to be faster than other solutions that try to rely on ‘hardware’ to increase playback performance of H.264 video.”

So in conclusion, a single core CPU released in August 2002 running an OS from 2001 with CoreAVC’s $7.95 H.264 decoder is able to blow the doors right off a brand new $2800 2.4 GHz MacBook Pro running Apple’s latest operating system and yesterday’s brand new version of Flash.

Please Adobe, go buy CoreAVC or get some ATI/Nvidia/Intel engineers parked at your offices for a couple months to sort this out. Please?

But, it’s not all bad news. Not only do we get nice hardware scaling which has existed in “regular” media players for many years but Flash now supports a whole load of great containers — MP4, M4A, MOV, MP4V, 3GP and 3G2. They can all be embedded right into your SWF’s with fancy overlays and all kinds of good stuff. This is very good news indeed. With the super-fast adoption of new versions of Flash we can look forward to much better web-based video very soon.

Toshiba 911T: 800×480, But Resolution Isn’t Everything

Wednesday, November 28th, 2007

Before moving back to Tokyo in October I was using an iPhone as my primary mobile phone. The iPhone’s resolution is 480×320 and 3.5 inches in size diagonally. That’s 153,600 pixels. Man, the screen is so nice.

Iphone Home
153,600 pixels of love

So, it was reasonable for me to assume an even better experience from my new Toshiba 911T, one of the only full-featured phones available in Japan to have both English T9 and a 3-inch “WVGA” display which is a whopping 800×480 resolution. That’s 384,000 pixels — well over twice the iPhone’s resolution.

Picture 2
384,000 wasted pixels

Well, you know what happens when you assume. Yes, the 800×480 display is insanely crisp when viewing photos — that can’t be debated. However, everything else — text, video, one-seg TV, menu graphics, etcetera, just lack the smoothness and crispness which seems so effortless on the iPhone. As is often the case with hardware these days — it all comes down to great software.

The iPhone is scaling and smoothing its beautiful fonts while the Toshiba looks pixelated and sometimes even worse than the older QVGA (320×240) displays that were once the standard in Japan. Further, there are no high resolution icons or other aspects of the interface to take advantage of this magnificent display. Even the “PC Browser” — a browser for viewing web sites which were designed for PC web browsers — is inferior to iPhone’s Safari in terms of font readability. Besides the great quality when viewing photos, about the only positive thing I can say is that if I did want to view super tiny and almost unreadable text on a mobile phone I would have the option available to me.

Don’t get me wrong — I really like this phone. It’s got UMTS HSDPA, FeliCa RFID, a 3-megapixel autofocus camera, takes great videos, has English T9 input, one-seg TV, a micro-SD port, syncs with iSync (Thanks to the gods at Reudo!) and a lot more — even Bluetooth A2DP (though rather useless without MP3 playback). But, it’s no iPhone.

Once the iPhone comes out in Japan, I wonder if the average Japanese customer will even care about this issue. I have shown Japanese Windows users the amazing quality of the Japanese fonts on my Mac many times and most seem to be either oblivious or ambivalent. I can’t explain it. See for yourself:

Windows
Windows - Hurts my eyes

Mac
Mac OS X - Feels so much better

I’m looking forward to enjoying great readability here in Japan once the iPhone arrives or someone else picks up the torch — hopefully Sony Ericsson.

Podcast Cleaner

Monday, June 20th, 2005

If you download Podcasts and use iTunes, you’ve probably noticed the disorganized mess that your library has become due to the lack of standardization and suitability of Podcast ID3 tags when using iTunes. The problem is even worse when you are trying to navigate your music or Podcasts using the little screen on your iPod. To solve this problem, I’ve come up with an AppleScript that I call Podcast Cleaner. As this was my first AppleScript, and I was shooting for quick results rather than elegance, the code is another disorganized mess to say the least. It does, however, do the job.

The way it works is as follows — I hardcode the name of each Podcast’s Playlist (iPodder Lemon creates a playlists for each Podcast), then I further hardcode the new Genre/Artist/Album for each Podcast I subscribe to. Lastly, I take the existing Song Name, Album, and Artist and concatenate that all together and replace the Song Name with the result. I use an unused field in the ID3 tag to indicate whether a file has been “cleaned” and check it first so I don’t “clean” the same file twice.

Due to all the hardcoding, I have to edit the AppleScript every time I subscribe to a new Podcast or a Podcast changes its name. Other than that, it’s pretty seamless. I simply run Podcast Cleaner each morning before I synchronize my iPod with the latest Podcasts.

See the screenshot below of my nice clean iTunes Library.

Podcastcleaner

Click this link Podcast Cleaner.zip to download my personal version of Podcast Cleaner. To use it, you’ll firstly need a Macintosh; Windows doesn’t support AppleScript. Secondly, edit the file to suit your particular list of Podcasts (should be self explanatory and obviously amateur to anyone that has taken a basic programming class) and place into “/Users/username/Library/Scripts” without the quotes and substituting username with your username. You may need to create the Scripts folder yourself.

I am not sure how iTunes 4.9 will handle Podcasts, but I’m hoping I won’t need Podcast Cleaner anymore.