You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Summary

A special treatment for 3d models in glb/gltf format is implemented in the Binaries Service. 

If URLs to files of this format are submitted to the service then these files will not only be downloaded and saved. A preview image of the model contained in the file is generated and exported to the IIIF Image server. Therefore the same reference-id used to download the model can be used to retrieve a preview image. 

This preview generation happens on the cluster nodes. A Chrome browser instance is started on a virtual framebuffer device. The model is loaded by the browser and then a screenshot of the browser is taken. 

Obtain Sources

The software can be obtained by executing

git clone https://dev.fiz-karlsruhe.de/stash/scm/ddb/3d-screenshot-generator.git

Installation

In order for the scripts to work the following things need to be done on the cluster nodes: 


sudo yum install npm xorg-x11-server-Xvfb atk java-atk-wrapper at-spi2-atk gtk3 libXt ImageMagick

# Register and start Xvfb service 
sudo echo "
[Unit]
Description=Xvfb headless plotting
After=network.target

[Service]
User=root
ExecStart=/usr/bin/Xvfb :0 -screen 0 1280x1024x24

[Install]
WantedBy=multi-user.target
Alias=Xvfb.service
Alias=xvfbd.service
" > /etc/systemd/system/xvfb.service

sudo systemctl daemon-reload
sudo systemctl enable xvfb
sudo systemctl start xvfb

Configuration and Problem solving

Please always refer to the projects Readme file (especially for CentOS 7 systems). The configuration in appconfig.json needs to be adapted.

Regular problems

  • If some models works and other models don't work, always first check if the timeout setting in appconfig.json is high enough.
  • After that don't work, it could be that the puppeteer (Chromium) version is to old for newer generted model version.




  • No labels