info-beamer allows you to rapidly prototype interactive multimedia presentations on Desktop Linux using the Lua programming language. A directory (called a node) consists of resource files (images, videos, fonts or shaders) and a control script called node.lua. Learn more in the documentation.
Want to use your visualizations on the Raspberry Pi? You can do that too: Just run them on the Pi using info-beamer pi.
gl.setup(1024, 768) local font = resource.load_font("silkscreen.ttf") function node.render() font:write(120, 320, "Hello World", 100, 1,1,1,1) end
Why use info-beamer?
Rapid DevelopmentEdit the code for your node, change images or exchange font files. info-beamer will notice your changes and reload changed files. See the effects of your changes immediately.
- info-beamer uses the linux inotify API to detect changed files or directories.
- You never have to restart info-beamer to see changes you made. info-beamer can reload updated files for you.
Powered by Luainfo-beamer is controlled by your Lua code. A very simple API is all you need to create advanced presentations. Lua enables info-beamer to be truly rapid:
- Update the running code in realtime. There is no need to restart info-beamer.
- Lua is a simple language. If you have basic programming experience, you'll learn Lua in a few hours.
Fileformat SupportLoad images and truetype (TTF) fonts. Video playback is supported using the powerful libav library.
- Image loading is provided by DevIL.
- Video playback is powered by libav. It should play most video files you might have.
- Use Shaders in the GLSL language.
- Full Truetype font support using freetype.
Performanceinfo-beamer uses OpenGL and will use hardware acceleration. Full shader support using GLSL.
- Load vertex and fragment shaders.
- Control your shaders with dynamic uniform values.
- Feed your shaders with textures from images, videos, child nodes or even VNC connections.
Nested ContentEach directory forms a node. A node is the unit of presentation for info-beamer. If a directory contains subdirectories, these create child nodes. Child nodes can be rendered by parent nodes.
- Allows you to create a toplevel node that switches between child nodes.
- Nodes can be developed independently and later composed into one presentation.
- Include remote content using the VNC client.
Realtime controlSend OSC (open sound control) packets to info-beamer. Update the state of your presentation in realtime. Or use TCP to connect to info-beamer to see the debugging output of your running code.
- Simple UDP protocol and OSC protocol support.
- Let info-beamer display a directory shared using Dropbox. Since info-beamer will detect any changes to the directory, this will allow you to update your presentation from remote.
Opensourceinfo-beamer is opensource software release under the BSD 2-clause license. Use and modify the software as you like.
Ready?Get it on GitHub
But wait. That's not all!
info-beamer for the Raspberry Pi
info-beamer also runs on the Raspberry Pi micro computer. Easily deploy your visualizations on those tiny machines. Setting up a Digital Signage display won't get easier. No need to buy overpriced special hardware!Learn more
Using the new fully managed service you can now control your info-beamer based visualizations easier than ever. Install prepared visualizations with the click of a button on your devices. Upload assets like images and videos and have them distributed instantly. Change settings using a web based interface.Running info-beamer code won't get easier than that! Learn more