Greetings, Mixxx developers! I'm using Mixxx 1.7.2. I tried 1.8, and promptly reverted back.
In order to do nice mashups, I hacked a nifty little thing into it that allows one to navigate synchronously in each track, based on the BPM: move by 1/4, 1/2, 1, 2, 4, 8, 16, 32, 64 and 128 beats, either forward or backward, for each track. It's exactly what I needed, I'm having a lot of fun with it. I'd submit a patch, but for one small UI problem: it needs a huge chunk of the keyboard! I'm using 20 keys for *one* track, with a shift modifier for the other track. But I also got a glimpse of the innards of Mixxx in the process, and now I'm wondering: How does this thing even *works*? OK, to be fair, I'm not used to C++. But the way I see object- oriented programming, it's supposed to be modular with small, well-defined interfaces. So I guess there must be such an interface to the sound engine. When hacking my thingy, it didn't strike me as obvious. Then again, maybe it's a FAQ. The reason I'm asking is twofold: First, I'm moving around the track using slotControlSeekAbs(), and it works fine, except when it doesn't. I've got all sort of weird bugs where it seeks to the wrong spot, or the audio is suddenly not in sync with the wave display for a few seconds. Am I supposed to use another method? Second, I now need another functionality, and it seems I'm going to have a much harder time hacking *that* in: I want to change the pitch of a track without changing its tempo. Right now, I set "Pitch behaviour" to "Vinyl emulation" (because "Pitch independent time stretch" sounds like c**p), and thus the pitch and tempo change simultaneously when I change the rate of the track. In theory, if I combine both modes (VE and PITS) I could change the pitch without changing the tempo. In practice, I use Sox to manually change the pitch of the tracks in advance when I need it. It's 20 minutes of intense brain activity. log(rate)/log(2)*12*100, that kind of stuff. I don't want that: I want a slider in the GUI. How hard should that be? Mikael ------------------------------------------------------------------------------ Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Mixxx-devel mailing list Mixxx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mixxx-devel