I 'm not a developer but I am the kind of person who writes mappings
for things I own that aren't supported.

what I'd like out of a controller mapping system, is the following :

easy to get started: I don't want to learn a new programming language
just to get a controller working.

well documented : I. want to be able to copy and paste the parts I
don't understand from the examples.  and read manual when I have to.

deep: if if have weird requirements,  I want to be able to solve the
problem with rtfm.

a long time ago I used a program called glovepie that mapps various
kinds of controllers.  its has a not quite Turing complete scripting
language, with a GUI wizard that generates code, which you can then
edit by hand.  things like inverting/ scaling/ filtering were really
easy without having to really know how to program. you guys should
check it out.


On 12/08/2015, Be <b...@gmx.com> wrote:
> None of those are an issue because Mixxx uses an actual programming
> language. :)
>
> On 08/11/2015 11:12 PM, Ferran Pujol Camins wrote:
>> I've now well Traktor mapping system. It wouldn't be that bad (provided
>> we have scripting anyway) if:
>>
>> 1-Execution order of sentences could be determined.
>> 2-Modifiers could have an arbitrary value (double, text, etc...) instead
>> of just 0,..7.
>> 3-More than two conditionals could be defined for a sentence.
>> 4-The number of modifiers wasn't limited to 8.
>> 5-Modifiers could have a name.
>>
>> 2015-08-11 19:14 GMT+02:00 Be <b...@gmx.com <mailto:b...@gmx.com>>:
>>
>>     I actually played around with Traktor's mapping system last night and
>> it
>>     isn't that great. Complex mappings quickly get messy. We can do
>>     better. :)
>>
>>     On 08/10/2015 04:29 PM, Be wrote:
>>     >
>>     >
>>      > On 07/07/2015 10:14 AM, raskolni...@es.gnu.org
>>     <mailto:raskolni...@es.gnu.org> wrote:
>>      >>
>>      >> On the OP topic: I think your proposed sintaxes look good and
>>     could be
>>      >> useful, it's nice that you open this discussion!
>>      >>
>>      >> On the other hand, I have the impression that what we really
>>     need is a
>>      >> two simple functions `map[Output,Input]Control(channel, value,
>>     group,
>>      >> name, options)` that allows to define a MIDI mapping at
>>     run-time.  This
>>      >> would be the JS equivalent of the <control> tags.
>>      >>
>>      >> On top of this low-level API many richer high-level APIs can be
>>      >> explored, including your JSON-style formats, Mixco, and
>>     further.  But
>>      >> most importantly, it would be possible to write advanced
>> controllers
>>      >> with JS mode switching, that are as performant as the pure XML
>>     scripts.
>>      >>    Right now, a important limitation in the framework is that
>>     it's all or
>>      >> nothing, either you bind a MIDI signal statically in the XML, or
>>     handle
>>      >> the MIDI events completely in JS -- an interesting approach is to
>> be
>>      >> able to create direct binding for Mixxx controls from JS that
>> then
>>      >> bypass the script for the individual events, providing better
>>     performance.
>>      >>
>>      >> Cheers!
>>      >>
>>      >> JP
>>      >>
>>      >>
>>      >
>>      > I think this is the most reasonable way forward from where Mixxx
>> is.
>>      > This could facilitate a smooth phasing out of the XML format and a
>>      > transition to JSON. All the info contained in the header of XML
>> files
>>      > could be defined in JSON with a metadata object.
>>      >
>>      > Looking into other programs' mapping systems, it looks like
>>     Traktor and
>>      > possibly Ableton are the only ones that have mapping systems worth
>>      > taking ideas from. Serato's system is primitive (at least the
>>      > user-definable part; no one knows the secrets of how official,
>>      > unmodifiable Serato certified mappings work). VirtualDJ has its
>> own
>>      > clunky mini-scripting language. Ableton allows scripting with
>>     Python but
>>      > at first glace I don't see much documentation for it and I've
>> heard
>>      > there is no debugging output. Traktor's mapping system is
>>     flexible but
>>      > tries to do so much in GUI that it ends up being cumbersome. I
>>     think it
>>      > would be awesome to implement a GUI interface similar to
>>     Traktor's but
>>      > allow direct input of JavaScript snippets from the GUI. For
>> example,
>>      > instead of selecting [Channel1] as the group for a mapping in the
>>     GUI, a
>>      > user could type in a JS variable that could be toggled between
>>      > [Channel1] and [Channel3]. Also, custom JS functions could be
>>     typed into
>>      > the GUI. This could combine the best of a GUI interface and the
>>      > flexibility of JavaScript.
>>      >
>>      > I got another idea that I think would be both powerful and
>>      > straightforward: mappings could be built from layers, which would
>>     be JS
>>      > objects containing groups of input and output mappings. In the
>> GUI,
>>      > layers would be presented as tabs at the top of the mapping
>> editor.
>>      > Button presses (or whatever) would be mapped to switch between
>>     layers.
>>      > By default, activating a layer would overwrite active mappings
>> that
>>      > overlap with the layer being activated. Mixxx could remember the
>>      > previously active mappings and revert to that when a layer is
>>     disabled,
>>      > which would make implementing shift button layers trivially easy.
>>     Would
>>      > it make more sense to implement layering functionality in C++ or as
>> a
>>      > JavaScript library making use of a new mapping (dis)connection
>>     function?
>>      >
>>      >
>>
>> ------------------------------------------------------------------------------
>>      > _______________________________________________
>>      > Get Mixxx, the #1 Free MP3 DJ Mixing software Today
>>      > http://mixxx.org
>>      >
>>      >
>>      > Mixxx-devel mailing list
>>      > Mixxx-devel@lists.sourceforge.net
>>     <mailto:Mixxx-devel@lists.sourceforge.net>
>>      > https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>      >
>>
>>
>> ------------------------------------------------------------------------------
>>     _______________________________________________
>>     Get Mixxx, the #1 Free MP3 DJ Mixing software Today
>>     http://mixxx.org
>>
>>
>>     Mixxx-devel mailing list
>>     Mixxx-devel@lists.sourceforge.net
>>     <mailto:Mixxx-devel@lists.sourceforge.net>
>>     https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>>
>>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Get Mixxx, the #1 Free MP3 DJ Mixing software Today
> http://mixxx.org
>
>
> Mixxx-devel mailing list
> Mixxx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mixxx-devel
>


-- 
http://www.ewancolsell.com/

------------------------------------------------------------------------------
_______________________________________________
Get Mixxx, the #1 Free MP3 DJ Mixing software Today
http://mixxx.org


Mixxx-devel mailing list
Mixxx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to