Allow recording of vinyl/mic/aux inputs to new track in deck

Bug #1407222 reported by Be
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Mixxx
Confirmed
Wishlist
Unassigned

Bug Description

Currently, Mixxx can simply play external input over everything else, with the only adjustable parameter being the volume. While this is suitable for a DJ simply talking or rapping over their mix, it is not very flexible. It would be fun to apply EQ and effects to live inputs as well as record them for later playback and looping. I think a good way to implement this would be similar to how Traktor does it (see https://www.youtube.com/watch?v=YN1TxlQTbBg for an explanation). There could be a button on the GUI for each deck that brings up a menu for selecting input sources: either files (normal deck), stereo inputs, or mono inputs. The menu entries for stereo and mono inputs could be submenus that bring up each available input. It should not be necessary to bring up the preferences dialogue to do this, as this would be cumbersome to set up while performing. This should be an option both for normal decks and sample decks. The ability to use mono inputs or stereo inputs other than those setup for vinyl control of the deck is what separates this from passthrough mode (Bug #355945).

On the GUI for the live input decks, there could be a record button. Rather than displaying the waveform, it could be cool and useful (when used with filters) to fill the GUI space with a spectrogram, although this is not as important as a record button and there wouldn't be space for it in sample decks. Once a sample is recorded, the deck would automatically turn into a normal deck with that recording loaded in it. A setting could be added in the preferences to define a directory for Mixxx to store these live recorded samples, which would automatically be included in the library. It could be useful to have a button (separate from the record button) that when enabled would immediately start looping the recording when it is finished recording.

When using the JACK backend, a live input could be any output from a JACK program. This could create some fun possibilities with software synthesizers, Hydrogen, or other programs, especially if Bug #682221 is implemented. Particularly for this use case, it should be possible to toggle PFL for live input decks just as with normal decks.

Revision history for this message
Be (be.ing) wrote :

Hmmm, this could be a way to implement Bug 878549 if live input decks could record from any arbitrary deck in Mixxx.

Revision history for this message
Michael Z Freeman (michael-z-freeman) wrote :

Why not just have the live input going into normal deck functions from the start ? Show the waveform as it comes it, then we can have effects, looping and everything (hey, not even Tracktor has that by the look of it ... just effects !). I guess mixxx would have to start buffering the input from the point it begins coming in (and showing it in the waveform), so that could all be exported as a WAV or whatever. This could also be combined with Bug 878549 to allow a section to be exported based on the loop markers. The only problem there might be is with there being no predefined "end" to the track with a live input. Right clicking on fast forward night just skip to the live incoming part of the audio.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

This is a nice meta bug for discussion, but it is hard to use it for tracking a requested feature, in terms of a TODO.
So would you mind to file any of your ideas into a separate bug?

---

Discussion:

Luckily Mixxx 1.12 alpha has already some features you have requested here.
It supports the following 12 live Inputs in the back-end:

* VinylControl 1 .. 4 (with audio pass-though mode)
* Microphone 1 .. 4 (with ducking features)
* Auxiliary 1 ... 4

All these Inputs are featuring effects, mixer orientation and so on. (exactly what you have seen in the Traktor tutorial above)
We currently just miss a skin which makes all of them usable.
Especially the shade skin need some love. Any volunteers?

I am currently working on an advanced routing of the talkover path. Any comments are welcome at Bug #1414483

Revision history for this message
Be (be.ing) wrote :

Thinking about it more, this interface would be an unintuitive way to implement Bug 878549 (loop recorder). The controls for recording a loop and exporting it should be on

Barney:
"Why not just have the live input going into normal deck functions from the start ?"
You answered your own question:
The only problem there might be is with there being no predefined "end" to the track with a live input.

The only use case I could think of for what you described would be recording the entire auxiliary input separate from the main mix to work with it in production in a DAW later. With the interface I proposed, that could easily be accomplished by just pressing record and not stopping it until the end of the set. For every other case, it would be a big waste of storage space. Unless you are thinking of only keeping the last [arbitrary number] seconds in memory, but I don't really see the point of that. Why would a user want to see the waveform of what they just played a second ago unless they are recording it? Fast forwarding doesn't make sense on a live input and rewinding doesn't make much sense either.

Please correct me if I am misunderstanding your intent. Ideally I think whatever fills the space normally filled by the waveform should not just be pretty filler, but actually useful for playing an instrument over a mix.

Daniel:
Awesome, I was wondering what those undocumented additions to the preferences were.

Revision history for this message
Be (be.ing) wrote :

Whoops, entered the above comment before finishing the top part. I meant:

Thinking about it more, this interface would be an unintuitive way to implement Bug 878549 (loop recorder). The controls for recording a loop and exporting it should be on the deck being recorded, not the deck the loop is being sent to.

Revision history for this message
Michael Z Freeman (michael-z-freeman) wrote :

I took the liberty of renaming the this bug to give a better idea of the requested feature.

Be (be.ing) ... I see what you mean now. It makes sense to have a record button to create a recording of the input, which is then fed into the deck as a new track.

summary: - live input decks
+ Allow recording of vinyl/mic/aux inputs to new track in deck
Be (be.ing)
Changed in mixxx:
importance: Undecided → Wishlist
ronso0 (ronso0)
Changed in mixxx:
status: New → Confirmed
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/7792

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.