HEIC File Support
Currently, PrizmDoc® for Java does not support HEIC on servers running macOS.
NOTICE: If this feature is enabled, you or your organization will be responsible for obtaining the required third-party patent licenses for distribution of your application with the enabled HEIF/HEIC feature. Accusoft is unable to obtain a transferable license to give to customers. Customers must obtain it directly. See the “VIDEO TECHNOLOGIES DISTRIBUTION” section of the Software License Agreement for more information.
Preparation
In order to enable this feature you will need to prepare your system.
Linux
RasterMaster, and by extension PrizmDoc® for Java, uses the open-source libheif library to perform parsing and image decoding. This package will need to be installed on your server. On Debian-based systems, such as Ubuntu, you can install the libheif-dev
package via apt
:
sudo apt install libheif-dev
On RHEL 9, you will need to add the following package repositories and then install libheif using yum:
dnf -y install --nogpgcheck https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm
dnf -y install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm
yum -y install libheif
On RHEL 8, you will need to add the following package repositories and then install libheif and one of its dependencies using yum:
dnf -y install --nogpgcheck https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm
dnf -y install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm
yum -y --nogpgcheck --repofrompath=centos,http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/ install numactl-libs
yum -y install libheif
On RHEL 7, you will need to add the following package repositories with rpm and then install libheif using yum:
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm
yum -y install libheif
In PrizmDoc® for Java you will need to enable HEIC support in RasterMaster. You can do this by setting the enableHeic
web.xml parameter to true
, and specifying the path to a folder to which PrizmDoc® for Java can read and write files in the heicLibraryPath
parameter:
<init-param>
<param-name>enableHeic</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>heicLibraryPath</param-name>
<param-value>/your/filepath/here</param-value>
</init-param>
The above values must be set prior to your server startup, as the server’s initialization is where we use these values. If it’s already started, please restart your PrizmDoc® for Java server.
Now, PrizmDoc® for Java will be able to display HEIC files using the HEVC codec.
Windows
PrizmDoc® for Java uses the open-source libheif library to perform parsing and image decoding. For Windows systems, you can download the needed pre-compiled binaries from the Accusoft website here.
Once the zip has been downloaded, extract the files to a folder on your system. PrizmDoc® for Java must be able to read and write to this directory.
In PrizmDoc® for Java you will need to enable HEIC support in RasterMaster. You can do this by setting the enableHeic
web.xml parameter to true
, and specifying the path to the folder to which you previously extracted files in the heicLibraryPath
parameter:
<init-param>
<param-name>enableHeic</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>heicLibraryPath</param-name>
<param-value>/your/filepath/here</param-value>
</init-param>
The above values must be set prior to your server startup, as the server’s initialization is where we use these values. If it’s already started, please restart your PrizmDoc® for Java server.
Now, PrizmDoc® for Java will be able to display HEIC files using the HEVC codec.
Docker
If you’re building and running PrizmDoc® for Java via Docker, to make sure libheif is installed on your image, make a Dockerfile that extends PrizmDoc® for Java and install the HEIC library:
FROM snowbound/virtualviewer:latest
RUN apt-get update && \
apt-get install -y libheif-dev
This will make sure that libheif-dev is installed, which is the library RasterMaster needs to open HEIC files.
Have questions, corrections, or concerns about this topic? Please let us know!