機能追加
- ULY2: デコード時に RGB32 で出力できるようにした。
バグ修正
- ULRG: フレーム分割の方法が間違っていた。この修正により、フレーム分割数が 1 ではない場合、3.1.0 以前の ULRG とは互換性がありません。
readme ファイル インストーラ(msi 形式) ソース
昨日、某方面に 3.1.0 を流してみたのですが、ものすごい勢いでダメ出しされました(笑)。使う上で致命的なのが ULY2 で RGB 出力ができないため、多くの編集ソフトで読み込めない点(もちろん読み込めるソフトもある。AviUtl とか)。
でもって RGB32 で出力できるようにコードを書いていたら、ULRG の方でフレーム分割の方法がおかしいことに気付きました。直すには互換性を失わせる必要があります。放っておいてもとりあえず使えるのではありますが、このままだと後々困ったことが起きるのではないかという不安があるので、使っている人が少ないうちに修正することにしました。
ようやく使い物になるレベルに到達したかと。
Read the rest of this entry
コードの追加量はたいしたことなかったり。
Read the rest of this entry
すごい速くなったよ!
Read the rest of this entry
開発中に、テスト実行したときに上のようなエラーメッセージが出るようになってしまった。末尾に D と付いていることからも分かるとおりデバッグバージョンの DLL で、デバッグビルドの時だけ出る。リリースビルドの時は出ない。
Read the rest of this entry
アセンブラ化した結果、シングルスレッドでもHDキャプチャできるぐらいの速度になった。インストーラを作るところで問題が発生したのでまだリリースできないけど。
ようやくドッグフードを食ってみようかと思ったのだけど、くすのきTVHD経由でも、岳さんのレポートにあるDxCaptureと同様に、やっぱりキャプチャできない。デバッグビルドにしてログを吐かせてみたら、どうやらコーデックに対して RGB(BI_RGB または BI_BITFIELDS)でしかフォーマットをネゴシエーションしないみたい(しかも RGB はサポートしないと返事しているのにしつこく聞いてくる)。DirectShow のグラフマネージャなら自動で色空間を変換するんじゃないのか(誤解しているだけかもしれないが)…ていうか今頃気づくなよ俺。
というわけでさっさと RGB サポートは追加しなければいけないらしい。つーか最初に YUV422 ではなく RGB を作るべきだったな。
さて、どうだろうか?
Read the rest of this entry
あまりオリジナリティはないのだがな。
Read the rest of this entry
読んでいるのはアセンブラソースなのですが、自分じゃ絶対に思いつきそうもないコードが出てきて楽しいです。その代わり理解できるまでに時間がかかるのですが(コメントあんまり書いてないし)。他人のコードを読んで感動したのって久方ぶりなんじゃなかろうか。
残念なのはアセンブラソースだってことなんですよね。読む人をかなり限定するので感動を分かち合えない(笑)
ふと思って65GBある非圧縮AVIファイル(中身はYUY2で10分ぐらいの動画)を、gzipやbzip2で圧縮してみた。
結果
gzip -1 なら 26 分、19.5GB
gzip -9 なら 86 分、17.5GB
bzip2 -1 なら 415 分、13.3GB
bzip2 -9 なら 489 分、12.8GB
bzip2 遅ぇ!遅いという話は予備知識としては知ってましたが、まさかこれほどとは。その代わり圧縮率は申し分ないですね。
ところで、上記の AVI ファイルを huffyuv で圧縮したら、圧縮がうまく効くソースなので 18GB まで縮みます。しかもリアルタイムエンコード可能。利用目的が違うのはとりあえず横に置いといて gzip の負け(笑)。