« savedata フォルダが必要な時だけ作られるように | メイン | 吉里吉里Z に欠けているドキュメントを GitHub に »

2016年04月03日

吉里吉里Z 開発:: krmovie を本体に統合

    

krmovie.dll を本体へ統合した。
64bit 化以降は krmovie.dll が不要になる(本体に入っている)。
krmovie.dll が分離していたのは C++Builder でなぜかうまくビルドできなかったかららしい(Deeさんが言ってた記憶)。
つまりは歴史的経緯によるもので、本体にくっついていても何ら問題ない。
実際問題として、krmovie.dll と本体は一体的に使う前提で、差し替えたりすることは出来ず、VideoOverlay クラスで動画を再生するのなら必須。
また、インターフェイスの関係上 krmovie.dll と本体のバージョンが一致していなければ、実行時エラーになる。
krmovie の機能追加等を色々とやってきたけど、分離していたために両方に修正入れたりして色々と面倒が多かったので、出来れば一緒にしてしまいたいと常々思っていた。
今後 mixer モードで再生した時にそのムービーテクスチャを DrawDevice に渡して描画するなどの機能を実現するに当たり、本体にあった方が都合が良いからと言うのもある。

と言うことで、今後は krmovie.dll は配布物に添付されていないけど、本体に機能は入っているから気にしなくても良い。

本体に統合されると色々な Codec をサポートすると肥大化していくため、他の Codec をサポートできるように動画フォーマットプラグインにも対応した。
このプラグイン化で theora が独立したプラグインとなった。
その他の形式は OS に入っている Codec で再生するためバイナリサイズの増加は小さいが、theora は独立した Codec のため増分が大きいのと、そこを境界にするとわかりやすいと言うことから分離した。

動画もプラグインに対応したことで、前回書いた画像も合わせて主要形式はプラグインによってフォーマットを拡張できることになった。
今後は、音声・画像・動画をプラグインによってサポートするフォーマットを増やすことが出来る。


投稿者 Takenori : 2016年04月03日 22:49




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