OpenMPT for DJing

Started by Louigi Verona, October 18, 2019, 10:58:23

Previous topic - Next topic

Louigi Verona

I realized that trackers could be perfect for DJing, given that they are mostly one shot samples being manipulated. That means that tempo can changed easily with no artifacts and syncing separate songs might be trivial.

Is there a way to play two or more tracks in OpenMPT at the same time? If one could simply sync the play button of a track to the already playing one, that would be totally great.

I would love to experiment with that.

Saga Musix

I know some people have done this with manual syncing. However, it could also be possible to use a MIDI controller for controlling playback of two separate OpenMPT instances (OpenMPT shortcuts can be bound to MIDI CCs, or you can enable OpenMPT to respond to MIDI play/stop messages). One could use two different keyboard mappings where the same MIDI CC stops the playback on one instance and starts playback on the other. However it is important to note that device initialization would not be synchronized between those instances. But if the device is already running, that might not be a problem. It's worth experimenting with this idea.
I also tried implementing limited to support for MMC messages a while ago (in particular MMC Locate) which could help here, but that hasn't landed in the repository (yet). In  particular I don't have any hardware that supports these messages so that makes it more difficult to test.

If you don't need manipulation of tracker (in particular pattern) data, a custom tool could be built on top of libopenmpt, which can change playback speed and pitch independently, and also trigger samples outside of patterns.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Louigi Verona

I think the MVP here could simply be the ability to play two modules at the same time within one OpenMPT instance.

The reason for this is that not all tempo is the same. Tempos could be the same as a matter of fact, but be expressed through different tempo numbers due to a different ticks per row count. I am fine with adjusting this manually.

The reason I want this option within one OpenMPT instance is precisely the one you mentioned: I need the device to already be initiated.

Question is - how trivial is it to build an OpenMPT version that allows to mix modules together?

Saga Musix

Quote from: Louigi Verona on October 18, 2019, 13:15:06
Question is - how trivial is it to build an OpenMPT version that allows to mix modules together?
If you want it to be a cheap hack - not that difficult probably. Practically, to have this as a usable feature that we could distribute and maintain - a lot more work.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Louigi Verona

I think that it might be interesting to have a unique build with a cheap hack, so that I can try it out. It might be that the idea is more interesting than reality.

Saga Musix

Well, just to make it clear - "not that difficult" is still at least a day or two of work, and I personally don't have that time to invest into a hack right now.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Louigi Verona

Understood. No worries, I will try to experiment first and see if any of this is even worth it. But still, this is a very interesting venue to explore.

LPChip

There used to be an option to have OpenMPT as VSTi in another daw. I don't know the status of this project though, and I think by now it is obsolete maybe (or at least a very old version)? But that would solve your issue.
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

Saga Musix

That was a third-party hack over ten years ago that never made it into the official code. It should also be noted that it didn't solve any of the synchronization issues that would still be there.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Louigi Verona

One thing that I can also try is writing a tune in real time within one pattern and using the SBx command or smth like that. I will think about it. I just realized that DJing with trackers could be perfect in many ways. But no tool is really accommodating this use case and I understand nobody could be expected to put in work for this strange use case.

Saga Musix

Something that you may also look into is pattern queuing (middle-click or ctrl-click an order list item). This could be very useful in particular in combination with some silent pattern.

If you want to try the "tracker in a DAW" approach, you could also give reViSiT a try (but that is also no longer being developed actively as far as I can see).
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

LPChip

And not to mention, muting/unmuting and soloing a channel upon transition. :) But that would not allow you transition from one song to another like a real DJ.
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

.^o

#12
I use OMPT in djing for years.
With two OMPTs in one or two eeepc with one to four sound cards, connected to a mixer.
The setting of the tempo on the fly is sufficient.
And the fine tempo setting brought by Saga is perfect for a precise synchronization with other artists without even a MIDI connection.

Just perfect  :)

I also render songs as wav and mix with DJ softwares.

Louigi Verona

Quote from: .^o on October 23, 2019, 06:11:58
I use OMPT in djing for years.
With two OMPTs in one or two eeepc with one to four sound cards, connected to a mixer.
The setting of the tempo on the fly is sufficient.
And the fine tempo setting brought by Saga is perfect for a precise synchronization with other artists without even a MIDI connection.

Just perfect  :)

I also render songs as wav and mix with DJ softwares.

Can you record your workflow on YouTube? Would be super interesting to see this being actually done.