2010-08-04

OpenCodecs, WebM, and Windows Mobile

Over a month ago I have released the first version of OpenCodecs. OpenCodecs is the new name of the OggCodecs DirectShow package after the addition of WebM codecs.

OpenCodecs was the first release to have an unified 32/64 bit installer package, the 64 bit components are installed only if the operating system is 64 bit.

Today I have released a new OpenCodecs version, one for Windows Mobile 5.0 - 6.5. This is only a decoder package and WebM/VP8 decoders are not present.

Seeking is also disabled for Ogg Vorbis, Theora and Speex, due to the way the seeking table is build (at beginning, reading the whole media file), which turns to be very slow on Windows Mobile.

On my Palm Treo Pro (which is actually a rebranded HTC) the default video renderer "HTC DX Renderer" does not work with Theora, I had to change it with the Microsoft "Video Renderer" to have Theora working.

This was done by changing the filter merit in Registry. I have used Total Commander for this task (it has a Registry editor) and View Graph to test which filters actually work (this is the Windows Mobile version of GraphEdit)

I have made a recording showing "Big Buck Bunny" running on my Palm Treo Pro:



This version doesn't have any arm assembly optimizations for Vorbis, Theora, and for yuv2rgb conversion. My test video had a resolution of 320x180 (Palm Treo Pro has a 320x320 display) and I do not know how well it works with higher resolution video files.

Edit: In case you were thinking at changing the video renderer's filter merit, here is what you need to look after (beware that you might experience sudden system reboots):

Palm Teo Pro:
[HKEY_CLASSES_ROOT\CLSID\{70e102b0-5556-11ce-97c0-00aa0055595a}]
@="Video Renderer"
"Merit"=dword:00800000

[HKEY_CLASSES_ROOT\CLSID\{016229F3-158F-4a0a-8656-85F894F1405D}]
@="HTC DX Renderer"
"Merit"=dword:00800100

HTC Touch Pro 2:
[HKEY_CLASSES_ROOT\CLSID\{70e102b0-5556-11ce-97c0-00aa0055595a}]
@="Video Renderer"
"Merit"=dword:00800000

[HKEY_CLASSES_ROOT\CLSID\{1ADAFBDB-2E09-447f-94C4-39B195860BC6}]
@="HTC DDR(VO)"
"Merit"=dword:00800005

You will have to swap the merits for those two filters. Normally Theora should also work with HTC Video Rendrers, but at the moment I do not know how to make them work.

I'm planning (if I get my US visitor visa) to go to Open Video Alliance, and FOMS in October.

I have put a Donate button (orange button on the right side) in the hope of financing the trip to New York for my wife.

Thank you for your support and enjoy this OpenCodecs release.