Hi !
I'm very happy of the new live functionnalities in Hydrogen, especially
the triggering of patterns via midi, so I looked a little at the
implementation and I have some questions.
I saw that triggering of patterns is achieved using PC events in
libs/hydrogen/src/IO/midi_input.cpp:
case MidiMessage::PROGRAM_CHANGE:
INFOLOG( QString( "[handleMidiMessage] PROGRAM_CHANGE event,
seting next pattern to %1" ).arg( msg.m_nData1 ) );
Hydrogen::get_instance()->sequencer_setNextPattern(msg.m_nData1,
false, false);
break;
For the moment, this is NOT working on my machine, i.e. it doesn't
actually change the plying pattern.
I aslo saw in action.cpp a mechanism that enables the user to bind
actions to midi events, so I wonder if it wouldnt be beter to handle PC
events with this mechanism and to add an action for triggering pattern
on/off. I tried to do this and it seems to work, with this modification
in action.cpp :
106c106,107
< << "TAP_TEMPO";
---
> << "TAP_TEMPO"
> << "SELECT_NEXT_PATTERN";
604a606,614
>
> if( sActionString == "SELECT_NEXT_PATTERN"){
> bool ok;
> int row = pAction->getParameter1().toInt(&ok,10);
> pEngine->setSelectedPatternNumber( row );
> pEngine->sequencer_setNextPattern( row, false, true );
> return true;
> }
>
Last thing, it would be very useful for me that instead of triggering
the playing pattern immediatly, it would be possible to change the
pattern at the end of the playing pattern. I guessed this was controlled
by the appendPattern and deletePattern parameters of the
Hydrogen::sequencer_setNextPattern function in hydrogen.cpp, but it
doesn't seems to work. So I tried to understand how these parameters
work, but I didn't understood anything, so I was wondering if there is
any documentation on the internal conception on hydrogen. I didn't found
it on the wiki.
Sorry for this long mail, and thanks for your awesome software,
Kjö
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Hydrogen-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hydrogen-devel