Seb Hue / Bisous Biset

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
animo [2025/08/28 13:19] – created adminanimo [2025/08/31 14:06] (current) admin
Line 3: Line 3:
 **Animo** is a set of open-source music oriented software I developed. **Animo** is a set of open-source music oriented software I developed.
  
-  * [[https://gitlab.com/gibbonjoyeux/rino/-/tree/dev|Rino]] - Live coding 
   * [[https://gitlab.com/gibbonjoyeux/chamo|Chamo]] - Sound design + music software   * [[https://gitlab.com/gibbonjoyeux/chamo|Chamo]] - Sound design + music software
   * [[https://gitlab.com/gibbonjoyeux/blairo|Blairo]] - Supercollider node based gui   * [[https://gitlab.com/gibbonjoyeux/blairo|Blairo]] - Supercollider node based gui
 +  * [[https://gitlab.com/gibbonjoyeux/rino/-/tree/dev|Rino]] - Live coding
  
-===== Rino ===== +===== 🐫 Chamo =====
- +
-Rino is a live coding program based on the Lua programming language. +
-It is meant to be used with other music software via the OSC protocol (Supercollider, VCV Rack, etc.). +
-Here, live coding means that you create rhythms and melodies through the use of algorithms. Each time you update the file you are working on, **Rino** updates the sequence. +
-It is highly inspired by the [[https://supercollider.github.io|Supercollider]] pattern sequencing [[https://doc.sccode.org/Classes/Pattern.html|Functions]]. +
- +
-If **Rino** is not in development anymore, I used it a lot during live coding events and I really rarely had issues with it. +
- +
-<code lua> +
- +
--- Set the BPM by changing the BPM global variable +
-BPM = 60 +
- +
--- Create a loop called "kick" +
-function loop_kick() +
- -- Send a play command to Supercollider +
- scplay("kick"+
- -- Wait for 1 beat +
- wait(1) +
-end +
- +
-function loop_lead() +
- local freq +
- local dur +
- +
- -- Define a pitch sequence +
- freq = pseq({220, 330, 440}) +
- -- Define a time sequence (in beats) +
- dur = rand({0.125, 0.25, 0.5}) +
- -- Send a play command to Supercollider with parameters +
- scplay("sine",+
- "freq", freq, +
- "amp", 0.5 +
- }) +
- -- Wait for a certain period of time +
- wait(dur) +
-end +
-</code> +
- +
-  * [[https://gitlab.com/gibbonjoyeux/rino/-/tree/dev|Gitlab repository]] +
- +
-===== Chamo =====+
  
 **Chamo** changed a lot. It started as a complete node based music software where users were able to code their own nodes based on a tracker with patterns and a timeline. **Chamo** changed a lot. It started as a complete node based music software where users were able to code their own nodes based on a tracker with patterns and a timeline.
Line 68: Line 26:
   * [[https://gitlab.com/gibbonjoyeux/chamo/-/tree/master/doc|Code examples]]   * [[https://gitlab.com/gibbonjoyeux/chamo/-/tree/master/doc|Code examples]]
  
-{{:chamo-1.png?250}} +{{:chamo-1.png?400}} 
-{{:chamo-2.png?250}} +{{:chamo-2.png?400}}
-{{:chamo-3.png?250}}+
  
 <code lua> <code lua>
Line 98: Line 55:
 </code> </code>
  
-===== Blairo =====+===== 🦡 Blairo =====
  
 **Blairo** is a web browser node based graphical user interface for [[https://supercollider.github.io|Supercollider]]. **Blairo** is a web browser node based graphical user interface for [[https://supercollider.github.io|Supercollider]].
Line 109: Line 66:
  
 {{:blairo-1.png?400}} {{:blairo-1.png?400}}
 +
 +===== 🦏 Rino =====
 +
 +**Rino** is a live coding program based on the Lua programming language.
 +It is meant to be used with other music software via the OSC protocol (Supercollider, VCV Rack, etc.).
 +Here, live coding means that you create rhythms and melodies through the use of algorithms. Each time you update the file you are working on, **Rino** updates the sequence.
 +It is highly inspired by the [[https://supercollider.github.io|Supercollider]] pattern sequencing [[https://doc.sccode.org/Classes/Pattern.html|Functions]].
 +
 +If **Rino** is not in development anymore, I used it a lot during live coding events and I really rarely had issues with it.
 +
 +<code lua>
 +
 +-- Set the BPM by changing the BPM global variable
 +BPM = 60
 +
 +-- Create a loop called "kick"
 +function loop_kick()
 + -- Send a play command to Supercollider
 + scplay("kick")
 + -- Wait for 1 beat
 + wait(1)
 +end
 +
 +function loop_lead()
 + local freq
 + local dur
 +
 + -- Define a pitch sequence
 + -- Each time loop_lead() is called, it will loop through the notes (hz) list
 + freq = pseq({220, 330, 440})
 + -- Define a time sequence (in beats)
 + -- Each time loop_lead() is called, it will pick a random note time in the list
 + dur = rand({0.125, 0.25, 0.5})
 + -- Send a play command to Supercollider with parameters
 + scplay("sine", {
 + "freq", freq,
 + "amp", 0.5
 + })
 + -- Wait for a certain period of time
 + wait(dur)
 +end
 +</code>
 +
 +  * [[https://gitlab.com/gibbonjoyeux/rino/-/tree/dev|Gitlab repository]]
animo.1756379999.txt.gz · Last modified: 2025/08/28 13:19 by admin