The 3D rendering is performed, via the GtkGLArea widget, using modern OpenGL language [3], and the Epoxy library is used to ensure the OpenGL function pointer management. Also the FFmpeg [4] library is used to encode video from off-screen OpenGL rendering.