Synchro problems with Hydrogen

Bug #431012 reported by Killian EBEL
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Seq24
Fix Committed
Undecided
Unassigned

Bug Description

Hi, my configuration is : Ubuntu 9.04 64 bits with 2.6.29.6-rt23 kernel, and seq24 0.9.0 installed from archive.

While using another sequencer (Rosegarden) I don't get this problem.
I make a song with some patterns in seq24 and Hydrogen. When clicking the "Play" button, everything is alright. But when I try to move the "playing cursor" in Hydrogen, something weird happens : seq24 goes on the right frame, but Hydrogen plays from the beginning (cursor moves to position 0).

Hydrogen writes this message in console :

(E) PatternList get Pattern index out of bounds. nPos > list.size() - 0 > 0
(E) Sampler __render_note Note pos in the future?? Current frames: 0, note frame pos: 243692

For a while I thought this problem was coming from Hydrogen, but I tried the same thing with another Jack Master and everything seems ok, then the message appears :

(E) Sampler __render_note Note pos in the future?? Current frames: 131525, note frame pos: 332307

It seems like Hydrogen doesn't detect correctly the current frame while playing with seq24, but Rosegarden sends a correct "GOTO" signal ? Furthermore, it could be cool to implement this functionnality in seq24 (moving current song position).

Does anyone have the same problem ?

Revision history for this message
Killian EBEL (killian-ebel) wrote :

I found that the problem is coming from the following function :

void jack_timebase_callback(jack_transport_state_t state,
        jack_nframes_t nframes,
        jack_position_t *pos, int new_pos, void *arg)

in perform.cpp file. While disabling this function (just putting a "return;" at the beginning), Hydrogen works correctly with current frame position. I don't know what in this function is annoying Hydrogen, but I'm going to look at it.

I updated my seq24 version from the git repository. While moving the "tick" in Hydrogen, it writes this message in console :

(E) AlsaMidiDriver handleMidiMessage SONG_POS event not handled yet
(E) AlsaMidiDriver handleMidiMessage CONTINUE event not handled yet

Are these messages sent by seq24 while being Jack Master ?

PS : If you want to try, I'm using the last Hydrogen version (0.9.4)

Revision history for this message
Killian EBEL (killian-ebel) wrote :

Here is a patch to correct the problem. Now Hydrogen works fine with seq24. The problem was coming from the "pbar" calculation, which was always at 0.

Hope you will test and include it soon in seq24 main branch !

Changed in seq24:
status: New → Fix Committed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.