Currently, VirtualViewer 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 VirtualViewer, 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 VirtualViewer 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 VirtualViewer 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 VirtualViewer server.

Now, VirtualViewer will be able to display HEIC files using the HEVC codec.

Windows

VirtualViewer 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. VirtualViewer must be able to read and write to this directory.

In VirtualViewer 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 VirtualViewer server.

Now, VirtualViewer will be able to display HEIC files using the HEVC codec.

Docker

If you’re building and running VirtualViewer via Docker, to make sure libheif is installed on your image, make a Dockerfile that extends VirtualViewer 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.