Code Monkey home page Code Monkey logo

elecmidi's Introduction

elecmidi is a C program to help write electribe 2 patterns. It connects with the electribe 2 and modifies the current pattern.

compilation:

In the text of elecmidi.c, at the beginning are defined:

device: the midi device to connect.

channel: the midi channel.

To compile, type make

usage:

echo "command" | ./elecmidi

or

cat script | ./elecmidi

example1.txt, example2.txt are script examples.

if a command ends in ! then it is an immediate command. For example:

echo "name Pattern1 !" | ./elecmidi

is equivalent to the following 3 lines.

read

name Pattern1

write

to see all parameters:

echo "print !" | ./elecmidi

Command line arguments:

-d device

-c channel (1-16)

-s (For the Electribe 2 sampler)

elecmidi's People

Contributors

rafamj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

drkzrg

elecmidi's Issues

some feedback

This is a cool project, sortof a little csound language for electribe2. ❤️
I'm trying to get this to work on my es2 (currently I can change the pattern number using elecmidi but the read, see testoutput below).
some ideas:

$ elecmidi
env-var ELECTRIBE2 found ('/dev/midi2:0')
starting interactive prompt
elecmidi> 
elecmidi> ls
example1.txt example2.txt template.txt idea.mid
elecmidi> import template.txt
elecmidi> lfo 1 oscillator sin 4 3 5   # apply lfo on oscillator-param between 3..5 with 4hz sinewave
elecmidi> lfo 1 ifx sin 4 2 3   # apply lfo on IFX-param between 2..3 with 4hz sinewave
elecmidi> import idea_v1.mid
elecmidi> read
elecmidi> export idea_v2.mid

testoutput

$ cat test1.txt 
#selects pattern 1 (The pattern is only modified in memory. In order to save it permanently is necessary to pulse the "write" button)
goto 6
wait 1
stop
$ cat test1.txt | ./elecmidi 
# works ..the electribe2s changed it pattern to 6

$ cat test1.txt 
#selects pattern 1 (The pattern is only modified in memory. In order to save it permanently is necessary to pulse the "write" button)
goto 6
read                               # <----------------- adding `read`
wait 1
stop
$ cat test1.txt | ./elecmidi 
error receiving data 0

ps. this was compiled with:

int channel=1 // I've also tried 0 
int sampler=1; //0 synth 1 sampler

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.