Also, just to clarify, the idea is that the audio track and the MIDI track would be loaded into a deck as one entity, rather than two separate decks. As you scratch the audio, your MIDI data would be outputted in sync.

"Disco Patrick" <discopatr...@me.com> wrote:
Hi Owen, thanks for your ideas!

The idea behind playing the MIDI track is not to play music, but rather to trigger lighting rigs, real-time graphics (e.g. Quartz Composer), or anything else that you want to sync to the track.

For example, imagine deck A has a song loaded with a typical beat - kick, snare, kick, snare. I'd like to send out a MIDI note on each of those beats, to trigger a light somewhere in the rig.

Of course, this would require me to create the MIDI track somewhere - doesn't necessarily have to be in Mixxx, but it may make sense to do so, because Mixxx aready knows where the beat grid lies, and so could help you snap notes to these positions.

Regarding what happens when the track is scratched/reversed, I would say just play back the very same notes in the reverse order. Remember, we're not necessarily triggering a synth here, we could be triggering anything.

Things could get very interesting when you use CC data instead of note data - you could sequence a CC to follow peaks, troughs, and swells in the track. Scratching would work particularly well with this, as you'd be able to see the shape of the CC data move back and forth, say, if you used it to move a laser left to right.

Of all your suggestions, the js/midi interface sounds like it might work, I'll take a look into this.

Thanks again!
Patrick



"Owen Williams" <owilli...@mixxx.org> wrote:
There are a couple of options you could try right now:

* use the javascript / midi interface in Mixxx to write a fake midi
device that can relay information from mixxx to your other software.  We
don't support clock information, but you could relay midi CC or key
events.  I have some boilerplate python code that creates a midi device.
* Write a USB HID driver to mimic a controller, and again leverage the
javascript interface.  This is harder, but more accurate.
* Create a click track, load it into a sampler, and loop it.  This way
you'd have a bpm-locked click track that you could feed into gear that
can sync to that.  I think some hacking might be necessary to create a
dedicated output for the sampler, but it would be fairly minimal.
* Write midi clock in/out support into our Master Sync code, which is a
major project I'm planning to do this coming year :).
* Just sync it by ear, since there's a bpm display.  The sync will drift
depending on the sound card clock, but that's a well-known physical
limitation.

Obviously none of these are ideal, and all will take a decent amount of
development.

Playing back midi tracks is a really hard problem, because what does it
sound like when the user scratches the track?  For now you'll have to
render out the midi to a waveform and then load that.


On Fri, 2015-03-27 at 02:31 +0000, Disco Patrick wrote:
> To expand my idea a littleā€¦
>
>
>
> The world of digital DJ software is sadly lacking in tools that allow
> you to synchronise other media to your music performance.
>
>
>
> Personally, I would like to be able to do a number of things:
>
>
>
> * Play a video track (apparently supported by Serato)
>
> * Play a MIDI track (which in turn triggers messages to other systems,
> e.g. DMX lighting rig, Quartz Composer visuals).
>
> * Do one of the above for each track deck that happens to be playing,
> e.g. Deck A and Deck B are both playing back independent MIDI tracks.
>
>
>
> It's almost as if each deck needs to output a timecode signal, or MIDI
> timecode, that other software can pick up on, in addition to the music
> track it is already outputting. Come to think of it, isn't ReWire
> supposed to do this?
>
>
>
> Might it one day be possible to sequence and play back a MIDI track
> from within Mixxx itself?
>
>
>
> Best,
>
> Patrick
>
>
>
>
>
>
>
>
>
>
>
>
>
> "Disco Patrick" <discopatr...@me.com> wrote:
> Hi all,
>
>
>
> My aim is to control external software based on song position within a
> track - to control, for example, MaxMSP, light shows, visual fx, etc.
>
>
>
> Is there anything on the Mixxx development roadmap that would allow
> this to happen?
>
>
>
>
> Does anyone have an opinion on how feasible this would be to add to
> Mixxx, perhaps as a personal fork project?
>
>
>
> Best,
>
> Patrick
>
>
>
>
>
> ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming The Go Parallel Website, sponsored > by Intel and developed in partnership with Slashdot Media, is your hub for all > things parallel software development, from weekly thought leadership blogs to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> 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



------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
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


------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
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