かなり小さい(約1200×1200)JPEGをデコード(ビットマップに解凍)する必要があります。問題は私がそれをすばやく行う必要があることです。 libjpegを試してみたところ、かなり遅いです。私もBitmapFactory.decodeByteArrayを試してみました - 少し高速ですが、それでも十分速くはありません。別のオプションは何ですか? ネイティブ(C++)ライブラリが推奨されます。JPEG画像を短時間でデコードする方法
P.S.私のJPEGはメモリに直接作成されます。
P.P.S.私はlibjpegがどのようにBitmapFactory.decodeByteArrayより遅いのだろうかと思います。
1200x1200 "かわいい小さな" のとき以来?ほとんどの画面は320x240程度しかありません。ヘック、私のデスクトップは1280x1024です。 (1)より小さいJPEGを作成する(2)一度復号してキャッシュするだけです。 –
良い点、実際には:私はDSLRで作業を始めてからそれが小さいと考えています。私は錠剤を標的にしています。さて、あなたの提案については、1)それは(スケールファクター2) - パフォーマンスはまだ十分ではない、解像度のさらなる削減は受け入れられないと試してみました。 2)どうやら、私はリアルタイムで(多かれ少なかれ)異なるJPEGを表示する必要があります。 –
速度差に関しては、アンドロイドコードはおそらく、CPUを使用するCコードよりも速くJPGをデコードするために、ARM CPU上でいくつかの命令セットを使用するでしょう。 – stealthcopter