You are here

The Frivolous Debutante

Can't hold it anymore... :) Since its primordial presentation on the LAC2007@TU-Berlin, almost one year ago, I guess it's finally ready for an official public release. So here it goes.

Qtractor 0.1.0 (frivolous debutante) has been released!

Qtractor development has been going stealthy but has been matured nicely. Still alpha however, but quite practical nevertheless. Or so I believe. Yes, things might get bumpy, faster or slower though, we never know in advance. And quite frankly I don't give a damn whether how it might progress from now. But it will progress, that's what I shall write here engraved ;) Trust me.

Qtractor has been my hobby, kind of personal purpose in life and should stay in that status for quite some time. You probably have noticed there's too many buts in this discourse of mine, and guess what? there follows some more for your pleasant delight.

As long as all its ecosystem bears sustainability; no hidden thoughts; it's all about JACK, ALSA and ultimately Linux that I'm counting on. I've made myself ascertain: I will make no effort, whatsoever, in doing any kind of cross-platform dance. Although it seem feasible, just don't expect that kind of behavior from this side of the party. I'm not obliged to. I'm happy now with what I've got and to what has been achieved in this recent years. Linux is my home and you better get it right, I'm comfortable with it.

It could be seen as my "masterpiece", although you might find I'm no master at all. Take it as my pet project, because, in fact, it is just that, really! If you feel minimally interested, you might want to come along and be welcome. I'll cherish you, that's what friends are. Willing to share the journey, and follow the turns. No commitments, just fun!

Now, after that bunch of BS, let's get the facts straight, right behind the thoughts.

Good grief. As always, everyone is welcome to grab the source and also some selected binary packages, available from the official project site:

Direct link for the source tarball download (also here attached):


For the clueless, a refurbished whitepaper is also available:


Here follows the change-log. as recorded since that one last previous pre-release, which was tagged as (adolescence prime) on the late year:

  • Audio clip time-stretching makes its debut, with code adapted and refactored from the SoundTouch library, under the (L)GPL umbrella.
  • New "Options.../Audio/Playback/Quick seek time-stretching" global option, providing a quick seek mode (hierarchical search) while doing all audio buffer time-stretching.
  • Changing session tempo will automatically apply the corresponding time-stretch percent factor to all in-place audio clips. Audio clip dialog also includes a new time-stretch property setting.
  • Tempo changes are now affecting clip offsets correctly, keeping the clip offset constant in time units (ticks), as are clip start and length properties already.
  • Mixer splitter sizes are now properly saved/restored when hidden.
  • Extended multi-selection is now featured on the files widget; all drag and drop functionality has been almost completely rewritten.
  • SSE optimization is now enabled where available (via configure).
  • Options for having separate dedicated ports for the audition/pre-listening player output, audio metronome output, MIDI control
    input/output and MIDI metronome output, are now in place.
  • A brand new subtle option sneaks in, affecting the drag-and-drop of the main track-view: View/Options.../Drop multiple audio files into the same track, whether to drop multiple external files into new or existing track as concatenated audio clips.
  • The audio metronome makes its debut as an alternative to the MIDI existing one; parameters include bar and beat audio sample files,
    accessible from the View/Options.../Audio/Metronome dialog.
  • Files widget action refactorization; the files context menu gets its due item icons and a new menu item for direct audio player accessibility.
  • MIDI time resolution changes (ppqn, ticks per beat) now tries to keep all session MIDI clip times unchanged as far as possible.
  • MIDI channel volume and panning control change events, CC#7 and CC#10 respectively, are now rendered unfiltered on playback.
  • First rendition of the long due implementation of an audition or pre-listening audio player is now in place; the files window got this new play/stop control button on its lower-right corner.
  • Actual instrument definition note (keys) and controller names are now in effect on the MIDI editor, whenever applicable.
  • Fixed instrument bank selection method, "Bank MSB" (2), which was broken enough to never send the correct bank number.
  • Mouse-wheel horizontal scrolling is now accessible on every view, while pressing a modifier key (Shift or Ctrl).
  • New auto-backward transport option: when enabled the playhead will be reset backward automatically whenever transport stops playing.
  • A suicide-crash has been fixed while invoking the bus dialog from the respective mixer bus strip context menu.
  • Master (default) buses are always set to Duplex mode, being now an enforced update policy while on the Buses dialog.
  • A stupid lockup bug (infinite loop) was spotted on the track bus assignment method and squashed (thanks, lexridge).
  • New keyboard shortcuts for toggling the Connections tool (F8) and the mighty Mixer tool (F9) windows.
  • Avoid showing a context menu while right-clicking on time rulers.
  • Audio clip waveform drawing gets additional closing points.
  • It is now possible to change the length/size of a clip by dragging its left or right edges, while in the main track-view. Shift+drag will also time-stretch to the resulting audio clip length.
  • Another off-by-one mistake was corrected, which was causing audio clips to go out-of-sync on loop turnover boundary; also changed the loop turnaround strategy, now honoring already cached periods.
  • A race-condition has been mitigated in the audio-buffer thread, that was exposed and lead to sudden application freezing upon changing some composite audio clip commands.
  • Take absolute audio peak values only, making peak files a little bit shorter and hopefully faster to load and draw as waveforms.

Ah, never's too late to wish you all a Happy New Year!

Cheers && Enjoy


Great software, Your qtractor seem no bad, do it can support synchronization with sequencer? (or I don't know something), as some windows software (like drumtools performance designer), I think this feature should be useful. Good project, Thanks.

rncbc's picture

Qtractor does synchronize with other applications via the JACK transport protocol. And that's not an option. It just does. One example of such application, that I guess is comparable to your suggestion, is hydrogen.

OTOH, not quite for synchronization purposes but related, is that Qtractor is fully MMC enabled. Ultimately, MTC and MIDI clock support is planned but is lacking personal opportunity and the time :)

rncbc aka Rui Nuno Capela

Looks like it's worth a shot. I'll try it.

Thanks for finally publishing. Will definitely give it a shot!

Tested it and it works fine. Thanks for posting. However, the look and feel could be better as it is a little cluttered I feel.

Tested it and it works fine - agree!

Add new comment