A note is being dropped.
I'm using the 15 Aug 2012 build of 32-bit Renoise 2.8.1 on 64-bit Windows 7.
(Maybe I should switch to 64-bit Renoise?)
1. Load buggy.xrns
2. Click on the Instrument Settings tab on the bottom panel
3. Select any of the following VST plugins from the Instrument dropdown:
(I suspect this bug is reproducible in all VST plugins.)
4. Select a suitable patch, probably one with fast attack and moderate sustain
5. Start playback by hitting the space bar or by clicking the > button at the
Desired Result: All notes should play at the correct times.
Actual Result: The A# (track 3) at step 32 doesn't play.
Synth1 is particularly useful because it has an indicator at the bottom right
showing exactly how many voices are active. Set unison to 1. Then you'll see
that at step 32, only 2 new voices activate instead of 3.
I have attached file buggy.xrns. Disregard track 2 because it is disabled; none
of its notes should play.
I have also attached screen capture buggy.png to further clarify which note is
Sorry about the erratic text colors. I wanted to use the “code” style because
it respects space indents and uses a fixed width font.
First problem: You are playing a VST instrument spread across multiple tracks, when the VSTi itself can only physically output to a single stereo track at any given time. If you’re only using a single “voice” of a VST instrument, you should place all of those notes within the same track in Renoise.
Second problem: You are not explicitly sending any note-off events to the VST instrument. This can sometimes result in notes that overlap, and then the VST might respond in a strange way, ie. cutting off notes that you did not intend to be cut off. If you want to maintain full control over exactly how the instrument should start and stop each note, then you need to trigger both note-on and note-off events within your pattern.
I’ve attached an example of a better way to structure your pattern. I don’t have the Firebird VSTi, so I’ve replaced it with a simple patch from Synth 1 instead. I applied note delays of FF to each note-off command, so that the command is applied almost instantly before the next pattern line is encountered. This helps to maintain the seamless nature of your original pattern.
Yay, but placing each instrument’s notes into one track only should fix that too. We’re explicitly sending out note-off events before every note-on to solve exactly this problem, but this only works if all notes are placed in one track.