libavg is a high-level development platform for media-centric applications.¶

Touch UIs

libavg is great for development of modern touch UIs. It supports all major touch driver models, including Windows touch, Linux XInput, and TUIO. Just as importantly, it has a full-featured event handling system that includes support for direct manipulation and gesture recognition.

libavg allows programmers, media artists and designers to quickly develop media applications. It uses python as scripting language, is written in high-speed C++ and uses modern OpenGL for display output. The project has been under constant development since its inception in 2003.

libavg supports the full variety of display elements - images, text, videos, camera output, vector graphics - that modern graphics-intensive applications need. It is fast: the layout engine supports thousands of display elements on the screen at once as well as hardware-accelerated video output. Text using markup, videos with an alpha channel, rendering to offscreen buffers, masking, as well as GPU shader effects such as blur and chromakey are all supported. Plugins written in C++ can expand the engine and have access to all libavg internals. The Tutorial explains all these concepts using a sample application.