Volver a la cima
LPM 2022 Rome

LPM 2022 Rome

  • 299927 Views
  • Gustos

09 // 11 junio 2022

Nuovo Cinema Aquila, Roma, Italy

  • 09 // 13 junio 2022 | Classroom 2, Classroom 1, Nuovo Cinema Aquila, Roma, Italy
  • 09 // 12 junio 2022 | Foyer, Nuovo Cinema Aquila, Roma, Italy
  • 09 // 12 junio 2022 | Room 1 Lectures, Nuovo Cinema Aquila, Roma, Italy
  • 09 // 12 junio 2022 | Room 1, Nuovo Cinema Aquila, Roma, Italy
  • 09 // 12 junio 2022 | Room 2, Nuovo Cinema Aquila, Roma, Italy

Festival

ommatidia

  • 1566 Views
  • Gustos
ommatidia
[Texto disponible solo en inglés] The visualization code takes an image from a single lens webcam, and processes it to emulate the ommatidia. Arranged in a hexagonal grid, which is an optimal packing reached by evolution, each cell has a wide angle, with overlapping edges repeating parts of the image and enhancing the drama of moving objects. The colour of the cells are modified according to the volume levels of three frequency bands of audio (bass, mids, treble). Over time the size of the cells are modulated, zooming disconcertingly.

Duración (minutos)

30

Qué se necesita

our technology

Provided by artists:

laptop
Edirol UA-25 USB soundcard
Creative Live! Cam Sync HD USB webcam
Novation BassStation Rack synthesizer
Nozoïd MMO-3 synthesizer
Behringer 8-channel mixer
necessary cables and power supplies

tech rider

Provided by venue:

power socket (240V 50Hz AC)
HDMI connection to projector
projector HDMI 5000 lumens
balanced 1/4" JACK or XLR connections to PA
complete PA sound system 2.1

Online streaming also possible via OBS/YouTube, Zoom or similar.

Lo que traen los artistas

The webcam processing is written in the C programming language. It uses the GLFW library to create a window on the desktop within which the graphics can be displayed. OpenGL function pointers are retrieved using the GLEW library. The glm library is used for matrix transformations. The libv4l2 library is used to access the USB webcam and transfer image data from it. The libjpeg library is used to decode the image data from the webcam into pixel data for upload as an OpenGL texture. The JACK audio connection kit library is used to input audio from the soundcard, with parts of clive (which are originally based on algorithms from of Pure-data) used to filter the sound into frequency bands and calculate each band's volume level.

The visual algorithm is implemented in OpenGL shading language (GLSL). There are two main parts to the algorithm: first, a coordinate transformation to give the zoomed hexagonal cells appearance; and second a colour transformation to give the sound reactive psychedelic effect. There is a small neighbourhood search for the coordinates of the center of a nearby cell of the tiling.

The coordinate transformation is applied to two variables, one of which is translated relative to the central cell, the other is untranslated. This is so that the spatial derivative of the untranslated copy is continuous, which is important as it can be used for mipmap level selection in the textureGrad() function (the regular texture() function would have unsightly seams at the edges of cells). The colour tranformation is a non-linear cosine shaping of RGB values bracketed by a hue shift that depends on in which of the three tiling equivalence classes the current cell is.

In addition to the webcam processing, which is a standalone program for Linux, a small patch in Pure-data is used to send MIDI note messages to the Novation BassStation Rack synthesizer. Pure-data is launched with the -sleepgrain 0.1 parameter to improve timing accuracy.

  • AV Performance

Eventos

LPM 2022 Rome
LPM 2022 Rome
sábado, 11 junio 2022

Videos (1)