A postscript to my above message:

If midi-learning events process step #4 times out, go back to its step #1
for the same control. If the user makes a mistake and does not confirm their
choice with the same control, then they will repeat the midi-learn process
for the same control.

On Tue, Feb 17, 2009 at 12:03 AM, Eric Shattow
<[email protected]<lucent%[email protected]>
> wrote:

> I suggest that users confirm their choice. Do this by having the software
> ask them to trigger the same action again to confirm.
>
> Mock process for initiating midi-learn:
>
> 1. User enables midi-learn feature
> 2. User adds UI controls to the queue of controls to be "midi learned" from
> a list of available controls -OR- by ctrl+L_Mouse_Click on the control in
> the Mixxx UI.  *Because midi-learn is toggled on or off it won't matter if
> the midi-learn selection overrides a previous ctrl+L_Mouse_Click behavior.
> 3. User initiates the learning process by clicking a big fat "Okay,
> MIDI-Learn!" button.
>
> Mock process for midi-learning events:
>
> 1. Announce in text on the screen the name of the control to be learned
> 2. Flash some red box around the portion of Mixx UI where applicable of the
> control to be learned. The length of time that this flashing red box happens
> should be user-configurable and is the delay which pleases both "New User"
> or "Expert User"
> 3. Announce in text to please move / engage the MIDI control desired,
> include a decay countdown that is reset on each midi event incoming.
> 4. After decay countdown completes, announce in text to please again move /
> engage the same MIDI control desired, to confirm previous assignment.
> 5. Repeat to Step #1 for all controls in midi-learn queue
>
>
>
> On Mon, Feb 16, 2009 at 11:09 PM, Albert Santoni <[email protected]> wrote:
>
>> Hi guys,
>>
>> With all the refactoring going on, I had to temporarily remove our
>> MIDI learning functionality a couple of weeks ago. With our old
>> implementation, I wasn't entirely convinced that average joe DJ would
>> be able to figure out how to use it, since a bunch of us developers
>> struggled with it. Since I'll need to do some coding to re-enable MIDI
>> learning, now is a good time to have a quick discussion about how
>> people think MIDI learning should work.
>>
>> Ideas?
>>
>> How do Traktor and Virtual DJ do MIDI learning?
>>
>> In some other MIDI-capable applications that I've used, I've seen the
>> following approaches:
>> 1) If you right-click on a control in the GUI, you can click "MIDI
>> Learn...", move a control on your controller, and you're done.
>> 2) They had something similar to what trunk had before, where you
>> could pick a control name from a giant list and move a knob on your
>> controller. The workflow here was just a pain in the ass (so much
>> clicking and digging through controls to find the right one.)
>> 3) You click "MIDI learn", then you move a control in the UI, and then
>> move a control on your controller, which then magically creates the
>> mapping between the two.
>>
>> #1 might be interesting to look at doing (since our WWidgets know
>> about ControlObjects, I think), but it's still a lot of mousework.
>> #2 was less user friendly and just generally harder to use.
>> #3 reduced the mousework significantly, but it's still a lot of
>> switching back and forth.
>>
>> My own idea that I pitched to people back in the summer (but I guess
>> didn't get any attention) was to have a dialog that mimics the way old
>> computer games used to let you set up your keyboard keys. Some
>> emulators like zsnes work like this too. Basically, the idea is that
>> the dialog will ask you to move some specific knob or slider on your
>> controller, then you do it, and then it automatically flips to the
>> next control that you would need to bind. As an example, the workflow
>> is like:
>> - Dialog asks you "Push the play button for player 1"
>> - You push the left play button on your MIDI controller,
>> - Dialog then asks you (with no user intervention required), "Push the
>> play button for player 2"
>> - You push the right play button on your MIDI controller.
>> - etc.
>>
>> The key idea is that you don't have to touch your mouse or keyboard
>> while you're setting up your controller, and you're being force-fed
>> very straightforward instructions about what to do.
>>
>> So my parting questions are: Is this a reasonable thing to do? Can we
>> make this idea even better? And if we come up with an even better
>> idea, should I just reimplement what we had before and push MIDI
>> Learning 2.0 to 1.6.3?
>>
>> Thanks,
>> Albert
>>
>>
>> ------------------------------------------------------------------------------
>> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>> CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> _______________________________________________
>> Mixxx-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>
>
>
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Mixxx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to