Metronome starts on 2nd beat?

Trouble with Synthesia, your keyboard, or adapter? Think you found a bug?
When describing problems, always mention your OS and game version (shown at the bottom of the title screen).

If your keyboard has USB or MIDI ports, there is a tremendously high chance (>99%) it will work with Synthesia. See what you'll need on the keyboards page.
Post Reply
jsgarvin
Posts: 2

Post by jsgarvin »

OS: Windows
Game Version: 10.8.5686


My apologies if this is a dumb question and I should know better, but...

The synthesia metronome always starts on the second beat. I have the "emphasize first beat" setting enabled, and if a song is in 4/4 time, then the emphasized beat is actually the 4th click from the metronome.

For example.

clk clk clk CLK clk clk clk CLK
AKA
23412341

Instead of what seems infinitely more intuitive, which would be

CLK clk clk clk CLK clk clk clk
AKA
12341234

I've dug all over trying to find a setting for this (as well as one for how long the metronome should play before the actual song starts, and/or how long before the metronome even starts clicking, because for some songs there's barely enough time get your hand from the mouse to the keys and get your fingers in place) but I'm not finding anything.
Bavi_H
Posts: 116

Post by Bavi_H »

UPDATE: See next post.

It looks like Synthesia always starts 2.5 seconds before the first note and there is no setting available to change the duration of the metronome count-in.

(If the first note starts at the beginning of the first measure, and the time signature of the first measure is 4/4, then you can predict how many count-in clicks you will hear by dividing the tempo by 24.)

Spoiler:

Code: Select all

count-in pattern  min  under
────────────────  ───  ─────
                    0   24
               .   24   48
             . .   48   72
           . . .   72   96
         ! . . .   96  120
       . ! . . .  120  144
     . . ! . . .  144  168
   . . . ! . . .  168  192
 ! . . . ! . . .  192  216
Requests to change how the metronome count-in works have been previously discussed in the following threads. It sounds like it is a known issue and is somewhere on the developer's long list of things to eventually work on. (Note: In these threads, the developer Nicholas believes the count-in is 5 seconds, but when I tested, I found the count-in is 2.5 seconds.)

2020-06-01: Pre-Count Bars amount changing
2017-06-20: Metronome Count-in
Last edited by Bavi_H on 11-03-22 10:26 pm, edited 1 time in total.
Bavi_H
Posts: 116

Post by Bavi_H »

It looks like there is no setting available to change the duration of the metronome count-in. Synthesia always starts a specific amount of seconds before the first note:

If Settings → Gameplay → Song Title is on, Synthesia starts 5.500001 seconds before the first note.

If Settings → Gameplay → Song Title is off, Synthesia starts 2.500001 seconds before the first note.


Requests to change how the metronome count-in works have been previously discussed in the following threads. It sounds like it is a known issue and is somewhere on the developer's long list of things to eventually work on.

2020-06-01: Pre-Count Bars amount changing
2017-06-20: Metronome Count-in
Nicholas
Posts: 13135

Post by Nicholas »

That's a lot of precision you've got there. Where are you getting that last microsecond from, out of curiosity? :lol:
Bavi_H
Posts: 116

Post by Bavi_H »

Nicholas wrote: 11-04-22 1:08 amWhere are you getting that last microsecond from, out of curiosity?
During my original tests, the Song Title setting remained off so I didn't notice the count-in was longer when the Song Title setting is on. If I remember correctly, all of the testing I did before my first post suggested Synthesia started exactly 2.5 seconds before the first note.

Soon after my first post, I used a memory viewer (Cheat Engine) to attempt to find some memory address or code location that specified the amount of seconds used for the count-in. In various tests, I would sometimes find a memory location that appeared to represent the current position in the song in microseconds. If I paused the song after the first few notes or so, then pressed the 1 key (the shortcut key for "Jump to Beginning of Song"), Synthesia would go back to the beginning of the count-in and remain paused. At that point, the memory location for the song's current position had a value of decimal -2500001 (hex FFD9DA5F), which seemed to represent "negative microseconds" before the beginning of the song. At the time, I hypothesized the extra 1 microsecond was possibly immediately decremented in some kind of pre-decrement loop.

Recently, I realized the count-in is longer when the Song Title setting is on, so I re-tested how long the count-in is both when the Song Title setting is on and when it's off. During my testing this time, one of the things I did was create a MIDI file with a specific tempo in microseconds per quarter note so that Synthesia could only click once during its count-in.

When the Song Title setting is on:

If the MIDI file tempo is 5500001 microseconds per quarter note, Synthesia's count-in clicks once.
If the MIDI file tempo is 5500002 microseconds per quarter note, Synthesia's count-in has no clicks.

When the Song Title setting is off:

If the MIDI file tempo is 2500001 microseconds per quarter note, Synthesia's count-in clicks once.
If the MIDI file tempo is 2500002 microseconds per quarter note, Synthesia's count-in has no clicks.
Nicholas
Posts: 13135

Post by Nicholas »

Bavi_H wrote: 11-04-22 7:13 am... I used a memory viewer (Cheat Engine)...
Ah ha, this was my hypothesis confirmed. It was a little too accurate for anything else! :lol:
Bavi_H wrote: 11-04-22 7:13 am... I hypothesized the extra 1 microsecond was possibly immediately decremented in some kind of pre-decrement loop.
It's for Melody Practice. The "Rewind" function always adds an extra 1μs so the song is technically before the notes of the now-current measure. Without it, the song wouldn't stop on notes occurring during the first beat of that measure. :)
Bavi_H wrote: 11-04-22 7:13 amIf the MIDI file tempo is 5500001 microseconds per quarter note, Synthesia's count-in clicks once.
This is a rather clever way to test your own hypothesis. I like it. hehe.
Post Reply