Mixxx DJ app and Python

M

mikprog

Hi guys,

I am thinking of driving a DJ application from Python.
I am running Linux and I found the Mixxx app.
Does anyone know if there are python bindings, or if this is possible at all?
or does anyone have experience with another software that does the same DJ thing?

I have also found the pymixxx module that I could install... but I didn't find any documentation so far or example code that could help me start (I'm keeping on searching).

Finally maybe that there is any DJ app that could be driven by pygame.midi?

Any idea appreciated.
Sorry to fail to be more specific.

Mik

PS: I've reposted this message as the previous subject (software app and Python: any experience?) didn't make any sense
 
D

David Hutto

Hi guys,

I am thinking of driving a DJ application from Python.
I am running Linux and I found the Mixxx app.
Does anyone know if there are python bindings, or if this is possible at all?
or does anyone have experience with another software that does the same DJ thing?

I have also found the pymixxx module that I could install... but I didn't find any documentation so far or example code that could help me start (I'm keeping on searching).

Finally maybe that there is any DJ app that could be driven by pygame.midi?

Any idea appreciated.
Sorry to fail to be more specific.

I'd just go with a command line app that triggered a .wav file at
certain points using time.sleep(x)

Best Regards,
David Hutto
CEO: http://www.hitwebdevelopment.com
 
D

David Hutto

Does anyone know if there are python bindings, or if this is possible at all?
Hydrogen, and audacity work perfectly together.


What I was about to do is take the mic, get the soundtrack/beat to the
song going, and then plug it into audacity for further modification,
or you can roll your own.

--


Best Regards,
David Hutto
CEO: http://www.hitwebdevelopment.com
 
M

mikprog

On Tuesday, January 29, 2013 4:13:09 PM UTC, David Hutto wrote:
[..]
Hydrogen, and audacity work perfectly together.


Hi David,
thanks for your reply.
I am not sure though that this is going to help me.
We have built a kind of basic controller that sends commands via bluetooth.
Then I should have some device (like a linux pc or raspberry Pi) where I have my applications that listen for these bluetooth commands and drives a DJ application accordingly (like mixing two sounds, sync them etc).

Obviously to write the whole application will take ages and I saw that the Mixxx one does everything I want.
So I am searching for a way to interface to it programatically.

Do you mean that Hydrogen and Audacity would replace the Mixxx app and I can call their functionality from Python?
Or were you thinking about something else?

Thanks,
Mik
 
M

mikprog

On Tuesday, January 29, 2013 4:13:09 PM UTC, David Hutto wrote:
[..]
Hydrogen, and audacity work perfectly together.


Hi David,
thanks for your reply.
I am not sure though that this is going to help me.
We have built a kind of basic controller that sends commands via bluetooth.
Then I should have some device (like a linux pc or raspberry Pi) where I have my applications that listen for these bluetooth commands and drives a DJ application accordingly (like mixing two sounds, sync them etc).

Obviously to write the whole application will take ages and I saw that the Mixxx one does everything I want.
So I am searching for a way to interface to it programatically.

Do you mean that Hydrogen and Audacity would replace the Mixxx app and I can call their functionality from Python?
Or were you thinking about something else?

Thanks,
Mik
 
D

David Hutto

What I was about to do is take the output to the headphones, get the
soundtrack/beat to the
song going, and then plug it into audacity(mic) for further modification,
or you can roll your own.
 
D

David Hutto

On Tuesday, January 29, 2013 4:13:09 PM UTC, David Hutto wrote:
[..]
Hydrogen, and audacity work perfectly together.


Hi David,
thanks for your reply.
I am not sure though that this is going to help me.
We have built a kind of basic controller that sends commands via bluetooth.
Then I should have some device (like a linux pc or raspberry Pi) where I have my applications that listen for these bluetooth commands and drives a DJ application accordingly (like mixing two sounds, sync them etc).

Obviously to write the whole application will take ages and I saw that the Mixxx one does everything I want.
So I am searching for a way to interface to it programatically.


Well you can just use their(Mixx's) source code that they used from
another wav form manipulation library(more than likely), after the
trigger from the bluetooth. If you're talking voice, and music to
sync, then either go with transmitting at the same, or take two
receivers(one for each transmitter), and run them in unison on
different frequencies, after they've been received..

I've never tried this, but it seems logical.
 
B

Ben

This may not be too helpful, but I built a TCP server into the Mixxx application (in C++). I placed the server in ratecontroller (as I needed to vary the rate remotely). I then could send and receive TCP packets with a singleboard computer that ran a python client.

It wasn't too bad. If you want I can see if I can release the server code.
 
B

Ben

This may not be too helpful, but I built a TCP server into the Mixxx application (in C++). I placed the server in ratecontroller (as I needed to vary the rate remotely). I then could send and receive TCP packets with a singleboard computer that ran a python client.

It wasn't too bad. If you want I can see if I can release the server code.
 
D

David Hutto

This may not be too helpful, but I built a TCP server into the Mixxx application (in C++). I placed the server in ratecontroller (as I needed to vary the rate remotely). I then could send and receive TCP packets with a single board computer that ran a python client.

So you used a digital buffer region for your wave forms? How did you
handle the rest of the data; allocate memory, or delete if the data
became too lengthy?
 
M

mikprog

This may not be too helpful, but I built a TCP server into the Mixxx application (in C++). I placed the server in ratecontroller (as I needed to vary the rate remotely). I then could send and receive TCP packets with a single board computer that ran a python client.


Hi Ben,
this would be actually interesting to look at.
If you are not going to face problems, please send me the code.

Thanks,
Mik
 
M

mikprog

This may not be too helpful, but I built a TCP server into the Mixxx application (in C++). I placed the server in ratecontroller (as I needed to vary the rate remotely). I then could send and receive TCP packets with a single board computer that ran a python client.


Hi Ben,
this would be actually interesting to look at.
If you are not going to face problems, please send me the code.

Thanks,
Mik
 
M

mikprog

On Tuesday, January 29, 2013 4:42:07 PM UTC, David Hutto wrote:
[..]
Well you can just use their(Mixx's) source code that they used from

another wav form manipulation library(more than likely), after the

trigger from the bluetooth. If you're talking voice, and music to

sync, then either go with transmitting at the same, or take two

receivers(one for each transmitter), and run them in unison on

different frequencies, after they've been received..



I've never tried this, but it seems logical.

Thanks David.
It seems that the code is in C++ so I should write Python wrappers myself, which could be interesting, but given the time frame I have is just not possible, Pity :-(
However I was not going to transmit sounds, but just commands to mix the sounds that are already in the same machine were the Mixxx is going to run.
I hope I will have time to come back to it in future.

Thanks.
Mik
 
M

mikprog

On Tuesday, January 29, 2013 4:42:07 PM UTC, David Hutto wrote:
[..]
Well you can just use their(Mixx's) source code that they used from

another wav form manipulation library(more than likely), after the

trigger from the bluetooth. If you're talking voice, and music to

sync, then either go with transmitting at the same, or take two

receivers(one for each transmitter), and run them in unison on

different frequencies, after they've been received..



I've never tried this, but it seems logical.

Thanks David.
It seems that the code is in C++ so I should write Python wrappers myself, which could be interesting, but given the time frame I have is just not possible, Pity :-(
However I was not going to transmit sounds, but just commands to mix the sounds that are already in the same machine were the Mixxx is going to run.
I hope I will have time to come back to it in future.

Thanks.
Mik
 
D

David Hutto

Thanks David.
It seems that the code is in C++ so I should write Python wrappers myself,

Or ctypes.
which could be interesting, but given the time frame I have is just
not possible, Pity :-(
However I was not going to transmit sounds, but just commands to mix the sounds that are already in the same machine were the Mixxx is going to run.


A filter is minutia in comparison of code

so it was always going to be a comand line app, with a python GUI, to
perform alterations on the wave forms?.
I hope I will have time to come back to it in future.

Just a little practice, that makes every programmer listening scramble.
 
A

alex23

I am thinking of driving a DJ application from Python.
I am running Linux and I found the Mixxx app.
Does anyone know if there are python bindings, or if this is possible at all?
or does anyone have experience with another software that does the same DJ thing?

The simplest way I think would be to control Mixxx via midi, using
something like pyPortMidi:

http://alumni.media.mit.edu/~harrison/code.html

If that doesn't give you the full range of control you're after,
perhaps you could use ctypes to wrap Mixxx's code libraries?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,186
Members
46,739
Latest member
Clint8040

Latest Threads

Top