Coder Social home page Coder Social logo

louwiigui's People

Contributors

seierstad avatar

Stargazers

 avatar

Watchers

 avatar  avatar

louwiigui's Issues

tidy up again...

lots of malloc()s and very few free()s
clean up

  • sequences
  • whammy messages
  • static cc messages
    ...and various other places

overtone tapping

the touch strip should be configurable as an overtone (or any tone) tapping area
overtones are defined for each chord/sequence step

probably implementable by adding a message type for specific values, and including a note on option (+ a separate note_t variable for overtones)

change patch

the user should be able to list multiple patches from the command line, and to switch between them with some button combination

./louwiigui patch1.xml patch2.xml patch3.xml

hammer on\pull off notes

when playing chords:

  • other chord_states (colored button combinations) trigger new notes, replacing notes in the chord
  • return to original chord when the extra buttons are released/repressed

Probably easy to implement by reuse of the string idea from sequences

  • each replaceable note is given a string number
  • triggering a note with a string number will send note off for the previous note with the same string number before note on for the triggered note

banks of 3 chord sets

3 chord sets per program/bank:
why: handy for different chords/voicings in verse/chorus/bridge
how: selectable with buttons 1, 2 and 1&2 (=3)

support midi program change

LouWiiGui should read program_number attributes from patch and bank, and send MIDI program change messages when the patch is loaded or the bank is selected

superstar mode

Let wonderful things happen when the accelerometer detects sudden upwards movement (like we are used to from Guitar Hero)!!!

pause sequencers

  • switch from midi tempo to cv tempo
  • let the strummer somehow send sync pulses
    = guitarist controlled tempo (= superstar superpower)

legato (for stringed notes)

Playing a note with the following configuration:

if a note is active on string 2, should result in:

cc message: legato on
note on message: new note
note off message: old note on string 2
cc message legato off

Support chord/note sequences

simulate guitar finger picking:

  • let button combinations be assigned to sequences of chords
  • every strummer action plays the next chord in the sequence, in loop
  • notes can have a sustain attribute, which let the note sustain until the same note is struck again, or until the next change of chord (or sequence)

Transpose with +- buttons

  • button: transpose up
  • button: transpose down
    (- is at the top when the wiimote is in the guitar controller)
    home-button returns to untransposed notes/chords

Segmentation fault

Type: bug
Severity: critical (in the context of bugs in a Wii guitar to midi program...)
Causes the program to crash.

how to reproduce:

  • load testIn.xml
  • select bank 2
  • press and hold red, yellow and blue buttons
  • press and hold the strummer
  • release the yellow button

so neck action while playing a chord will sometimes cause a segmentation fault

send cc messages when chords are triggered

adjust sound parameters to specific chords/sequences

switch legato/portamento/sustain on before a sequence, and off when the sequence is deactivated

  • before notes on
  • after notes on
  • before notes off

support for midi sequencer start/stop/continue would be nice...

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.