UpDate:--/--/--MP3のライセンスについては、ことゲームに関しては1タイトル当りUS$2500.00払えやこらって事のようです。販売本数が5000本以内ならチャラとおっしゃってます。大半のエロゲーはきっと大丈夫ですね(笑)同人でもよほどのことがない限り大丈夫でしょう。いえ、いつ何時態度が豹変するか分からないのでMP3は使わない方向でプログラムを書くのが良い気がします。大体広まってから金をせしめるという構図がGIFっぽくてなんだか嫌です。このライセンス規定では外部のCodecを利用しても引っかかるようで、かなりいやらしいです。そんなわけで反骨精神旺盛な(天邪鬼とも言う)僕たちは代替フォーマットを模索するわけです。ライセンスの絡みを考えるとOggVorbisに行き着くことでしょう。OggVorbisとはなんぞやということは、こちらやこちら、こちらなんかを参照。そもそもOggというマルチメディアフォーマットの一部が音声フォーマットVorbisということらしいです。2002/2現在RC3までリリースされているので完成まで秒読み段階です。周辺ソフトもぽつぽつ出始めているのでそろそろ使い始めても良いころでしょう。SDKやらエンコーダ、プラグインやらはこちら。手始めにWin32用のSDKとWinAmp用のプラグインを拾っておけばOKでしょう。liboggという形でライブラリがきっちり整備されているので楽勝です。賢くない私はブラックボックスとして使ってます。ちなみにライブラリをコンパイルするとキャストの手抜きが散見されてちょっとあれです。hoge.rawと使ってあげましょう。ファイルに出力されてもあまり面白くないので、ちゃんと音が出るサンプル。配列が静的だったりして大変手抜きですが、そこはそれ。サンプルを見た感じでは、ヘッダーを読み込んだ後、ひたすら続くデータをPCMに変換するだけのようです。PCM化するときにはサンプリングレート、ステレオorモノラル、に従ったデータ列に変換されます。サンプルビット数は16bitに固定されているっぽい?少し使った感じでは、MP3より圧縮率が高め、エンコード&デコードが遅め、音質は同等といった所です。音質に関しては専門家さんに言わせると色々あるようですが実用上問題無しです。次回はもうちょっと真面目にドライバ化予定。UpDate:--/--/--最近ウインドウ画面を動画としてキャプチャをする機会が多いんですよ。いくつかのソフトでそういったニーズに答えてくれるものがあるんですが、ウインドウ画面のリフレッシュレートとキャプチャのレートが合わないとか、ウインドウサイズが大きいとキャプチャが間に合わないとか、いまいち使い勝手が良くありません。そんなわけで、ひたすら画面をBitmapに落として作った連番の画像ファイルをPremiereとかで動画にしてます。一枚約1Mbyte位、これを1000フレームキャプチャするとあっという間に1Gbyteになってしまいます。こりゃかなわんということで、適当な圧縮フォーマットを見繕うことにしました。可逆圧縮でフルカラーが使えてメジャーな奴はTIFFとPNG位のものです。TIFFはローカルルールが多いので今回はPNGを使うことに決定。PNGのセーバーを一から書くほど器用ではないので、ライブラリを拾ってきます。libpngとzlibがあればOK。あとは今まで使っていたBMPセーバーのルーチンをちょいちょいといじって出来上がり。適当ですがこちらがソース。PNGルーチンのネタ元はこちら。して連番のPNGファイルを作ったら、Premiereが対応してませんでしたとさ、むぅ。仕方がないのでAfterEffectを使うことにしました、めでたしめでたし。ついでにDirectX8の画面もキャプチャーしたいなということで、libpngをソースに放り込んだら怒られました。なにやらD3DXライブラリ内のPNGルーチンもlibpngを使っていて、衝突しあっている模様。無いとか中途半端なことをしてくれてます。libpngのソースに手を加えて再コンパイルすればいいんですが、めんどくさいので別の手段を使いましょう。いう便利な関数が増えました。