You are here

qtractor pitch bend

HI, I'm trying to migrate to linux for preparing a show and performing live. It's been a time consuming process going through all the daw's to find out if they are suitable. Right now I'm working with qtractor which I was starting to think would work out until this hiccup. Qtractor is ignoring pitch bends in midi tracks. I have no idea how to fix this or why it is happening. I've tested other software under linux with the same midi file and the same plugin, and it works. I was really hoping qtractor would work out because it is possible to save complete track setting from one project to another giving my backup "band" consistency from song to song. Please help!!! thank, Robb

PS using qtractor 0.9.114 appimage on mint that is setup for audio.

rncbc's picture

hi, I'm sure qtractor does not such thing: it doesn't ignore MIDI pitch-bend whatsoever.

how and why are having that perception? what is that plugin and how is it inserted on your case?


Hi, the plugin is fluidsynth. I guess I could send you a screen capture of the track. The midi file does indeed have pitch bend can open the midi editor in qtractor and see the data. It just doesn't apply it when you play it back.

rncbc's picture

fluidsynth per se is not a plugin but a standalone command-line soft-synth... it might be very possible that it's the soundfont (*.sf2) that it's being loaded that doesn't actually recognize MIDI channel pitch-bend messages...

if they are in the MIDI file then for sure qtractor does send them to fluidsynth, or to any instrument plugin, external standalone or outboard sound module for that matter.



Thanks for the info. Do you know what the parameter is called on soundfonts to enable pitch bending? I can edit soundfonts on polyphone

rncbc's picture

it's about the standard MIDI channel pitch-bend message; don't know what that translates on the SF2 specification...

however, you said it worked on other software: try to to compare on the very same subject please: same soundfont and instrument, plugin or standalone.


If you've been able to get qtractor to pitch bend using a linux soft synth I want to hear about it because I think it doesn't work. Not only does qtractor not implement the bend, but it completely skips the note that contains a bend. I have not tried creating a midi track and recording a pitch bend into the recording, but while importing midi files, it doesn't work PERIOD.

rncbc's picture

please show some evidence: the MIDI file you're trying and claim that is not working; and the precise plugin or soft-synth and soundfont (.sf2) you're using. I'm sure we can look into it and see what and where is the problem you're facing. sincerely.

OTOH. MIDI notes per se doesn't contain any pitch-bend information whatsoever... pitch-bend are in fact separate event messages that apply to ALL notes that are possibly playing at one time on a given channel. It is responsibility of the instrument plugin or standalone soft-synth to apply and render the pitch deviation as whole to all active voicing oscillators; qtractor just writes the MIDI events into the plugin or instrument module as input, then routes the output audio PCM signal that is produced in due response to those MIDI messages.

If it is not working, or it seems not to, as you say, then it could be one of several reasons: a) there are no MIDI pitch-events on the file, track or channel; b) the instrument (or soundfont) is not coping, ignoring, missing or otherwise not sensitive to MIDI pitch-bend events. etc.


Ok.....I'm providing the exact midi file, and the exact soundfont. It doesn't have to be this exact soundfont, it doesn't work on any. For simplicity, we'll focus on the the track that defaults to channel 11 which is the lead guitar for the file Hotel California. Will not bend in fluidsynth or carla. Thanks.....

rncbc's picture

hi, thanks for sharing the files.

well, just tested with a new qtractor session, import "Eagles_(The)_-_Hotel_California.mid", soloed track 6 on MIDI channel 12, while driving a qsynth instance with "xanadu_guitar.sf2"; hit play and listened, while watching in the MIDI clip editor piano-roll for the first occurrences to "Pitch Bend" events which only start appearing on bar 31 (~00:01:37) on-wards... see screenshot below.

long story short, it all played well as intended, meaning that, although subtle perhaps, the guitar note bends could be heard.


I wasn't using qsynth. This doesn't solve anything. It still doesn't work for me.

rncbc's picture

whatever you were using, i guess the root cause for your problems might be in that precise end of the plot then.
just a thought. definitely not a qtractor issue, i say.


btw, this midi file when played on ableton live, the guitar has a pitch bend range of 12 semitones.....nothing subtle about it.

rncbc's picture

again, that is a setting on the MIDI instrument end, possibly named "pitch-bend range" or "sensitivity", for which qtractor has no direct access or control (it depends on its MIDI implementation).

please refer to the SF2 sampler instrument you're using or try with another one... here tested with qsynth (standalone), fluidsynth-dssi, calf-fluidsynth (plugins), linuxsampler (server) and through a DB50XG outboard (full old XG, non-SF2 based) -- all played well re. MIDI pitch-bends (although the later with better sound quality ;)


I just want to make sure that we are clear on something. You're telling me that qtractor is a sequencer / midi editor / plug-in host that will not enable you to send the proper midi message to change pitch Bend sensitivity.?? Is this what you're telling me?

rncbc's picture

no. i'm saying that it depends on the MIDI instrument or plugin that is being driven by.

although, there are some MIDI (N)RPN in the known standards (GM, GS, XG) that comes to mind, which makes up for pitch-bend sensitivity or range (usually in semitones or cents for full-swing or scale) to be set on-demand, a possibility that only gets effective if , and only if, both of the following conditions are met:

1) those pitch-bend range/sens. instructions or messages must be part of the MIDI file being played or sequenced: qtractor will duly pass them on to the instrument, but...

2) the instrument (or plugin) must recognize and react to those messages and set its own pitch-bend scaling factors to fit the desired range or sensitivity upon rendering the normal MIDI performance pitch-bend messages: which as I've demonstrated, are being handed out properly by qtractor, as long there are any in the MIDI sequence, of course.


WAIT! I think I see the problem now: the file "Eagles_(The)_-_Hotel_California.mid" seems to be formed under the MPE (MIDI Polyphonic Expression) specification... alas, qtractor doesn't support the MPE spec. in fact, in qtractor terms and convention for MIDI sequencing, the file is just malformed and thus it wouldn't ever play it right, no matter which instrument or plugin you throw at it, even though the instrument have to support and accept switching into said MPE mode too. sorry :)

so, after all we were both misguided after all this time. it wasn't ever about pitch-bend or not: it was all about MPE instead, that I repeat, qtractor does not conform or accepts.

to my knowledge, there are none of open-source applications (on GNU/Linux at least) that support MPE to date. there are some, non-free, commercial ones that might (bitwig, reaper, and so on...). same for instruments, plugins, unfortunately, whatever.

anyway, I don't know how far and that said support goes on other commercial software, but one thing I'm sure: qtractor doesn't, sorry again; only conventional MIDI files and sequencing do work, which boils down to one rule: one track, one channel, one instrument, one patch.

apologies for all the fuss :)

Hi thanks for the info....just one final can one identify a midi file that is the wrong type.....or the right type? thanks

rncbc's picture

they are perfectly legal SMF (standard MIDI files), only that they include special MPE mode setup and performance events, which are special MIDI (N)RPN events that in turn are normal MIDI CC events, just with designated special values, according to the MPE spec.

so, you'll have to read and decode the MIDI file and look for those special magic events that often occur at the head of the first MTrk section, usually for MPE Configuration Message (MCM), which is plain MIDI RPN 00 06.


Agreed. You might want to also test with Carla since I believe that loads soundfonts.

Add new comment