我在我的应用程序中使用了 jai(Java Advance Imaging)。
当我使用 jai 设置时,我觉得我的图像处理速度更快,但它需要将这些设置安装在用户计算机中。
而且当我使用 jai 的罐子时,它不需要任何安装,但图像处理有点慢。
那么我应该使用什么方法来获得更快和更有效的结果?
有什么方法可以静默安装 jai 设置,在灌输时不需要任何用户交互?
我在我的应用程序中使用了 jai(Java Advance Imaging)。
当我使用 jai 设置时,我觉得我的图像处理速度更快,但它需要将这些设置安装在用户计算机中。
而且当我使用 jai 的罐子时,它不需要任何安装,但图像处理有点慢。
那么我应该使用什么方法来获得更快和更有效的结果?
有什么方法可以静默安装 jai 设置,在灌输时不需要任何用户交互?
我认为您看到的性能差异是由 JAI 在有或没有硬件加速的情况下运行引起的。要获得硬件加速,您必须:
要实施第二个选项,您必须:
jai_codec-1.1.3.jar
jai_core-1.1.3.jar
mlibwrapper_jai.jar
到您的应用程序并将它们添加到类路径中libmlib_jai.so
mlib_jai.dll
mlib_jai_mmx.dll
mlib_jai_util.dll
应用程序的工作文件夹如果您在 Lynux 上运行,您可能需要LD_LIBRARY_PATH
使用工作目录进行扩展,以告诉 java 在哪里可以找到 SO 文件:
#!/bin/bash
ROOT=`dirname $0`
cd $ROOT
# allow JINI to load libraries from working directory
# (e.g. libmlib_jai.so - JAI hardware acceleration library)
export LD_LIBRARY_PATH=$ROOT:$LD_LIBRARY_PATH
例子:
您的应用程序结构可能是:
YourApplication
lib
jai_codec-1.1.3.jar
jai_core-1.1.3.jar
mlibwrapper_jai.jar
...
libmlib_jai.so
mlib_jai.dll
mlib_jai_mmx.dll
mlib_jai_util.dll
...
run.cmd
run.sh
...
因此,JAR 包含在 CLASSPATH 中,而 SO/DLL 位于工作文件夹中(run.cmd/.sh
执行的位置)。