seq66 icon indicating copy to clipboard operation
seq66 copied to clipboard

One-shot (repetitions != 0) patterns do not play

Open igorangst opened this issue 2 years ago • 3 comments

Hi, I just accidentally discovered the little "repetitions" field in the pattern editor. I do not know since when this is around, but I gave it a try. Turns out that the patterns with value other than zero do not play at all. When I arm them, the playback cursor in the gui just freezes, and there is no MIDI output. Tested on Linux using version 0.99.1 (freshly compiled) with Jack MIDI.

igorangst avatar Dec 30 '22 21:12 igorangst

I will check it. Note that it applies only in live mode. Let me know if you were using live mode and it didn't work. It may take me a couple days to get it resolved. Thanks!

On Fri, Dec 30, 2022 at 16:34 Igor Angst @.***> wrote:

Hi, I just accidentally discovered the little "repetitions" field in the pattern editor. I do not know since when this is around, but I gave it a try. Turns out that the patterns with value other than zero do not play at all. When I arm them, the playback cursor in the gui just freezes, and there is no MIDI output. Tested on Linux using version 0.99.1 (freshly compiled) with Jack MIDI.

— Reply to this email directly, view it on GitHub https://github.com/ahlstromcj/seq66/issues/103, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB45LKEEEGKT5CHMHB26NYDWP5IN5ANCNFSM6AAAAAATNFKLNI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- Chris Ahlstrom

ahlstromcj avatar Dec 30 '22 21:12 ahlstromcj

Yes, I was using live mode. No hurry, as I said I only discovered this feature. Need yet to figure out if I can integrate it into my performance.

igorangst avatar Dec 30 '22 21:12 igorangst

Sorry for the late response, working on other code and dealing with arm/nerve issues.

What I found in my testing was that the issue occurs when running Seq66 as JACK transport slave. I ran qjackctl, qsynth, and then Seq66: "qseq66 --jack --jack-slave". Then loaded at tune with a track with a loop-count of 1. Starting the tune causes that track to play once then stop. Clicking play again caused the cursor to jump to a new position and freeze. Going to qjackctl and clicking rewind, then clicking play in Seq66 caused the track to play once, normally. So the work around is to rewind whichever other app is JACK master before playing.

The current tweak (in sequence.cpp) is to calculate the times-played in a better manner, which at least keeps the cursor at tick 0 when play is clicked to continue.

Not sure if it is proper to make a tweak that causes Seq66 JACK slave transport to rewind as if it were Master. Will have to think about it and read up some more on the subject. In the mantime, check out the portfix branch (do a ./bootstrap --full-clean as I have also made a version bump in configure.ac.)

ahlstromcj avatar Jan 17 '23 12:01 ahlstromcj