Soñando Satelites – fictional serie – code
This is the code page explication of installation Soñando Satellites – Fictional series
The installation is composed essentially of two softwares interacting between: gpredict and puredata. Gpredict track the satellites and send data as elevation, azimuth and position to a puredata patch through Open Sound Control protocol.
You can download all the code from github’s page:
https://github.com/husk00/sonandoSatelites-fictional-serie
Gpredict
This software is real-time satellite tracking and orbit developped by Alexander Csete and released under the G.P.L. 2.0 license. It is an amazing program that let you track satellite based on public TLE data.. The fake satellites used, as well the real ones, are inserted in the system by using the config directory called Gpredict in the git repository. Actually the directory Gpredict/satdata contains a lot of unutilized satellites information that I leave there for laziness.
A preset with Quito as ground station information plus a selection of used satellites is bundled with the package.
In order to make it communicates with puredata I had to hack the original code of the program.
[NOTE]
That, let me say, it was a wonderful demonstration, as artist that work with software, of the beauty and power of free software. Only free software let you adapt a previous software to some real artistic and technical condition the artist is facing, letting you to adapt it to fit your needs (and not the opposite, as usual happen).
[/NOTE]
The hack basically consist in modifying the file gtk-polar-view.c in the Gpredict-osc/src directory adding the code for sendings a boolean variables according to the position of the satellite related to the ground station. So when the satellite pass over the ground station a true var is sent and a audio file is played.
This hack follow the original hack of 2011 from David Pello and Bruno Vianna, whom added for first time OSC capabilities to Gpredict.
Puredata
The audio engine is composed by a collection of puredata patch receiving OpenSoundControl messages. Puredata is a dataflow programming language originally designed for DSP programming. It is released under the BSD license Term from Miller Puckete and have a great and strong community behind that make this software so punk and so beautiful. For this installation puredata vanilla was used in combination of some external, as listed in the README file. All this externals are packaged in the multimedia debian repository
Audio engine is divided in different directories one for each satellites. Some patch play just a recorded file in WAV format. Others use generative real time sounds: the puredata patch tool used to create this patches was the #webpd framework developed by Sebastien Piquemal. Especially I used the random generator demostration as in http://sebpiq.github.io/pd-fileutils/demos/randomDrone.html.
(Many many Thanks for this wonderful framework!)
Audio
The scripts present in the directory are supposed to make it easy run the installation and to automatize some task (like check if it is working or not and reboot the installation) All the audio files used by the installation are downloadables from http://estereotips.net/release/sounds/ and must be copied inside audioEngine/sounds/ directory.
They are released under the Creative Commons Zero license.