mididings

Software Screenshot:
mididings
Software Details:
Version: 20120312
Upload Date: 15 Apr 15
Developer: -
Distribution Type: Freeware
Downloads: 9

Rating: nan/5 (Total Votes: 0)

mididings is a MIDI processor/router for ALSA, implemented as a Python module. Some of its features are particularly geared towards live keyboardists.

Features:

  • Filters and routes MIDI events depending on event type, channel, note, controller, etc.
  • Applies transposition, velocity curve/offset, etc., or converts events to a different type. Using Python code, arbitrary transformations of MIDI events are possible.
  • All MIDI processing is done in C (for speed reasons), with the ability to call back into Python if desired.
  • Multiple patches can be switched via MIDI. Note-off and sustain pedal events are specially handled to avoid stuck notes.

What is new in this release:

  • The VoiceFilter() unit was improved to work properly for voices other than the highest and lowest one.
  • A VoiceSplit() was added to allow easily creating multiple related voice filters (e.g. for a brass section).
  • OSCInterface() and livedings were simplified by using default port numbers if none are specified.

What is new in version 20100318:

  • Added VoiceFilter() to filter individual voices from a chord.
  • The Output() unit can now send arbitrary control changes, and a new
  • class OutputTemplate was added to simplify creating partially
  • parametrized outputs.
  • Added lots of new examples to the documentation.
  • Several minor fixes and cleanup.

What is new in version 20100307:

  • Added livedings as a graphical frontend to mididings that allows monitoring and triggering scene changes.
  • Added SceneGroup() to make multiple subscenes accessible under a single program number.
  • Support floating split points using the new FloatingKeySplit() unit.
  • Added Panic() to send all-notes-off messages on all channels.
  • Several new OSC messages supported by mididings.extra.OSCInterface().
  • New module mididings.extra.gm containing constants for program and controller numbers defined in the General MIDI standard.
  • Enable realtime scheduling for MIDI processing with the 'jack' backend.

What is new in version 20100202:

  • Major documentation update, now including a tutorial and explaining some of the relevant Python basics.
  • Renamed a few units and parameters to keep names somewhat consistent.
  • Removed the types parameters from Fork() and Print(), the same result can be achieved using a selector.
  • The upper or lower limit for note ranges can now be omitted.
  • All splits now support an "else" rule. A patch with a key of None is used when none of the other filters match.
  • Added operator | (OR) for selectors.
  • Added LatchNotes() to hold notes until the key is pressed again.
  • Significant performance improvement when calling overloaded functions.

What is new in version 20100112:

  • Included a command line program "mididings" that allows running simple patches without writing full-fledged Python scripts. For example: $ mididings "Transpose(12) >> Velocity(fixed=64)"
  • A first attempt to support system exclusive, system realtime and system common messages. New units include SysEx(), SysExFilter() and SysExSplit(). Thanks to Christopher Arndt for some very helpful suggestions.
  • Added support for polyphonic aftertouch, untested for obvious reasons :(
  • Implemented a hook system to easily extend some of mididings' functionality.
  • Added hook objects MemorizeScene() (scene persistence between restarts), OSCInterface() (scene switching via OSC), and AutoRestart() (automatic restart when the script changes. Best. Feature. Ever.)
  • Unified run() and run_scenes(), as well as Print() and PrintString(). The different functionality now depends only on keyword arguments.
  • Renamed Call() to Process(). Call() now offers the functionality of both CallAsync() and CallThread().
  • Renamed GenerateEvent() to Generator() and InitAction() to Init().
  • Changed semantics of CtrlFilter(), CtrlValueFilter(), ProgFilter() to block events of other types (again...).
  • Added parameter "curve" to Velocity(), applying an exponential curve.
  • New unit VelocityLimit().
  • New operator & to use multiple filters as a selector with operator %.

What is new in version 20090113:

  • This release adds functions to limit the number of simultaneous notes, or to make a MIDI signal monophonic (with retriggering).
  • It provides a new event-type agnostic inversion operator for filters, and Output() now supports sending volume changes (CC 7).

What is new in version 20081123:

  • This version adds support for processing standard MIDI files directly.
  • Patch numbers can now be greater than 128, and Output() supports sending bank select messages.
  • Various bugs have been fixed.

What is new in version 20081109:

  • Several problems with the JACK backend have been fixed.
  • This release also features support for channel aftertouch, a few additional units, and a new operator (%) for filters.
  • A new function has been added to mididings.extra that allows saving the selected patch number and restoring it the next time the script is run.

What is new in version 20080913:

  • This release adds some convenience functions to run shell commands, and to send OSC or DBUS messages.
  • The validity checking of function arguments has been improved to produce more helpful error messages.

Requirements:

  • ALSA driver
  • Python
  • The Boost Libraries

Similar Software

Cymbaline
Cymbaline

2 Jun 15

MidiMountain
MidiMountain

2 Jun 15

mp3guessenc
mp3guessenc

20 Feb 15

Musique
Musique

17 Feb 15

Other Software of Developer -

Comments to mididings

Comments not found
Add Comment
Turn on images!