Blocking Visual Feedback: Interfacing with another app

Collaborate with other modders to make Synthesia the way you want it.
Always the latest versions: [ colors.xml | ui.xml ]
Read the Getting Started topic to learn how important it is to MERGE YOUR CHANGES every time you download a new dev preview.

Postby danaswarb » 07-13-17 1:05 pm

Hello again!

I would like to block the screen every few song plays. I believe this will require sending commands to Synthesia from a program like Python so that Python could initiate a song play and before every few song plays, it would create a pop-up window to hide the screen, and before the next play it would quit the window. I know that Synthesia used to have command line options. Do those still work and would it be possible to send commands from Python to Synthesia? Do you think this is feasible?

Thanks for all of your help!

Posts: 7

Postby Nicholas » 07-13-17 3:05 pm

Why were you hoping to block the screen?

You can press F5 to hide the falling notes.
Posts: 11433

Postby danaswarb » 08-14-17 3:15 pm

Thank you so much Nicholas!

For my Masters, I am running an experiment on the effects of exercise on motor learning. I am using your computer program to guide nonmusicians' learning as a few other groups have done in the past. I am trying to teach nonmusicians how to play a piano melody and I want them to learn it and be able to perform it without the visual feedback. We are systematically reducing the visual feedback. I have written a Python script that automates my experiment. It interfaces with Synthesia with MIDI output from Synthesia and once it "hears" a certain sequence, it sends a key press of F5 causing the keys to disappear. I have been able to figure out most things however am still struggling with a few features:

I want to remove all visual feedback from the participants for my test trials and I notice that even when the descending key blocks are hidden with the F5 key press, if a note is pressed on time, the key on the keyboard changes to green and if it is not pressed correctly, the colour is grey. Is it possible to turn off this feature? For example, with one of the options that comes up when you hold shift and start Synthesia. Alternatively, is this an easy edit if I were to use the developer version of Synthesia?

Additionally I notice that every time I open a sequence, Synthesia's on-screen keyboard is centred at C4. Is it possible to choose a different centre note or will I need to drag the keyboard every time I open a sequence?


Posts: 7

Postby Nicholas » 08-23-17 10:11 pm

That sounds like an interesting project. (If you'd like to post links to any papers that come out of it -- or send those links to -- I'd be interested in taking a look.)

This might be a little extreme, but if you pause the song, you will see a little blue block slide out from the right. You can drag that blue block downward to tuck the keyboard under the edge of the screen. If you tuck it away completely, that will hide the green/gray keys. (Granted, users will most-likely have a lot more trouble finding their relative position now, but I suppose the elimination of feedback entails that already.)

Another detail: correct notes still generate a sparkle effect that appears above the keyboard and would be visible. This is an easy fix, too: Settings --> Advanced --> Particle Effects --> Hidden.

A final detail: there is a little points box at the top-right in each mode that a user is responsible for playing notes. That counts as feedback, too. You can click the box to have it slide off to the right, mostly out of view. That was already a feature to help avoid distraction. Unfortunately, there is still a tiny animated shake (and subtle red color cue) that happens each time a mistake is made. The easiest solution is something like a post-it note placed on the screen over that tiny sliver of protruding box. If that doesn't work, I might be able to describe how to do a bit of UI modding to hide it altogether.

Regarding keyboard center, choosing something from the zoom menu (magnifying glass at the top-right while a song is playing) will "lock" a different center note in. The best choice for this is the "Custom" entry, which even disables whole-key snapping and remembers precise, pixel-accurate key size and center across all songs. (That option was added so you could do something like place a keyboard in front of a large monitor or even a projector and get the zoom set up so it matches the physical keyboard exactly.)
Posts: 11433

Return to Modding Synthesia

Who is online

Users browsing this forum: No registered users