Pre-roll questions

  1. Is it possible to be able to see the pre-roll in play mode. I can’t seem to scroll back more than to beat 1 of bar 1 which does not include the pre-roll notes.

  2. Pre-role seems to only play back grace notes using the transport rewind/play buttons, or flowing into a flow from the previous flow. If I select the grace note(s) in the pre-role and then press P, it jumps to the first non-grace note and starts playing from there instead. Is this intended?

I’m not sure what you mean for the first question. What notes are you expecting to see? Are you talking about grace notes on the first beat?

For the second question, this behaviour is expected, though not always desirable. Currently playing back from a selection will start from the notated position of that object rather than the played position. This is something we may be able to improve in future.

On question 1. Yes, the grace notes. I can’t see the grace notes in Play mode that are associated with the first beat. I’d like to be able to scroll to see the pre-roll notes.

Ah, ok. No, it’s not possible to see them at the moment, but that’s something we can consider for a future version.

OK Thanks,

By the way, was pre-roll supposed to fix the key switch problem (e.g., pizz. vs. arco) on the first beat of a flow? Because it still doesn’t work.

I’ve just tried it and it’s working for me, both with HSSE and NotePerformer. Can you attach a cut-down score that reproduces it?

I have a large file that exhibits this. Here are screen shots showing the first violin is playing Nat. instead of Pizz. (see circled annotation).

I’ll try to create this in a smaller file. This is running VE Pro 6.


I can’t get it to misbehave in a stripped down file.

edit: see next post.

OK, here’s a stripped down file that shows this problem.

The only way to see it is to look at the first violin in play mode with the articulation lane showing. It should show Pizz, but it is showing Nat.

If you add a bar or a small rest (even 1/1024 duration rest will do it) to the beginning of the file in write mode then you’ll see the correct articulation at the first note in the score as it should be. So there is something causing the key switch to not get asserted on just Violin 1. All the other string parts work as expected.

Note that you don’t need to run the VSL Server to see this problem looking at the articulation lanes.
test4.dorico.zip (516 KB)

Here’s the same file with Noteperformer. Same problem.
test4 noteperformer.dorico.zip (517 KB)

And the same file with Halion. Same problem.
test4 Halion.dorico.zip (1.84 MB)

Thanks for taking the time to produce those. I can see what’s happening here. There are two voices in the violin instrument, and during playback, each one resets implicitly to natural at the start. If you just have one voice then you get a natural followed by pizz, which is resolved to pizz. However because of this second voice, that’s resetting back to natural after the pizz. I’ve logged this.

It is possible to work around this, though there’s a few steps involved. You need to remove the redundant voice. Currently in this small test file there is a rest in the 2nd voice. If you delete that then when you next load the project, Dorico will remove the empty voice.

  1. Backup your project!
  2. Choose View → Voice Colors and View → Implicit Rests
  3. In Write → Notation Options → Rests → Reset positioning, select ‘Show every rest in each voice’
  4. You should now see the rest in the other voice. Delete it.
  5. Save and reload

OK, thanks for this alternative workaround.

So is this the same class of problem as discussed in the original thread about this issue?

Do you still plan to implement negative time so you can timestamp these earlier than the beginning of the bar? The answer to the question about the pre-roll mechanism doing this is apparently no.

It could possibly be the same issue - there have been several bugs that have had the same symptom but different underlying causes.

We do now implement negative time, but it is something you have to enable on a per-project basis. In the Playback Options, set the pre-roll to something like 200ms. The reason why it doesn’t do this automatically is that it affects audio export and video synchronisation.

Do I need to enable pre-roll on a per flow basis also? Because I was trying to turn that on and it didn’t seem to have any effect. It certainly didn’t solve the problem in the files I posted. So ar3e you asserting keyswitches in negative time when pre-roll is enabled?

Not per-flow, it’s a per-project setting. As I mentioned earlier, the problem in these files isn’t about negative time, it’s about having a second voice, so the pre-roll has no impact on that. In cases where the pre-roll does apply, such as grace notes before the first beat, it should in theory output the key switches at the correct (negative) time.

OK, but what if you need to have two voices in a staff with notes in each and you want pizz to play on both. You can’t remove the second voice in this case.

Seems like here I need to add a bar before the beginning, or what also seems to work is to make the pizz. associated with the highest numbered voice so it happens last.

And I don’t see pre-roll doing anything for this problem. Can you post an example where this works?

Having two voices is fine, in theory: the issue is that Dorico is preparing each voice in sequence, so it first performs a controller reset for voice 1, then sends the pizz. instruction for voice 1; then it performs a controller reset for voice 2, which wipes out the pizz. instruction it just sent; then it starts playback. So we need to rejig the way this preparation phase is performed, so that it doesn’t send the controller resets twice. Paul’s suggestion for removing your extra voice in this instance is just to work around this current behaviour.

Presumably when voices can send on different channels this will not be as much of an issue.

Yes! This is correct. I was just about to post this.