« libtheora 1.0 alpha6 | メイン | 大まかなデザイン »

2006年06月10日

動画再生エンジン開発日誌:: SMPEG

    

前から適当なMPEGデコーダーがないかなぁと探していたわけだが、SMPEGと言うものを知った。
SDLでMPEG Iを再生するためのライブラリだとか。
標準でSDLに組み込まれているわけじゃなくて、別に配布されていてライセンスはLGPL。
ここからソースを取ってきて、おもむろにビルド。

負荷を見るとVLCなどと大体同じぐらいのようなので、今の吉里吉里2のMPEG I再生よりもかなり軽い。
理由は単純明快、YV12で直接オーバーレイレイヤーに描いているから。
吉里吉里2でVMR9をサポートしたので、OSについているMPEG IデコーダーもYV12で直接描けても良さそうなものだけど、なぜかRGB32に変換して描くので遅い。
まあ、それはともかくソースコードを見てみた。

当たり前のようにSDLに依存している。
後、何だが見覚えのあるようなコード・・・と思ったら、The MPEG Libraryだ。
どうやら、The MPEG Libraryを改造して作った様子。
まあ、1から作るのは辛いし、GPLじゃないのと言ったら限られてくるのだろう。
自分もThe MPEG Libraryぐらいしかないかなぁと考えていたし。

MPEG IデコーダーはSMPEGを改造して作るかな。
SDLに依存している部分と入出力部分はかなり手を入れることになると思うけど。
ライセンスはSMPEGのLGPLを引きずって、LGPLになるけど、デコーダーはDLLとして分離しやすいから大丈夫だろう。



投稿者 Takenori : 2006年06月10日 23:15




comments powered by Disqus
Total : Today : Yesterday : なかのひと