itagenten/acab-streetlife
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
This is the software behind the ACAB wall. You can get our software on github: https://github.com/muccc/acab-streetlife Animations are created as python scripts which run on the computer controlling the installation. In the multi wall condifuration, ACAB has two walls with 8x6 pixels each. They are addressed using the wall number [0,1] and their x and y coordinates. In the single wall configuration, ACAB has a single wall with 16x8 pixels. The setup looks like this: (x,y) (0,0), (1,0) ... (15,0), (16,0) (0,1), (1,1) ... (15,1), (16,1) . . . . . . . . . . . . (0,4), (1,4) ... (15,4), (16,4) (0,5), (1,5) ... (15,5), (16,5) Use the acabsl library from our git repository to create your own scripts. It provides two methods: acabsl.send(x,y,r,g,b,time,w): Send a new color to pixel (<x>,<y>) on wall no <w>. If you ommit 'w', the server will choose a wall for you, when the script gets executed. 'r','g','b' are in [0-255] time is in seconds: 'time'=0 => Instant update 'time'>0 => Fade to the new color in <time> seconds acabsl.update(w): Use this command if you want to use double buffering. Use it once before you do your first acabsl.send() call. Then use it everytime you want new commands to be executed. Currently this command affects all walls at the same time. It also provides the following constants: acabsl.WALLSIZEX: Size of a wall in X direction acabsl.WALLSIZEY: Size of a wall in X direction acabsl.NOOFWALLS: Number of walls available Example: import acabsl #enable double buffering acabsl.update() # let every pixel of the wall chosen by the server fade to red for x in range(acabsl.WALLSIZEX): for y in range(range.WALLSIZEY): acabsl.send(x,y,255,0,0,500) ''' # let every pixel of every wall fade to red for wall in range(acabsl.NOOFWALLS): for x in range(acabsl.WALLSIZEX): for y in range(range.WALLSIZEY): acabsl.send(x,y,255,0,0,500,wall) ''' #execute all fades at once acabsl.update() Have a look at the scripts in the animations directory for examples. We also have audio examples ;) Execute the startsimulation file to run a simulation of the walls on your computer: ./startsimulation It will open two windows with simulated acab walls. Then execute the script you wrote to display it on the simulator. Send new scripts via a pull request to our github account: https://github.com/muccc/acab-streetlife and we will put them into rotation on the walls. You can also directly stream your animation to the wall if you supply your script with the following arguments: '--host=192.168.20.2 --port=6002' Have fun :)
Releases
No releases published
Languages
- Python 97.9%
- JavaScript 1.8%
- Shell 0.3%