Hello all, Thanks for your feedback. I submitted my application last night. At Mr. Santoni's suggestion I made my proposal to rewrite the waveform display. I look forward to potentially working with you this summer :).
Thanks again, RJ Ryan Adam Davison wrote: > Hi Russell, > > Albert gave a fairly complete response there I guess but I just > thought I'd chime in and say that given your rather in depth > experience with Qt and so on perhaps applying to rewrite the waveform > display would be worthwhile. This is something that definitely needs > doing, should be reasonably self-contained and educational for > everyone involved. So out of all of those I'd put my vote in that > direction. > > Adam > > On 31/03/2008, Albert Santoni <[EMAIL PROTECTED]> wrote: > >> Hi Russell, >> >> >> On Sun, 2008-03-30 at 22:15 -0400, Russell Ryan wrote: >> > Hi Mixxx-devel, >> > >> > My name is RJ Ryan. I'm a junior at MIT, amateur DJ, and user of >> > Mixxx. I was glad to see your name on the list of mentoring >> > organizations for GSOC. I'd really like to help out this summer and >> > beyond, and I feel like GSOC would be a good place to get started. Over >> > the past week I've been going over the code, and it's gotten me thinking >> > about various projects and features I would love to see built in to >> > Mixxx (apart from the ones on the ideas page) >> > >> > I'd like some feedback as to which of these ideas are ones you would >> > consider valuable, and which are ones that aren't too important. (Some >> > are big and some are small) I think you'll find as the list goes on they >> > get more and more far-fetched. :) That will help me decide which one (or >> > ones) I'll focus on in my application. >> > >> > - One main thing I see that's missing when compared with other dj'ing >> > apps is an effects panel (per channel). A simple pluggable effects tool >> > would really bring Mixxx up to speed with proprietary apps and also if >> > designed well would blaze a trail for later improvements and possibly >> > user-contributed effects (I'm thinking a DSL or scripted plugin setup >> > here). (the GSOC project I'd propose would be effects units for either >> > channel (or the main mix) with some basic effects you find on mid-level >> > mixers like flange, phase, filter, wah, tape-echo, 2xecho, etc. Also >> > possibly jet/zip like on the CDJ200.) >> >> >> Effects was implemented in the form of LADSPA support last summer by a >> GSoC student (Pawel). The GUI part of it wasn't finished, although he >> may try to finish it some time in the next few months. >> >> >> > >> > - A loop toolbox -- fine-grained control over looping, loop-in, >> > loop-cut, loop-jump, loop-exit, re-loop, etc. It would include visual >> > cues in the waveform output. I'd really love to see these features in >> > Mixxx. >> > >> >> >> Looping is a great feature, but from the under-the-hood point of view, >> it's going to be a big challenge. Looping is more complicated than just >> seeking back to some loop point and playing again. When Mixxx seeks, the >> waveform view incurs a fairly big performance penalty, which can cause >> gaps in the audio when you hit the "cue" button. Looping would have the >> same problem, so addressing this performance problem (and probably >> others) is something that would have to be taken seriously first. It's >> universally agreed that the waveform view needs to be rewritten from >> scratch anyways, so perhaps that's a better summer project. It would >> open up the door for some cool visual integration of the looping as >> well. (It's very awkward to modify the waveform as the code exists right >> now.) >> >> >> >> > - Tempo-bend.. you already have pitch bend, but resampling so that the >> > pitch stays the same while tempo increases is something I'd like to see. >> > >> >> >> We already have this when you're using "pitch-independent time stretch" >> mode. >> >> >> > - For usability and new user orientation, a setup wizard that helps with >> > MIDI configuration and option choices. (this is similar to the one >> > suggested under 'MIDI' on the ideas page) >> >> >> The MIDI configuration/mapping project we listed on our Ideas page >> already covers this to some extent. >> >> >> > >> > - Mix recording feature -- I'm a bedroom dj for the most part, and I >> > like recording my mixes from time to time. The way I've done it with >> > Mixxx is routing jack into an audio recorder, but I think it'd be a nice >> > touch if you could choose to record from within Mixxx. I also notice >> > that you cannot route audio to an external mixer. Since that's also an >> > audio routing problem I imagine that sort of fix would fall under this >> > project. >> > >> >> >> Already in SVN... >> >> >> > - Support for more than 2 virtual decks. -- This probably isn't key >> > whatsoever, but it might be nice if Mixxx supported an arbitrary number >> > of songs/audio sources for mixing. This would help the 'live PA' type >> > DJ's more than the conventional ones. >> >> >> This one's doable, but again, the waveform view is going to be a >> nightmare to work with unless its rewritten. If you want to make a >> contribution regardless of GSoC, it would be helpful if we could scrape >> together a feature specification on the wiki for the new waveform view. >> An example specification can be found here: >> http://mixxx.org/wiki/doku.php/configurable_cue_behaviour >> >> We need to take things like extra channels into account when designing >> it, and I don't want us to forget things like that when someone ends up >> coding it. >> >> >> > >> > - 'hands-free' mode -- While this might be a little off the mark when >> > considering this is a mixing app, many people (a couple even asked on >> > IRC the past couple days) asked for a feature where they could setup a >> > playlist and have Mixxx play songs serially, doing a basic-effort job of >> > mixing them together. While not a feature a DJ would use, it could help >> > improve Mixxx's visibility / reputation if more people use it. >> > >> >> >> "NEXT" mode is all we have right now, and that needs some work too (you >> can get a player "stuck", I forget how). In the past, we've forgone >> "auto-DJ" support in favour of cooler things. Our primary use case is >> the DJ who wants do a set for a few hours in a club, and that usually >> involves manning your decks/laptop for that time. Auto-DJ will be more >> important for us if we start to target other potential users, like radio >> DJs. >> >> >> > - (oh boy) Support for control of a video system as well as a music >> > system. cue/loop video clips and so on to be output on a projector as >> > you're mixing. This probably isn't a GSOC task, but it's an interesting >> > feature from a performance point of view. >> > >> >> >> There's no way this is going to happen in Mixxx, ever. It's an >> interesting feature from a design point of view, because not only do you >> have to be an audio programming ninja, but you also need to be a video >> programming samurai. I can imagine that any sort of video DJing stuff >> would involve clever synchronization of videos with the audio (see the >> new Serato), and that would take quite a bit of thinking to come up with >> a worthy design. Mixxx just isn't built to handle that, and it'd be more >> work to add video support to Mixxx than to write a new application from >> the ground up with that in mind. >> >> >> > Some minor tweaks I would probably approach on my own outside of GSOC >> > - fullscreen mode has always been slightly quirky on my debian box >> > - AFAIK there isn't support for Torq timecoded vinyl or cd. >> > >> >> >> Fullscreen's always been quirky on everyone's computers (Windows, Mac, >> AND Linux! heh). Since SVG is in the cards as a GSoC project (which >> would solve the fullscreen issue), I probably wouldn't hack that in. >> >> Torq vinyls are more or less the same as Ms Pinky vinyls, neither of >> which we support. If you'd like to see support for that in Mixxx, I'd >> suggest adding support for it to xwax, since we borrow some of xwax's >> vinyl control code: http://www.xwax.co.uk >> >> >> >> > Now that I've listed off a bunch of lofty goals, here's what I can use >> > to help contribute: I have experience with C/C++ (over 10 years), >> > multithreaded programming, OpenGL, Qt, and scons. As for real-time >> > performance, I write 3d-game engines as a hobby, so I'm familiar with >> > that problem space :) . Essentially, looking over your codebase I felt >> > right at home. I don't have experience with PortAudio, but I'm a fast >> > learner. >> >> >> Right, so although I shot down most of your ideas, you brought up many >> important features that people want. If I had to suggest a new project >> that's not on the ideas list, I think it might be writing a new waveform >> view widget. It's one of these "gateway projects" that would open the >> door for many other cool projects. That being said, we're all ears and >> I'm willing to discuss any other ideas you have. >> >> Thanks, >> Albert >> >> GSoC Mentor >> Mixxx Core Developer >> Level 32 Ninja >> >> >> >> ------------------------------------------------------------------------- >> Check out the new SourceForge.net Marketplace. >> It's the best place to buy or sell services for >> just about anything Open Source. >> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace >> _______________________________________________ >> Mixxx-devel mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/mixxx-devel >> >> ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ Mixxx-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mixxx-devel
