Before you re-produce:
The volume of the distortion caused by this bug is extremely loud and causes clipping even if you lower the volume of the instrument plug-in or the master mixer fader. You should decrease the volume of your playback device to something low (e.g., 20%). The distortion causes the master fader to look like this:

To re-produce:
(1) Open a project.
(2) Add the default "Vibed" instrument plug-in.
(3) Set the value of the "P" parameter to more than 0 (e.g., 0.05).
(4) Play a note from the following list, these are only the notes I tested atm from C4 to B5 (two octaves): C4/G4/A#4/D#5/E5/B5.
Changing the "Octave", "Length" and "Detune" parameters changes which notes cause the distortion.
Changing any other parameter in the "plugin" tab doesn't change which notes cause the distortion.
Enabling the "Imp" parameter removes the distortion.
Noise confirmed. I don't get it at quite the same keys though. For me I get the noise when playing an F6 after F#6.
You may want to check #349.
Debugging with the new -DWANT_DEBUG_FPE=ON option.
Backtrace from playing random notes with Vibed and a P setting larger than 0.
Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread 0x7fffddeab700 (LWP 3429)]
0x00007fffd7975ad8 in vibratingString::setDelayLine (this=0x7fffd8002ed0, _dl=0x7fffd8003250, _pick=3, _values=0x7fffd8003010, _len=128, _scale=0.5,
_state=false) at /home/zonkmachine/builds/lmms/lmms/plugins/vibed/vibrating_string.h:132
132 _dl->data[i] = _scale *
(gdb) bt full
#0 0x00007fffd7975ad8 in vibratingString::setDelayLine (this=0x7fffd8002ed0, _dl=0x7fffd8003250, _pick=3, _values=0x7fffd8003010, _len=128, _scale=0.5,
_state=false) at /home/zonkmachine/builds/lmms/lmms/plugins/vibed/vibrating_string.h:132
i = 0
r = 0.263776749
offset = 0
#1 0x00007fffd79756cc in vibratingString::vibratingString (this=0x7fffd8002ed0, _pitch=622.253967, _pick=0.0149999997, _pickup=0.0500000007,
_impulse=0x7fff980071d0, _len=128, _sample_rate=44100, _oversample=1, _randomize=0, _string_loss=0, _detune=0, _state=false)
at /home/zonkmachine/builds/lmms/lmms/plugins/vibed/vibrating_string.cpp:79
string_length = 142
pick = 3
#2 0x00007fffd7974d4e in stringContainer::addString (this=0x7fffeac32d60, _harm=2, _pick=0.0149999997, _pickup=0.0500000007, _impulse=0x7fff980071d0,
_randomize=0, _string_loss=0, _detune=0, _oversample=1, _state=false, _id=0)
at /home/zonkmachine/builds/lmms/lmms/plugins/vibed/string_container.cpp:100
harm = 1
#3 0x00007fffd796c8b2 in vibed::playNote (this=0x7fffeac2da60, _n=0x7fffeab21e10, _working_buffer=0x7fffeac230a0)
at /home/zonkmachine/builds/lmms/lmms/plugins/vibed/vibed.cpp:300
i = 0
frames = 0
offset = 32767
ps = 0x62bbcc <QList<NotePlayHandle*>::size() const+24>
#4 0x0000000000624396 in InstrumentTrack::playNote (this=0x7fffeac2b260, n=0x7fffeab21e10, workingBuffer=0x7fffeac230a0)
at /home/zonkmachine/builds/lmms/lmms/src/tracks/InstrumentTrack.cpp:455
No locals.
#5 0x00000000005391de in NotePlayHandle::play (this=0x7fffeab21e10, _working_buffer=0x7fffeac230a0)
at /home/zonkmachine/builds/lmms/lmms/src/core/NotePlayHandle.cpp:248
framesThisPeriod = 256
(3) Set the value of the "P" parameter to more than 0 (e.g., 0.05).
this 'P' stands for Pick-posistion
There is also a Pickup-posistion..
Are these -especially 'P' realistic, or is it 'make believe' because 'thats how a real guitar works'
What should real changes in Pick-posistion actually result in?
Are they valid in this instrument?
Guess the questions could be repeated for 'PO' param.
Also, remember, that if fundamental changes are made to this 'P' setting, some backward compatibility could go lost -Just saying..
Are these -especially 'P' realistic, or is it 'make believe' because 'thats how a real guitar works'
What should real changes in Pick-posistion actually result in?
Are they valid in this instrument?
Guess the questions could be repeated for 'PO' param.
My questions too. 馃
The code reads value from wrong indexes.
https://github.com/LMMS/lmms/blob/v1.2.0-rc3/plugins/vibed/vibrating_string.h#L133
Here -1 is missing :/
This is the reason i = 0 when the FPE occurs...