JAIおよびImageIOライブラリで64ビットウィンドウを検索しましたが、これらのバージョンは見つかりませんでした。6〜7年前のJavaバグ追跡システムでの最後の64ビット勝利バージョン要求。
jaiの開発者はwin64のバージョンをリリースしないと思います。:(
私の質問は、64ビットウィンドウ用のソースからjaiとimageioを構築できますか?それは可能ですか?どのように?
どうもありがとう...
JAIおよびImageIOライブラリで64ビットウィンドウを検索しましたが、これらのバージョンは見つかりませんでした。6〜7年前のJavaバグ追跡システムでの最後の64ビット勝利バージョン要求。
jaiの開発者はwin64のバージョンをリリースしないと思います。:(
私の質問は、64ビットウィンドウ用のソースからjaiとimageioを構築できますか?それは可能ですか?どのように?
どうもありがとう...
JAIとJAIImageI / Oには、ソース言語の観点から、JavaとC /C++の2つの部分があります。javaの部分は(無料のビールとして)無料で、java.netからダウンロードしてコンパイルできますが、これはアーキテクチャ(x86、x64)に関係なくjavaソースです。
C / C ++ソースコードはSUNによってリリースされていないため、Win32およびその他のプラットフォーム用にコンパイルされた.dllのみを取得します。このソースコードはいくつかの理由でリリースされていません。1つは、SUNがサードパーティのソースを使用しており、(自由に)再配布するのではなく、使用する権利があることです。
JAI Image I / O JPEG 12ビットコーデックに存在するいくつかのバグについて3年前にSUNに連絡し、いくつかのオプションを提供します。これらのバグが緊急の場合は、NDA(秘密保持契約)に署名した場合にSUNがcodecLibのソースコードを提供することで、バグを解決するためのC /C++プログラマーを提供できます。もう1つのオプションは、SUNが問題を解決するのを待つことでした。バグに割り当てられたSUNエンジニアを支援し、1週間以内に解決しました。
JAIと関連プロジェクト(イメージI / O)がアクティブでなくなったように見えるため、状況は異なっているように見えます。つまり、誰もそれらに取り組んでいません(新しいリリース、バグ修正)。
したがって、新しいバージョンが必要な場合、最終的にJAIで多くの問題が発生します。
32ビットJREを使用して、Windows7x64などの64ビットOSでJAIを使用するプログラムを実行できます。
残念ながら、64ビットJREではJAIまたはイメージI / Oを使用できません。これは、純粋なJavaで使用可能な機能しか使用できず、イメージI/Oでほとんどのコーデックが失われるためです。
もう1つの質問は、JAIから本当に必要なものです。JAIは、100%純粋なJava実装(ソフトウェアバージョン)を使用して使用できますが、速度は遅くなりますが、x64の問題は解決されます。JAI Image I / Oには、100%純粋なJavaで実装できる機能もいくつかありますが、コーデックなどのほとんどの機能には、codedLibなどのネイティブdllが必要です。
Windows7上のネイティブMediaLibWindowsDLLを使用して32ビットJavaの生産性をチェックしようとしていました。これは、64ビットの純粋なJavaコードだけの場合よりもわずかに遅い(5〜10%)ことを示しています。
かなり大きな1ビット白黒画像(サイズ9000 x 2500ピクセル)のメディアンフィルタリングを使用してJAIをテストしました。メディアンフィルター7x7を使用すると、32ビットのネイティブWindowsライブラリ(DLL)で処理するのに17秒かかり、DLLを含まない純粋な64ビットJavaで15秒かかります。テストは3〜4回繰り返され、非常に類似したタイミング結果が得られました。
32ビットJava+ネイティブMediaLibのデバッグ出力:
Raster path is "F:\Projects\Fadeev\listv.bmp"
Median size value set to 7
Output file will be saved to input directory
Data color set to default value java.awt.Color[r=255,g=0,b=0] (RED)
Color distance set to default value 20,00
New color set to default value java.awt.Color[r=255,g=0,b=0] (RED)
Image ( 9000 x 2461 ) read in 00:00:00.038
Image color quantized at 00:00:01.400
**Image filtered by () at 00:00:17.531** (MediaLib works now and here!!!)
Image stored at 00:00:00.356 (storing in PNG!)
Total time is 00:00:19.325
64ビットの純粋なJavaのデバッグ出力:
Raster path is "F:\Projects\Fadeev\listv.bmp"
Median size value set to 7
Output file will be saved to input directory
Data color set to default value java.awt.Color[r=255,g=0,b=0] (RED)
Color distance set to default value 20,00
New color set to default value java.awt.Color[r=255,g=0,b=0] (RED)
Image ( 9000 x 2461 ) read in 00:00:00.038
Image color quantized at 00:00:00.910
Error: Could not load mediaLib accelerator wrapper classes. Continuing in pure Java mode.
Occurs in: com.sun.media.jai.mlib.MediaLibAccessor com.sun.media.jai.mlib.MediaLibLoadException
**Image filtered by () at 00:00:13.802**
Image stored at 00:00:00.414
Total time is 00:00:15.164
申し訳ありませんが、jai / imageioコードリポジトリには、win64のコードはありません。
http://java.net/projects/jai-core/sources/svn/show/trunk/src/share/mediaLib
http://java.net/projects/jai-imageio-core/sources/svn/show/trunk/src/share/jclib4jai
しかし、jai/imageioバグ追跡システムには問題があります。
http://java.net/jira/browse/JAI_IMAGEIO_CORE-62
そのために残念。