ページ

2008年12月17日水曜日

Pandoraのハードウェア支援 #03

Pandoraネタをもう一つ。皆さんもご存知の通り、Pandoraの心臓部とも言うべきSoCはTIのOMAP35xシリーズ。その中でも最高峰のOMAP3530な訳です。以前にも書きましたが、このシリーズにはいくつか種類があります。それぞれ、何かが足りなかったりする訳ですが最上位版であるOMAP3530は全て含まれているのです。
OMAP3503 ARM Cortex-A8
OMAP3515 ARM Cortex-A8,PowerVR SGX
OMAP3525 ARM Cortex-A8,TMS320C64x+
OMAP3530 ARM Cortex-A8,PowerVR SGX,TMS320C64x+
ざっとこんな感じですね。以前の考察でPowerVR SGXとTMS320C64x+が何らかの形で使用できるかもしれないと書いたのですが、最近になってようやく動きがあったみたいです。まずはTMS320C64x+ですが、ほぼ完全な形でフリーで使える環境がリリースされたみたいです。しかもこの機能を使用したデモがYouTubeで公開されています。PandoraではなくBeagle Board上でのデモですけど。SoC的には同じ物なので何の問題もないと思います。

その内容ですが、このDSPを使用して「720×400 MPEG-4 video at 24 fps」という動画を再生させているデモです。DSPを使用した場合、何とARM側のCPU使用量がたったの10%という驚愕の事実! 作者のコメントを読んでみると、まだまだ不安定な部分があるようですが、上手く行けば720pのH.264も再生できるかもしれないとの事です。素晴らしいですね。こいつを上手く使えるようになると、ARMのCPUパワーを消費せずに済む訳ですから、その分、バッテリーの消費(DSP側は消費しますが)が抑えられる訳ですから、結果的に駆動時間の延長に繋がる訳です。

また動画再生についてもDSPのプログラミングが出来るので、新しいコーデックの追加、例えばOgg Theoraのハードウェア再生支援等が可能になる訳です。ちなみにNVIDIAのSoC、Tegraにはこういった柔軟性はないらしいので、その点で既に魅力なしです。確か使用OSにもLinux入ってなかった気がするし。というか、追加するARMもOMAP3に比べると一昔前のやつだった気がするしなぁ。全然調べていないので間違っている可能性大ですが(苦笑)。後は、DSPの動画再生以外の使い道もあるかもしれませんね。前も書いた気がしますが、一部の3D処理とか、画像フィルターとか。まぁ短期間で出来上がる代物ではないでしょうが……。

作者の方もブログで書いていますが、このDSPのソフトウェア処理って結構デカい恩恵ですよね。特にOSS系のコーデックに関しては。何度か書いていますが、私はオプソ厨ですので、当然コーデック関してはOgg厨な訳です。パソコンで全てを完結させようとすると、Oggシリーズを使用する事は全然問題がない、むしろメリットの方が多い(日本語タグなど)のですが、外への持ち出し、オーディオプレイヤーでの使用となると、途端に厳しくなる訳です。DRMとか他製品とのポータビリティとかも厳しい問題ではあるのですが、何より、対応製品であっても、専用ハードウェア処理をしていないという事実が立ちふさがる訳です。

たいていソフトウェアでの処理な訳で、専用設計されているMP3やAACなんかと比べると、明らかにバッテリーの消費量が違う訳です。このDSPのソフトウェア処理は、その弱点をある程度まで埋めてくれる可能性がある訳です。個人的にこれはかなり大きな進歩です。実際、Neuros Technologyの製品ではOgg Theoraのハードウェア再生に取り組んでいる訳ですしね。どうなっているのかわかりませんけど。

長くなってしまったので、PowerVR SGXの方はシンプルにします。こちらの方も、完全にフリーという訳ではないですが、OpenGL ESを使えるドライバーがリリースされるみたいです。既にBBではリリースされているらしい? よくわかりませんが、ドライバー自体はバイナリでの配布みたいですが、バイナリとLinuxカーネルを繋ぐ部分はOSSでリリースされるらしい。これによって、カーネルのバージョンが上がっていっても、PowerVR SGXのバイナリを使用する事が可能になるみたいです。NVIDIAのLinuxバイナリみたいな扱いなのかな? この辺りはあんまり把握していません。

#YouTube
gst-openmax on the beagleboard v2 - YouTube
http://youtu.be/EH4ZSpehNQw



#外部リンク
gst-openmax demo on the beagleboard « Felipe Contreras
http://felipec.wordpress.com/2008/12/12/gst-openmax-demo-on-the-beagleboard/

Ogg Vorbis and Maemo 5; technical standpoint « Felipe Contreras
http://felipec.wordpress.com/2008/09/24/ogg-vorbis-and-maemo-5-technical-standpoint/

PowerVR kernel drivers available for testing - Beagle Board | Google グループ
http://groups.google.com/group/beagleboard/browse_thread/thread/44a0c0f5354afaab#

0 件のコメント:

コメントを投稿