Giter Site home page Giter Site logo

luaav / luaav Goto Github PK

View Code? Open in Web Editor NEW
123.0 123.0 11.0 71.33 MB

Audiovisual scripting with Lua

Home Page: http://lua-av.mat.ucsb.edu/

License: Other

Shell 0.01% Lua 2.51% C++ 75.06% Objective-C 0.84% C 15.93% SourcePawn 0.04% CMake 0.13% Pawn 0.14% Makefile 0.06% PHP 1.39% Objective-C++ 0.29% Python 0.02% CSS 0.09% JavaScript 0.22% HTML 3.07% Roff 0.02% Batchfile 0.01% Max 0.01% Csound Document 0.01% Pure Data 0.17%

luaav's Introduction

LuaAV: Audiovisual Scripting with Lua

See the copyright information in the file named COPYRIGHT.

LuaAV is an integrated programming environment based upon extensions to the Lua programming language to enable the tight real-time integration of computation, time, sound and space. LuaAV is first and foremost an audiovisual composition environment but can be used for general Lua scripting and prototyping as well.

Principal developers: Wesley Smith and Graham Wakefield.

LuaAV Website: http://lua-av.mat.ucsb.edu

LuaAV Concept

LuaAV is a real-time audiovisual scripting environment based on the Lua scripting language and a collection of libraries for sound, graphics, and media protocols. The goal of LuaAV is to serve as a computational platform for creative exploration that is both fluid and generative. As with the Lua language, the design strategies for LuaAV favor mechanisms over implementation in order to keep its structure as clear, compact, dynamic, and reconfigurable as possible. At any given moment, it should be possible to enact any creative thought about sound, image, space, and time and experiment with a range of possible approaches without having to divert energy away from its pursuit due to the brittleness of the computational system. Computation must become plastic. Software must become softer.

LuaAV is a generative kernel of computation, capable of spawning new structures and procedures dynamically. In essence, it is meta-software for an audiovisual composition capable of generating a vast range of possible software either at the hand of a user/programmer or even algorithmically through abstract machines. As much of LuaAV as is reasonable is generated dynamically through the built-in compiler, parser, and code generating mechanisms such that the software grows and adapts as features are employed.

LuaAV is divided between a cross-platform library called libluaav and collection platform-specific classes and functions that make up the LuaAV application. libluaav contains the core timing, scheduling, and multi-threaded messaging functionality and is designed in such a way that it can be embedded in a wide variety of contexts much like Lua itself. Possible contexts might include VST plugins, web-browser plug-ins, streaming radio stations, or other host applications such as 3D modeling programs. In such contexts, platform-specific functionality such as windowing and menus are irrelevant, which is why they are in the LuaAV application instead of libluaav.

luaav's People

Contributors

charlieroberts avatar charlieroberts-rit avatar grrrwaaa avatar weshoke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

luaav's Issues

Linux buildsystem broken on Ubuntu 11.10?

on a fresh install of ubuntu 10.10 with all the updates,
install_dependenices.sh went ok
but lua build_linux_lua ../

failed at building video module with the:

ERROR: In file included from /usr/include/glib-2.0/glib/galloca.h:34:0,
from /usr/include/glib-2.0/glib.h:32,
from /usr/include/gstreamer-0.10/gst/gst.h:27,
from /home/nesa/LuaAV/LuaAV/buildtool/../modules/video/src/video/GstUtils.h:4,
from /home/nesa/LuaAV/LuaAV/buildtool/../modules/video/src/video/GstVideoImpl.h:7,
from /home/nesa/LuaAV/LuaAV/buildtool/../modules/video/src/video/VideoImpl.cpp:12:
/usr/include/glib-2.0/glib/gtypes.h:34:24: fatal error: glibconfig.h: No such file or directory
compilation terminated.

Script Ordering is Confusing

Script ordering in the LuaAV console is confusing and inconsistent. When a script is loaded, it automatically goes to the top, which is not desirable.

Linux build stops after calling svn command - should be updated for git?

Hiho,

After checking out the source from github and building (build instructions with the source, e.g in an INSTALL file, would also be nice), I'm getting an error when the build script tries to svn export folders; this should probably be adapted since the source moved to git?

svn export --force /home/nescivi/versioncontrol/git/github/LuaAV/LuaAV/buildtool/../LuaAVApp/scripts /home/nescivi/versioncontrol/git/github/LuaAV/LuaAV/buildtool/../sysbuild/Debug/resources

ERROR: svn: '/home/nescivi/versioncontrol/git/github/LuaAV/LuaAV/LuaAVApp/scripts' is not a working copy

LuaAV looks in different path for files than where they are

Hi,

after building, I start LuaAV from the Debug build folder.
LuaAV then looks for various files in
Debug/resources/
whereas they are in
Debug/resources/scripts

I manage to solve it temporarily, but this should be fixed.

sincerely,
Marije

Broken Scripts

  • simple.gui.lua
  • scope.display.lua
  • setphase.lua
  • processing.example.mousepressed.lua (mousePressed)

Midi help file outdated

midi help file says functions to get the in/out ports are:

inputs()
outputs()

printing the actual midi module says:

inports()
outports()

which works.

This can be a little bit misleading because there is no midi example at all and one relies on the documentation only.

Misc. Release Issues

-) Box2d helpfile not working.
-) Module opencv not found
-) The lines drawn by the processing library are blurry. Adding 0.5 to the x and y will make the line 1 pix and crisp.

Managed to build on Ubuntu 14.04...

...with these changes:

Added missing unistd.h include to /LuaAV/LuaAVApp/linux/luaav_app_qt.cpp

Added missing dependency to libX11 to /LuaAV/buildtool/projects/LuaAV/LuaAV.lua
line 190:

+                               Dependency{
+                                       name = "X11",
+                                       path = "/usr/lib",
+                                       type = "shared",
+                               },

Added missing dependency to libdl to /LuaAV/buildtool/projects/LuaAV/LuaAV.lua line 504:

+                               Dependency{
+                                       name = "dl",
+                                       path = "/usr/lib",
+                                       type = "shared",
+                               },

Changed header path on /LuaAV/modules/font/src/lua_font.h

-       #include <freetype/freetype.h>
-       #include <freetype/ftoutln.h>
-       #include <freetype/ftglyph.h>
+       #include <freetype2/freetype.h>
+       #include <freetype2/ftoutln.h>
+       #include <freetype2/ftglyph.h>

Don't know if it runs, though, still searching for the app binary :)

Pause Button

It would be nice if there was a pause button for each script. This would stop all schedulers in the script.

Newest OSX Binary - OpenCV module missing?

Trying out the OpenCV example the OpenCV module seems to be missing?

error ...ns/LuaAV/extra/samples/opencv/opencv.filter.test.lua:12: module 'opencv' not found:
no field package.preload['opencv']
no file '/Applications/LuaAV/extra/samples/opencv/opencv/init.lua'
no file '/Applications/LuaAV/extra/samples/opencv/opencv.lua'
no file '/Applications/LuaAV/LuaAV.app/Contents/Resources/opencv/init.lua'
no file '/Applications/LuaAV/LuaAV.app/Contents/Resources/opencv.lua'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.