現行の問題として
・ノイズ成分の多い画像
・時間方向への相関がほとんどないシーン
でビットレートが異様に大きくなる ( 最大 44Mbps を記録 ) ということがありました。
どっちにしても、画質の劣化が目立たないので、DCT 利用の有名どころ JPEG を使ってみました。
これだと苦手な画像は劣化するだけですむので。( 私らのだとサイズが大きくなる )
すると瞬間最大ビットレートが 20.5Mbps まで落ちました。
あとは適当にデータを削って量子化テーブルを弄ってやるといい感じになるかな?
多少、要調整な感じはするものの、大筋としては悪くない選択かな。
libjpeg って何気にかなり高機能みたい。
量子化テーブルはもちろん、入出力色空間を指定すると内部で変換してくれたり、
ダウンサンプリングのサンプリング幅を指定できたり、スムージング機能があったり...
扱いも、create → read/write → destroy というおなじみのパターン。
readme が英語で読むのに数時間かかったけどねー・・・
開発中のイントラ処理だと、苦手な画像が来るとサイズが異様に大きくなり、
処理時間もとんでもなくかかるので、libjpeg 導入でぐっと軽くなりました。
とりあえず PentiumM 1.4GHz で普通に再生できるレベルにまでは達した……
さらに高速化して少なくとも PentiumIII 1GHz で再生できるレベルまでは持っていきたい。