-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support NI Stems #7935
Comments
Commented by: Pegasus-RPG Why limit it to NI? We were taking about doing this years ago: http://mixxx.org/forums/viewtopic.php?f=1&t=3018 |
Commented by: Pegasus-RPG Also https://blueprints.launchpad.net/mixxx/+spec/multi-channel-files |
Commented by: ywwg NI announced a specific file format for this situation, so this bug is about what would be required to support that format. Yes some of the features needed to support this format could also apply to multichannel files in general. |
Commented by: Pegasus-RPG I suspect all of the same blueprints apply. Once that work is done, this bug would just involve adding support for another file format. (I just wanted to call your attention to the existing blueprints so you don't duplicate work.) |
Commented by: ywwg Cool good to know |
Commented by: ferranpujolcamins I've thought about some kind of remix decks counterpart several times last year. Remix decks are nothing more than 4 mini decks (with its individual filter and volume controls) that are routed to the same standard mixer channel. We support n-decks each with its full mixer channel, so we have actually already overcome that. Even if we provide a GUI with 32 decks with few controls for space reasons, users could still map their controllers to use the full mixer controls for each Mixxx deck. The other two main features of remix decks are:
Possible solutions:
Additional "secondary" remix decks features: |
Commented by: daschuer I think you N-Deck approach does not relay fit to Stems files because of the missing common transport region. Currently Mixxx decks support the left and right channel. For me this use case make sense: If you need individual transport for each stam channel for a fancy remix, you can load the same stam file to a second deck and select a different set of channels. Since bot decks have the same beatgrid, playing them in sync should already work. |
Commented by: daschuer We will have a problem to distribute a NI-Stem enabled version of Mixxx, because it is mp4 based. |
Commented by: Be-ing Here is a video from NI talking all about Stems: https://www.youtube.com/watch?v=MntkrfNAQ6w It will use an MP4 container with either AAC or ALAC codecs. Additionally, there will be some metadata specifying details about compression for each stem to mimick mastering when they are mixed differently. It seems to be the responsibility of the program playing the Stems file to apply the compression on-the-fly. |
Commented by: Be-ing A developer toolkit will be available from NI sometime this summer from here: http://www.stems-music.com/stems-is-for-developers/index.html
|
Commented by: ywwg Yeah when I watched the video I realized I could hear sidechaining, and suddenly the whole thing got way more complicated. |
Commented by: ywwg This screenshot reveals some of the details about the (sidechain?) compression options available: http://www.residentadvisor.net/news.aspx?id=31019 |
Commented by: ferranpujolcamins
|
Commented by: ywwg I'm in contact with the Stems people, I'll let you know what I find out. |
Commented by: daschuer A Stem file is a five tracks mp4 container usually encoded in AAC 256 kbps VBR or ALAC. If you like to distribute Mixxx with an AAC decoder like libfaad, you have to pay for the included patents. ALAC was released under the Apache license which contains a patent grant. |
Commented by: Be-ing The Stems SDK is finally available, but it's not free software: :( |
Commented by: Be-ing There's still the possibility of reverse engineering or clean room design, but we should seek a lawyer's advice before trying that. |
Commented by: Pegasus-RPG That agreement reads to me that the Stems format itself is open, but the DSP processing library is the licensed portion. |
Commented by: Be-ing I don't think so: I don't see any documentation for the format available without agreeing to that. |
Commented by: rryan We can reverse engineer this format from files alone -- anyone who wants to be involved in supporting stems in Mixxx, do not download or agree to the SDK terms. |
Commented by: rryan
Publishing our own open format is certainly an option we should consider if NI is unwilling to make the terms of using their format acceptable. MP4/AAC is no problem on Windows and Mac. It's just problematic on Linux -- and some distros will give their users the option to include libmp4v2 / libfaad. That's the choice of the user and the distro. At least we can offer Debian packages that depend on libmp4v2 via our PPA and website -- even if Debian cuts them out when included in their repos that's their choice. |
Commented by: neufeind I just also found some older information on a wiki on the mixxx-site that tried to summarize work needed (or at least one way to do it). Is that still up-to-date? Otherwise maybe it could be adjusted: Thread on the forum: |
Commented by: daschuer It is almost up to date even though it is form 2012. |
Commented by: Michael-Z-Freeman I saw R J Ryan's comment above. What exactly is the conflict with their license / binary blob and how is that solved by reverse engineering ? Actually why do they even have some DSP closed source code of some kind at all ? I thought it was just MP4 with 5 audio streams in it so I don't see what wonderful IP invention they could be protecting. Anyway the alternative is to support a truly open STEM format (FLAC, and so on) and then its probably very easy for the Mixxx user to convert from MP4 STEM to FLAC (or whatever) STEM. |
Commented by: Michael-Z-Freeman I just checked and did not realise that Mixxx can already import multi channel FLAC ? At least according to the bottom of this page: https://blueprints.launchpad.net/mixxx/+spec/ni-stems I just did a quick test of Audacity and it imports all 5 stereo streams OK from MP4 STEM, some free one's and one free download from NI themselves. So Audacity have either found a way round the restrictive license or have reverse engineered the format. |
Commented by: Be-ing As far as I understand the files are standard MP4 files with multiple channels, but the DSP library is needed to properly process them for playback. I'm not sure what exactly it does. |
Commented by: clidx
Has there been any further thinking on this 3 years later? |
Commented by: Be-ing
No. |
Reported by: ywwg
Date: 2015-03-31T15:05:03Z
Status: Confirmed
Importance: Wishlist
Launchpad Issue: lp1438746
See http://djworx.com/stems-open-format-multi-track-songs-from-ni
Obviously there is nothing concrete yet -- no format, no specs, etc, but the basic outline is known: four tracks in one file that play in sync and can be independently looped / cued / etc. Supporting these files requires some analog for Traktor's remix decks, which seem to just be like four regular decks or samplers that are always at the same bpm.
Full support will require major work, but we might be able to get bare-minimum support in (load either full mix or individual stems) with hopefully not too much effort. Likely the actual audio encoding will be something preexisting like FLAC.
Actual design should happen on https://blueprints.launchpad.net/mixxx/+spec/ni-stems
The text was updated successfully, but these errors were encountered: