Giter VIP home page Giter VIP logo

orca's Introduction

ORCΛ

Each letter of the alphabet is an operation,
lowercase letters operate on bang, uppercase letters operate each frame.

To learn more, have a look at some projects created with #ORCΛ, watch the introduction video, or check out the examples & tutorials. If you need some help, visit the forum, or the chatroom.

If you're looking for a light version of Orca, visit Orca-c.

Install & Run

You can download builds for OSX, Windows and Linux, or if you wish to build it yourself, follow these steps:

git clone https://github.com/hundredrabbits/Orca.git
cd Orca/desktop/
npm install
npm start

Operators

  • A add: Outputs the sum of inputs.
  • B bool: Bangs if input is not empty, or 0.
  • C clock: Outputs a constant value based on the runtime frame.
  • D delay: Bangs on a fraction of the runtime frame.
  • E east: Moves eastward, or bangs.
  • F if: Bangs if both inputs are equal.
  • G generator: Writes distant operators with offset.
  • H halt: Stops southward operators from operating.
  • I increment: Increments southward operator.
  • J jumper: Outputs the northward operator.
  • K konkat: Outputs multiple variables.
  • L loop: Loops a number of eastward operators.
  • M modulo: Outputs the modulo of input.
  • N north: Moves Northward, or bangs.
  • O offset: Reads a distant operator with offset.
  • P push: Writes an eastward operator with offset.
  • Q query: Reads distant operators with offset.
  • R random: Outputs a random value.
  • S south: Moves southward, or bangs.
  • T track: Reads an eastward operator with offset.
  • U uturn: Reverses movement of inputs.
  • V variable: Reads and write globally available variables.
  • W west: Moves westward, or bangs.
  • X teleport: Writes a distant operator with offset.
  • Y jymper: Outputs the westward operator.
  • Z zoom: Moves eastwardly, respawns west on collision.
  • * bang: Bangs neighboring operators.
  • # comment: Comments a line, or characters until the next hash.
  • : midi: Sends a MIDI note.
  • ^ cc: Sends a MIDI CC value.
  • ; udp: Sends a UDP message.
  • = osc: Sends a OSC message.

MIDI

The MIDI operator : takes up to 5 inputs('channel, 'octave, 'note, velocity, length).

For example, :25C, is a C note, on the 5th octave, through the 3rd MIDI channel, :04c, is a C# note, on the 4th octave, through the 1st MIDI channel. Velocity is an optional value from 0(0/127) to g(127/127). Note length is the number of frames during which a note remains active. See it in action with midi.orca.

MIDI CC

The MIDI CC operator ^ takes 3 inputs('channel, 'knob, 'value).

It sends a value between 0-127, where the value is calculated as a ratio of 36, over a maximum of 127. For example, ^008, is sending 28, or (8/36)*127 through the first channel, to the control mapped with id0. You can press shift+enter, with the ^ operator selected, to assign it to a controller.

UDP

The UDP operator ; locks each consecutive eastwardly ports. For example, ;hello, will send the string "hello", on bang, to the port 49160 on localhost

You can use the listener.js to test UDP messages. See it in action with udp.orca.

OSC

The OSC operator = locks each consecutive eastwardly ports. The first character is used for the path, the following characters are sent as integers using the base36 Table.

For example, =1abc will send 10, 11 and 12 to /1, via the port 49162 on localhost; =a123 will send 1, 2 and 3, to the path /a. You can use the listener.js to test OSC messages. See it in action with osc.orca or try it with SonicPi.

Base36 Table

Orca operates on a base of 36 increments. Operators using numeric values will typically also operate on letters and convert them into values as per the following table. For instance Dp will bang every 24th frame.

0 1 2 3 4 5 6 7 8 9 A B
0 1 2 3 4 5 6 7 8 9 10 11
C D E F G H I J K L M N
12 13 14 15 16 17 18 19 20 21 22 23
O P Q R S T U V W X Y Z
24 25 26 27 28 29 30 31 32 33 34 35

Default Ports

UDP Input OSC Input UDP Output OSC Output
49160 None 49161 49162

Companion Applications

  • PILOT, a companion synth tool.
  • AIOI, a companion to send complex OSC messages.
  • ESTRA, a companion sampler tool.

Tutorials

Extras

  • This application supports the Ecosystem Theme.
  • Support this project through Patreon.
  • See the License file for license rights and limitations (MIT).
  • Pull Requests are welcome!

orca's People

Contributors

neauoire avatar makio135 avatar nobodycarestrue avatar lctrt avatar hamstah avatar frarees avatar npisanti avatar jakubvaltar avatar abowerman avatar andresgottlieb avatar eelfroth avatar jglukasik avatar joshavanier avatar gadgetoid avatar ryanramage avatar

Watchers

James Cloos avatar Cem Olcay avatar  avatar

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.