Qtractor 0.7.8
by Rui Nuno Capela
(Rui Nuno Capela Website)
Owned by user Stacey

Download Now

Operating System:
File Size: 1.1 MB
Last Updated: 2016-07-04
For more detail about software : Software Description
  View Qtractor 0.7.8 Screenshot

Software Description

Qtractor is an MIDI and Audio multi-track sequencer. It was written programmed in C++ with the Qt4 framework [1]. Qtractor is designed for Linux, compatible with the prominent Jack Audio Connection Kit (JACK) for audio [2] and the Advanced Linux Sound Architecture (ALSA) for MIDI [3] infrastructures. This is created specially for people who do personal home recordings.


  • Multi-track audio and MIDI sequencing and recording.
  • Developed on pure Qt4 C++ application framework [1] (no Qt3 nor KDE dependencies).
  • Uses JACK [2] for audio and ALSA [3] sequencer for MIDI as multimedia infrastructures.
  • Traditional multi-track tape recorder control paradigm.
  • Audio file formats support: OGG (via libvorbis [6]), MP3 (via libmad [7], playback only), WAV, FLAC, AIFF and many, many more (via linsndfile [4]).
  • Standard MIDI files support (format 0 and 1).
  • Non-destructive, non-linear editing.
  • Unlimited number of tracks per session/project.
  • Unlimited number of overlapping clips per track.
  • XML encoded session/project description files (SDI).
  • Point-and-click, multi-select, drag-and-drop interaction (drag, move,drop, cut, copy, paste, delete, split)
  • Unlimited undo/redo.
  • Built-in mixer and monitor controls.
  • Built-in connection patchbay control and persistence (a-la QjackCtl [13]).
  • LADSPA [5], DSSI [11] and native VSTi [12] plug-ins support.
  • Unlimited number of plug-ins per track or bus.
  • Plug-in presets, programs and chunk/configurations support.
  • Audio/MIDI clip fade-in/out (linear, quadratic, cubic).
  • Audio clip time-stretching (WSOLA-like or via librubberband [9]), pitch-shifting (via librubberband [9]) and seemless sample-rate conversion (via libsamplerate [8]).
  • Audio/MIDI track export (mix-down, merge).
  • Audio/MIDI metronome bar/beat clicks.
  • MIDI clip editor (piano roll).
  • MIDI instrument definitions (a-la Cakewalk(tm) [15])
  • JACK transport sync master.
  • MMC control surface enabled.
  • Configurable keyboard shortcuts.

New in v0.7.8

  • MIDI file track names (and any other SMF META events) are now converted to and from the base ASCII/Latin-1 encoding,
  • MIDI file tempo-map and location markers import/export is now hopefully corrected
  • Introducing LV2 UI Show interface support for other types than Qt, Gtk, X11 and lv2_external_ui.
  • Prevent any visual updates while exporting (freewheeling) audio tracks
  • The common buses management dialog (View/Buses...) sees the superfluous Refresh button finally removed, while two new button commands take its place: (move) Up and Down.
  • LV2 plug-in Patch support has been added and LV2 plug-ins parameter properties manipulation is now accessible on the generic plug-in properties dialog.
  • Fixed a recently introduced bug, that rendered all but one plug-in instance to silence

New in v0.7.4

  • Eye-candy warning: muted/non-soloed tracks are now shaded over the main thumb-view.
  • Faster and crispier VST plugin editor (GUI) idle cycles.
  • Improved Mixer multi-row layout (patch by Holger Marzen aka. bluebell, thanks).
  • Added one decimal digit to all percentage input spin-boxes on the MIDI Tools dialog.
  • Try making Help/Shortcuts... dialog window modeless, as far as under MIDI Controller, Inputs/Outputs Connections window also gets accessible enough.
  • Added brand new and global option to disable the so called "catch-up" default behavior (cf. View/Controllers.../Sync).
  • Added one decimal digit to the Pitch-shift spin-box on audio Clip/Edit... properties dialog window.
  • Added application keywords to freedesktop.org's AppData.
  • Fixed some track control issues related to MIDI Controllers generic mapping (cf. View/Controllers...).
  • Fixed some vertical scrolling and play-head line re-drawing glitches introduced by the recent unlimited slack to editing beyond current contents length on main tracks view.
  • Fixed local keyboard shortcuts on the Files organizer widget actions and context-menu.
  • Fixed all core processing when any plugin has more audio outputs than channels on a track/bus where it's inserted.
  • Fixed the Ctrl+drag/cloning left of a clip when towards near the beginning of session.

New in v0.7.0

  • Introduction of MIDI controller mapping

New in v0.6.7

  • New MIDI instrument rendering on audio export
  • New MIDI clip editor view/event criteria persistence
  • New Generic plugin form position persistence
  • New JACK Transport/Timebase master option
  • Bugfix for MIDI clip editor resilience on record/overdub
  • Various other minor bugfixes

New in v0.6.6

  • LV2 and VST plugins GUI position persistence
  • Bugfix forMIDI clip editor record/overdub note rendering
  • VST plugin recursive discovery/search path (NEW)
  • Bugfix for VST-shell sub-plugins support
  • Various other bugfixes

New in v0.6.5

  • MIDI clip record/overdubbing
  • Extended track multi-selection for mute/solo.
  • Support for VST-shell sub-plugins.
  • Bugfix for JACK transport start/stop resilience

New in v0.6.2

  • MIDI Controller assignment (aka MIDI learn) and/or automation of plugins (de)activation state has been added
  • Added LV2 UI Idle and Show interfaces
  • Bugfix for LV2 preset save states
  • Added man page
  • Prevent linear and spline automation
  • Bugfix for plugin moving
  • Directory changes
  • Re-adjust automation curves to tempo map changes
  • Various other bugfixes and improvements.

New in v0.6.1

  • New user preference option added as View/Options
  • Proper titles for all color chooser dialogs
  • Bugfix and cache optimization for audio peak file re-generation and clean-up cache
  • Bugfix for initial session snap-per-beat setting on main toolbar.
  • Clip/Export...'ed files are now made persistent
  • Portuguese (pt) translation added

New in v0.6.0

  • New user option added
  • New user preference option
  • Many more enhancements and bugfixes.

New in v0.5.11

  • Extended automation curve editing
  • Extended clip selection
  • LV2 UI resize feature support
  • Fix for aux-sends to audio buses
  • Fix for MIDI editor overlapped event velocity/value
  • Fix for accidental export muting and/or freezing

New in v0.5.10

  • Show Default drum-key note names properly on MIDI tracks assigned to known drum/percussive instrument patches
  • Change Time display format (frames, clock-time or BBT) from the context-menu on any time entry spin-box.
  • LV2 plugin support tied better to liblilv; also applies to LV2 plugin UI support and libsuil and vice-versa.
  • Mixer buses racks (ie. left/input and right/output panes) are kept fixed-width when whole mixer window is resized.
  • Unconditional LV2 Dyn(amic)-manifest support has been added.
  • Automation's back in effect on Track/Export Tracks.../Audio.
  • Reversed shift/ctrl keyboard modifier roles on middle-button clicking over the main track and MIDI clip editor views (aka. piano-roll)
  • Color selection actions now have a brand new palette icon.
  • Make sure main track-view and MIDI clip editor selection is only cleared on specific discrete commands.
  • Try keeping the original session file in most recent files menu list, despite current version auto-incremental backup mode is in effect.
  • Fixed non-zero clip offsets upon tempo/time-scale changes.
  • Some sympathy to extreme dark color (read black) schemes is now indulged on empty backgrounds.
  • New Main track-view Edit/Insert,Remove/Range dialog applicable to Clips, Loop, Punch in/out, Automation, Tempo-map and/or Markers.
  • New range removal editing tool
  • Andy Fitzsimon's original icon from opencliparts.org makes it through as the default standard scalable format (SVG).

New in v0.5.9

  • Now supports NSM
  • Fix for Audio buses plugin state restoration
  • Fix for MIDI channel file merge/export
  • New MIDI editor rescale mode
  • Now with German translation

New in v0.5.8

  • Improved precision tolerance on the Tempo Map / Markers dialog.
  • Dropped old audio ramping spin-locks
  • Audio bus and track gain may now be set for amplification again
  • Basic LV2 X11 UI support has been added through libSUIL
  • Bugfix for warning and impending re-conversion on loading session files
  • Bugfix for nnull pointer crash
  • LV2 Plugin State/Preset name discrimination fix
  • Visual feedback is shown while audio track export is running
  • Other improvements and bugfixes

New in v0.5.7

  • LV2 Options and Buf-size support
  • Location markers/bar
  • MIDI editor line-drawing
  • Bugfix for Punch & loop recording compatibility
  • Untangled LV2 UI parameter communication
  • Dropped libSLV2 support, honoring libLILV for good

New in v0.5.6

  • LV2 State Files support.
  • Unused files clean-up removal.
  • Edit/Insert empty range.
  • MIME Document types and icons.
  • Improved plug-in state resilience.
  • Now with French and Japanese translations.

New in v0.5.5

  • Auto-monitored MIDI tracks were missing their pass-through to their respective MIDI output bus plugin chains, now fixed and letting any multi-timbral instrument plugin to get a peek from auto-monitoring.
  • New user option/preference to whether to open a plugin's editor (GUI) by default, when available (cf. View/Options.../Plugins/Editor).
  • Clicking and/or dragging for rubber-band selection on main track-view canvas doesn't change the edit-head and -tail positions anymore.
  • Backward and Forward transport commands now have an additional stop at first clip start point.
  • LV2 Atom/MIDI buffering support is finally entering the scene; LV2 Worker/Schedule support is also included in a bold attempt to convey non-MIDI event transfers between plugin and its UI.
  • MIDI Clip editor (aka. piano-roll) and MIDI Tools fix: avoid note-on events of zero velocity, which conventionally equates to a dangling note-off event and dropped into oblivion sooner or later. There's no more need for Shift/Ctrl keyboard modifier to change in one single step all the MIDI events that are currently selected (now consistent with drag-move).
  • LV2 Presets support now entering effective operational status; a new local option has been added (cf. View/Options.../Plugins/Paths/LV2 Presets directory; default is ~/.lv2).
  • Dropped XInitThreads() head call as it was never useful but on those early days of JUCE VST plugins.
  • Italian (it) translation added (by Massimo Callegari, thanks).
  • Clip fade-in/out dragging now follows snap-to-beat setting.
  • Late modern eye-candy indulgence: alternate shaded stripes, on every other bar as in a "zebra" background option for the main tracks and MIDI clip editor views (cf. View/Snap/Zebra).
  • LV2 Time/position information is now being supported through special designated plugin input ports (after suggestion by Filipe Coelho aka. falktx). Additionally, the time/position information report has been corrected and complemented for VST plugins.
  • Audio vs. MIDI time drift correction has been slightly improved against rogue tempo changes across looping cycles.
  • Honor tempo/timing on MIDI instrument plugins. Happy regression fix on getting MIDI note-offs at looping ends back in business; all the necessary bumming for MIDI plugins to play nice in face of tempo changes and whenever playback is started from anywhere but the beginning of the time-line (ie. frame zero); thanks to rvega aka. Rafael Vega, for the heads-up).
  • Audio clip wave-forms were being displayed in inverted phase (ie. upside-down) all this time ever since day one. What a shame! :)
  • LV2 Programs interface is getting initial experimental status, to let LV2 instrument plugins get on par with the DSSI and VST crowd for MIDI bank/program instrument inventory and selection support (a sidetrack complot with Filipe Coelho aka. falktx, thanks:).
  • Dropped the old but entirely useless LV2 URI-unmap feature, now being superseded by official LV2 URID (un)mapper.
  • Russian (ru) translation added (by Alexandre Prokoudine, thanks).
  • SLV2 deprecation process started, effective now at configure time.
  • Added include to shut up gcc 4.7 build failures (patch by Alessio Treglia, closing bug #3514794).
  • Another approach avoiding recursive observer widget updates. Also applies to mixer, monitor and track state buttons.
  • Update to latest LV2 state extension (by David Robillard, thanks).
  • Loop-recording/take number displayed on clip title, respectively.
  • Make(ing) -jN parallel builds now available for the masses.
  • A one buffer period slack on audio engine's loop turn-around logic might just have fixed an illusive report on loop-recording/takes going progressively out-of-sync, most notably when recording under large audio buffer period sizes (>= 1024 frames/buffer).
  • Editing MIDI while playback is rolling, doesn't mute the track any more, adding a point to the live editing experience.
  • Finer granularity for direct access parameter mouse wheel changes.
  • Dropped a dumb optimization for short full-cached multiple linked /ref-counted audio clips which were incidentally out-of-sync after rewind/backward playback.
  • Once again and uncertain to be the last take on this, got fixed (probably related to some oddity reported by Louigi Verona, thanks).

New in v0.5.4

  • Panic command button
  • Improved audio/MIDI file resource management
  • MIDI SysEx for instrument plugins
  • MIDI Controller auto-hook option
  • MIDI Tools resize ramp
  • Revised plugin search directory paths
  • MIDI zero-duration note-on/off queuing
  • Audio linked-clips looping

New in v0.5.1

  • Ref-Counted MIDI and Audio clips
  • Pseudo-plugin (Aux Send)
  • Direct Access parameter
  • MIDI player
  • Czech translaation
  • Audio ports and bus connections
  • MIDI-FX Plug-in supported
  • Improved native Linux VST support, generic plugin form and JACK session support.
  • Automatically time stretch audio clips on tempo map changes

New in v0.5.0

  • TYOQA! Audio/MIDI track and plugin parameter automation (NEW)
  • MIDI controller catch-up behavior (NEW)
  • All zooming in/out relative to views center (NEW)
  • Audio gain/panning smoothing changes (FIX)

New in v0.4.9

    Mainly a big fix and optimization release. Yes, you've read that right. Big. Some earthquake-bound changes have sneaked in and all under the hood. Most are bearable visible, if at all. Quite frankly, the most time-critical code paths have been subject to some kind of a deep overhaul, and to say the very least, might get only noticeable while loading hugely complex sessions. Whatever that means. In other words and put simply, there are gentle performance wins and nice resource savings.

  • MIDI scale-quantize and snap-to-scale tools (NEW)
  • Audio recording latency compensation (NEW)
  • Mute/un-solo tracks shading (NEW)
  • MIDI controller invert value and connects access (NEW)
  • Tempo map dialog tap helper (NEW)
  • Audio peak/waveform generation pipeline (NEW)
  • Track-view clip invert selection (NEW)
  • MIDI clip editor range selection (NEW)
  • Major audio clip buffering/streaming thread optimization (FIX)
  • Temporary JACK session extract directory (FIX)
  • Red shade recording display (NEW) and looping (FIX)
  • Audio clip over-extended ghost-playback (FIX)
  • MIDI tempo map resolution import (FIX)
  • Audio/MIDI time drift correction (FIX)
  • Changed bus connections preservation (FIX)
  • Simultaneous multi-track recording result extents (FIX)
  • Track-view selection and redrawing optimization (FIX)
  • LV2 instrument/synth on audio tracks crash (FIX)

New in v0.4.8

  • MIDI controller mapping/learn is now possible on all mixer controls (monitor, gain, panning, record, mute, solo).
  • An internal rewrite (aka. refactoring) have been carried out, making sure that all track state action buttons (R, M, S) are now all under the observer pattern umbrella.
  • Single track range selection is now available on main menu (Edit/Select/Track Range; default keyboard shortcut: Ctrl+Shift+R); additionally to vertical range and horizontal track actions (Edit/Select/Range, Track) all these operations can now toggle over the previous selection.
  • Direct clip selection from Files list item has been brute-forcefully implemented (after being challenged by Jiri Prochaszka aka Anchakor:).
  • Files tree widget sticky "New Group" item fixed.
  • A new menu option has been added (View/Tool Tips) to show/hide a floating tool-tip while dragging, moving, resizing or pasting selected clips or events over the main tracks view and MIDI clip editor (piano-roll) respectively, displaying current target position and status.
  • Attempt to reset audio/MIDI time drift compensator on every engine start and loop turnaround.
  • Moving the punch-out marker over the main track time ruler was failing to shrink the punch-in/out range, now it does (not).
  • MIDI clip tools (quantize, transpose, normalize, randomize, resize, rescale and the new timeshift) are now all accessible from the main tracks view (Edit/Clip/Tools menu) and apply to all events on current selected clip(s).
  • LV2 Persist extension support is being introduced.
  • A new timeshift MIDI tool has been added, after an awesome patch by Jiri Prochaszka aka Anchakor; applies to selected events between edit markers, distorting their time and duration (optionally), either slowing down and accelerating, based on a given parameter P value.
  • Audio clip/buffer pitch-shifting fixes with regard to latency correction due on the RubberBand library one-pass (real-time) processing mode.
  • New Send Gain and Dry/Wet control parameters have been implemented for audio Inserts pseudo-plugins.
  • MIDI channel/master volume enqueued events are now affected by the current track/bus volume (0-100%).
  • Prevent old rounding error when resetting to plugin parameter default value with the mouse middle-button click while hovering a slider widget (observer).
  • A quantize percentage has been added to MIDI clip editor quantize tool (Tool/Quantize...) for time and duration quantization (0% for none; 100% for full regular quantization).
  • Metronome bus/ports are now created at engine start and not when user switches it on anymore.
  • Make sure all audio clip buffers are in sync upon smooth-ramping going off and playback is rolling.
  • Copy-pasting across controller event types is now possible on the MIDI clip editor (aka piano-roll).
  • Finally indulged, the genuine transport stop button makes its appearance on main toolbar and menu.
  • Main tracks grid visibility option (View/Snap/Grid).
  • Yet another off-by-one (frame) audio buffer bug got squashed away: rare symptom was that some audio clips were being left dead silent right after playback of their first looping period.
  • Plugin parameter name/label now a proper attribute of its respective MIDI Controller observer instance, allowing to be shown on dialog title (MIDI learn).
  • Default session file format saved on JACK session demand is now the bundle archive/zip one (.qtz).
  • Plugin selection dialog now shows whether a plugin features its own editor (GUI) and/or external state configuration (EXT).
  • Help/Shortcuts... window positioning and sizing are now preserved.
  • All plugin chain changes over the track properties dialog now sure counts as a dirty action (possibly fixing bug #3104129).
  • Newly extracted archive/zip session directories are now removed automatically from the file-system on session close, prompting the user for confirmation (cf. View/Options.../Display/Confirm Removals).
  • Ctrl+mouse-wheel is now set for zooming in/out, on main track-view and all applicable MIDI clip editor views (piano-roll), according to current zoom mode (see View/Zoom Horizontal, Vertical or All for both ways simultaneously).
  • New MIDI clip editor (piano-roll) mouse hovering effect (eye-candy++).
  • After too many a user request, a brand new session archive file type is being introduced (.qtz) which tries to bundle in one single zip archive all the media and contents of a session.
  • Add that to eye-candy: either loop or punch-in/out outer ranges are now shaded on the main track-view, thumb-view and MIDI clip editor (piano-roll) views.
  • LV2 GTK UI plug-in hosting is now roaring its ugly head (EXPERIMENTAL).
  • Ignore all initial and decremental notifications of audio engine's buffer-size changes.
  • Internal audio buffer loop points were not being set properly for non-zero clip offsets, leaving some as severely out-of-sync while rolling over loop turns. Now fixed again, hopefully.
  • Avoid audio peak file clashing when deriving from audio sample files with distinct absolute paths but the very same file (base)name.
  • A new MIDI editor (piano-roll) tool has been added: Rescale event times, durations and/or values by a percentage between 1 and 1000% (adapted thanks to patch #3081954, by Jesse Lucas).
  • Attempt to mitigate audio clip sequencing glitches on single-core/single-thread machines.

Previous Updates:

  • While moving multi-selected MIDI events around the clip editor (aka piano-roll), with help of keyboard arrow keys, that is, was not clear which one was the so-called "anchor" event, the one which positioning gets honored for snap-to-beat business. Not anymore: the anchor event now defaults to the earliest in time or the one the user's last point(-click)ed.
  • MIDI control observer pattern implementation has sneaked in, making it
    ready for the so-called and long-awaited "MIDI Learn" feature and arbitrary MIDI controller assignment, for plugin parameters in particular.

  • MMC DEFERRED PLAY doesn't cause transport state to stop if currently rolling (mitigating bug #3067264).
  • Audio clip merge processing might have been skipping a few initial frame blocks, now fixed.
  • Clip selection and plugin parameter hash optimization.
  • Anti-glitch audio clip macro fade-in/out fixed again.
  • New clip fade-in/out slopes (curves) are introduced, partially adapted and refactored from those easing equations of Robert Penner's fame.
  • Clip fade-in/out non-linear slopes are now shown as actual WYSIWYG curves.
  • Escape key now closes generic plugin widgets as ever found usual elsewhere.
  • Picking nits: unselect current track when clicking on any gray empty area, also accessible from a new menu item: Track/Navigate/None.
  • A nasty and deadly MIDI resolution overflow has been finally fixed, allowing for long MIDI sequences (1h+) to load correctly on 32bit machines from now on (was perfectly fine on 64bit though).
  • MIDI editor selection hash optimization in face of reasonably huge event sequences.
  • MIDI controller mapping finally refactored to support some other MIDI event types than just CC (0xBn) ones.
  • Nitpicking fix: corrected main track-list (left pane) display when no track is currently selected.
  • libX11 is now being added explicitly to the build link phase, as seen necessary on some bleeding-edge distros eg. Fedora 13, Debian 6. (fixing bug #3050944).
  • New audio metronome bar and beat sample gain options.
  • Progressively, the observer pattern is being finally introduced, targeting all potentially automation controls and widgets as plain ground-zero for the (ultra-)long overdue automation feature.
  • MIDI controller mapping of still non-existing tracks were being implicitly assigned to the last, highly numbered, existing track. Now fixed.
  • Moving from old deprecated Qt3'ish custom event post handling into regular asynchronous signal/slot strategy.
  • Muting/soloing tracks while playback is looping was leaving current audio clip out-of-sync whenever that same track is later un-muted on any other preceding clip. Now hopefully fixed.
  • MIDI Clock support makes its first appearance.
  • All tempo (BPM) calculations are now compliant to the MIDI conventional equivalence between beat and quarter note (1/4, crotchet) as common standard time division.
  • Automatic audio time-stretch option is not enabled by default anymore.
  • Standard warning Apply button is now only shown when dismissing dialog changes are actually valid.
  • Make sure non-dedicated metronome and player buses are properly reset and reopen when changing regular audio buses (hopefully fixing bug item #3021645 - Crash after changing audio bus).
  • Hopefully, an outrageously old bug got squashed away, which was causing random impromptu crashes, most often when importing audio clips while looping and play-head is any near the loop end point.
  • General standard dialog buttons layout is now in place.
  • Fixed main track view off-limits play-head positioning.
  • Main tool-bar Time and Tempo spin-boxes, may now have their colors correct, as for most non-Qt based theme engines (ie. Gnome). Green text on black background has been and still is the the intended aspect design ;)
  • MIDI file import and internal sequence representation has been changed to be inclusive on all bank-select (CC#0,32) and program-change events which were previously discarded while honoring MIDI track properties. Interleaved SysEx events are now also preserved on their original sequence positions instead of squashing a duplicate into the MIDI bus SysEx setup.
  • Attempt to include the VeSTige header by default, as for minimal VST plugin support.
  • JACK transport support has been slightly rewritten, in fact the sync callback is now in effect for repositioning.
  • The MIDI clip editor (piano roll) widget won't be flagged as a tool window anymore.
  • A tempo adjustment tool is making inroads from the menu, as Edit/Clip/Tempo... (factory shortcut: F7).
  • Audio tracks auto-monitoring is now effective on playback.
  • Make sure to ask whether a dirty MIDI clip should be saved, upon resizing or stretching its edges (fixes bug #3017723).
  • Backward and Forward transport commands are now taking additional stops on loop points.
  • Attempt to optimize track solo/mute redundant transactions, in special regard to MIDI track events which were being duplicated on soloing and temporarily muted on unsoloing.

Source code and other distribution packages are available at http://sourceforge.net/projects/qtractor/files/

Syndicate content