0.8.1 Preview r1261 (Release Candidate 1)

Archived development update discussion from past versions
Archived development updates.
Locked
Nicholas
Posts: 13135

Post by Nicholas »

PREVIEW r1261
Download from the pink box above.

Changes in r1261 since r1256:
  • Fixed "zoom to keyboard" on auto-selected octaves.
  • Finger hints from .synthesia files are now read and are visible in the game.
  • Fixed DirectX windowed-mode ghost-frame problem.
  • Included first batch of completed finger hints from Pianotehead (3 - Hard) and Jimhenry (Bach Chorale).
Outside of errors, 0.8.1 will go live once I get finger hints for all the G Major songs! Woo!

EDIT: Here is the place to go if you'd like to help with finger hints.
maccer
Posts: 222

Post by maccer »

Nice! I see the finger hints, but I don't understand where they are stored?
Songs learned using Synthesia:
CT: Wind Scene, The Trial | FF7: Prelude | SMB: Overworld, Underwater | Tetris: Theme A | Zelda: Lost Woods | Other: Für Elise
User avatar
jimhenry
Posts: 1899

Post by jimhenry »

The fingering in the Bach Chorale is just my best guess at a fingering. I welcome any comments or suggestions for improvement.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13135

Post by Nicholas »

maccer wrote:Nice! I see the finger hints, but I don't understand where they are stored?
When you add them yourself, they're stored in "fingers.xml" in the Synthesia data directory.

Alternatively, you can use the metadata editor to extract them to a .synthesia file. That makes them easier to share. Just place the .synthesia file somewhere in one of your watched folder paths and the finger hints should show up in the game too.
User avatar
jimhenry
Posts: 1899

Post by jimhenry »

Some thoughts on the sheet music display based on the Menuet (Trio) by Handel:

It would be nice if the sheet music view would wrap at bar lines. Actually, this is almost essential, I just saw an example where the wrap broke beamed eighths. Even if you just extended the staff with blank white and wrapped all the notes if you couldn't fit the complete measure, it would be better than wrapping in a measure.

When you have two notes in a chord that are separated by 3 half steps, the accidental should be chosen to be the one that creates a minor third rather than an augmented second in the sheet music display. In Menuet (Trio) by Handel, in measure 7 the display should be G#-B rather than Ab-B. I can't think of a chord that should be notated with an augmented second although there probably is some rare example that I don't know of.

For stepwise notes I think accidentals will work out better with the following algorithm:
If a note is separated from the preceding note and the following note by 1 half step all in the same direction, notate as flat if it is a descending pattern and sharp if ascending;
Else notate as different scale degrees.
This is a tricky one and you'd have to look at a lot of examples to see if that gives better results than what you are doing now.
As an example, in Menuet, measures 1 and 2, the notation should be A-G#-A rather than A-Ab-A, because it is not stepwise in the same direction and there is nothing to prevent the use of G#.
Measures 17-18 are a more difficult example. The pattern is G#-A-C. Synthesia displays Ab-A-C. I think what should happen is that you should prefer using different scale degrees so the choice is G#-A-C or Ab-Bbb-C. G#-A-C is preferred either to avoid the double flat or to notate an ascending sequence with sharps.

When you do have to notate a second in a chord, the notes should be offset so they don't overlap. E.g. Menuet measure 15, D-C. Normally you move the higher note to the right. In the Menuet, it is reversed to clarify the stepwise patterns but I can't think of any reasonable algorithm to do that mechanically.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
User avatar
jimhenry
Posts: 1899

Post by jimhenry »

One more thing about sheet music display, I think you should give more weight to the tracks in assigning notes to bass or treble clef. Maybe a rule something like:
A measure of a track that includes only notes above E3 is kept entirely on the treble clef;
A measure of a track that includes only notes below A4 is kept entirely on the treble clef;
otherwise split the notes at C4.

Menuet is split properly but the notes for the hands are not consistently on one staff or the other which is very confusing.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
User avatar
jimhenry
Posts: 1899

Post by jimhenry »

It would be delightful if the fingering was also displayed in the sheet music view.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
maccer
Posts: 222

Post by maccer »

Nicholas wrote:
maccer wrote:Nice! I see the finger hints, but I don't understand where they are stored?
When you add them yourself, they're stored in "fingers.xml" in the Synthesia data directory.

Alternatively, you can use the metadata editor to extract them to a .synthesia file. That makes them easier to share. Just place the .synthesia file somewhere in one of your watched folder paths and the finger hints should show up in the game too.
Is this the case for the fingerings that are included with Synthesia (3 - Hard and Bach Chorale)? I was searching for those but I can't find any .synthesia files (even with a ls -al in Terminal) in the G major music folder, and the tracks.xml only contain a few fingerings that I made when trying out the feature.

I was expecting to find these .synthesia files in the folder structure and was thinking about the support nightmare you would have when a user has trouble moving a invisible file...
Songs learned using Synthesia:
CT: Wind Scene, The Trial | FF7: Prelude | SMB: Overworld, Underwater | Tetris: Theme A | Zelda: Lost Woods | Other: Für Elise
Nicholas
Posts: 13135

Post by Nicholas »

jimhenry wrote:It would be nice if the sheet music view would wrap at bar lines. Actually, this is almost essential...
I agree. I'll be solving this problem soon. The sheet music is going to be getting some attention very soon. There have been some major quality of life issues there for far too long now.
jimhenry wrote:When you have two notes in a chord that are separated by 3 half steps, the accidental should be chosen to be the one that creates a minor third rather than an augmented second in the sheet music display.
This is something I haven't ever heard. Would this be solved automatically if the sheet music didn't completely ignore key signatures and notate everything like it was C Major? (Also a huge quality of life -- and correctness -- issue. ;) )
jimhenry wrote:... I think you should give more weight to the tracks in assigning notes to bass or treble clef. Maybe a rule something like...
It does something very close to that already. E3 is a little low... I think it'll only go two or three notes below C4 before it starts involving the other staff. I guess I could throw a few extra ledger lines in there to avoid that from happening.
jimhenry wrote:It would be delightful if the fingering was also displayed in the sheet music view.
Absolutely. Hopefully during this upcoming sheet music pass, I can get something like that in there.
maccer wrote:Is this the case for the fingerings that are included with Synthesia?
Nope, those are embedded in the .exe. You can extra those with a resource editor if you have one. ;)
User avatar
DC64
Posts: 830

Post by DC64 »

The general notation for sheet music will be nice, like the sustain bar or 8va/8ba
"And now for something completely different."
Electrode
Posts: 195

Post by Electrode »

I like how Manual Note Fingerings are treated as normal labels and can be switched on/off at will. I've input some fingerings into a piece I'm studying at the moment and it's proving a useful thing to have indeed. (It is also beneficial in that it's forcing my brain to slow down when it wants to rush ahead, because I have to concentrate on looking at the screen to see what fingers go where - thereby helping me avoid mistakes!)
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

I wished while manual fingering mapping 1..5 would be for right hand and 6..0 for left hand. Now it is the opposite.

Is it normal that fingerings are NOT shown during playback?
aria1121
Posts: 1505

Post by aria1121 »

TonE wrote:I wished while manual fingering mapping 1..5 would be for right hand and 6..0 for left hand. Now it is the opposite.
LOL I júst wanted to write the same! ... But so it sounds more chronologic, if I would say 1 you won't recognise your left-pink that fast :)
TonE wrote:Is it normal that fingerings are NOT shown during playback?
I felt this coming.
So... Why?
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

aria1121 wrote:But so it sounds more chronologic, if I would say 1 you won't recognise your left-pink that fast :)
1 is anyway not left pinky.
Nicholas
Posts: 13135

Post by Nicholas »

TonE wrote:Is it normal that fingerings are NOT shown during playback?
Electrode wrote:I like how Manual Note Fingerings are treated as normal labels and can be switched on/off at will...
Are they simply turned off?
TonE wrote:I wished while manual fingering mapping 1..5 would be for right hand and 6..0 for left hand. Now it is the opposite.
On the keyboard, along the top row, the left hand can reach 1-5 (albeit, in reverse order), and the right hand can reach 6-0 (in the correct order). That seemed more natural to me. It's just a behind-the-scenes data thing though, so it shouldn't have a huge impact one way or the other.
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

Nicholas wrote:Are they simply turned off?
I had "only show for upcoming Played by You notes turned on", after switching this off, it works nicely.

On the keyboard, along the top row, the left hand can reach 1-5 (albeit, in reverse order), and the right hand can reach 6-0 (in the correct order). That seemed more natural to me. It's just a behind-the-scenes data thing though, so it shouldn't have a huge impact one way or the other.
At least you know now my opinion. I was thinking more for later editing directly text files for manual fingering mostly via Numpad. There I would do an AutoHotkey mapping as follows:

1..5: normal for right hand
LeftControl + 1..5: would map to 6..0 for left hand, where LeftControl would also emphasize a little the use of the left hand. :)
aria1121
Posts: 1505

Post by aria1121 »

TonE wrote:
aria1121 wrote:But so it sounds more chronologic, if I would say 1 you won't recognise your left-pink that fast :)
1 is anyway not left pinky.
Ya'I know just kidding.

But am I wrong that the fingerings just don't simply display? Or are you supposed to try to learn that hard?
User avatar
DC64
Posts: 830

Post by DC64 »

So how about that countdown clock for 8.1?
Starting from 30 ... 10 ... ect.
"And now for something completely different."
Nicholas
Posts: 13135

Post by Nicholas »

DC64 wrote:So how about that countdown clock for 8.1?
If I knew the precise time it would be done, I totally would. ;)
Locked