Skip to main content

Articulation of next container overwriting current container

Posted

Software Version: Synfire 1.8.5 build 5
OS: Windows 10
Bug: Misbehaviour
Reproduce-ability: 100%
Reproduction steps

  1. Create a new Arrangement

  2. Create a new container with the size of 2 bars and call it Spiccatissimo
  3. Draw a figure into the first bar of the container
  4. Assign an articulation to the figure, in this case Spiccatissimo
  5. Create a duplicate of that container and rename it to Staccato
  6. Move the new container after the first container
  7. Change the articulation of the second container figure to a different articulation than the figure of the first container, in this case Staccato
  8. Select the range of the second bar for playback
  9. loop playback
  10. First time it plays correctly. The first figure with the first articulation
  11. After that it will play the first figure using the articulation of the second figure

P.S. I attached the sample project. Not sure if it can be used to reproduce.


Mon, 2018-05-28 - 15:38 Permalink

Thanks for sharing your observations.

Loop playback has a number of side effects and this is one of them. The articulation switch is sent shortly before the first note of a segment. That's why at the end of the loop, the articulation of the following segment is already sent, only milliseconds before it returns to the beginning for the next loop. There, the articulation switch of the first segment is a few milliseconds before the loop start, hence not sent again during a loop.

Articulation switches take some time to go into effect. They can't therefore be tied exactly to the playback of a note. Their shifting has the said side effects.

Mon, 2018-05-28 - 17:44 Permalink

Well, then your loop playback needs to look ahead and plan ahead. It makes things more complex, but otherwise it gets unlogical for the user.