0.8.2 Preview r1488 - Key Bindings

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

Post by Nicholas »

TiagoHenriques wrote:Please tell me something: with this computer hardware, would a midi controller lag?
Maybe a little more than usual. Though the built-in Windows synth is known to be pretty laggy, even on really fast computers.
TiagoHenriques wrote:I installed than drive, rebboted and now my computer looks like this no matter what settings I select in appearance xD
Oh no! That certainly doesn't look correct at all. ;)

I guess uninstall it. Sorry about that. :D
TiagoHenriques
Posts: 16

Post by TiagoHenriques »

No problem :D

So, now I installed midi bass driver and used fluidR3_GM_sf2

I can select it and hit test and hear the sounds of the new soundfont and play the .eyboard with the nem sounds, but after trying to go back to the main window with the new settings I get:

Couldn't write mini-dump. Error: 3489660941
and the program crashes

BTW, the other problem of the computer rebooting by itself disappeared after I selected windowed mode

r1288 lasted until the game window, when I exited back to the main menu it crashed with:
Couldn't write mini-dump. Error: 2147942431

EDIT: Okay, I just tried setting up synthesia with flstudio and LoopBe1 and ti worked great: no crashes or lag to report!

Do you think this is a good indicative that there will be no lags with a midi controller? (Or it doesn't relate?)

EDIT: ALL sounds are outputed with FLkeys xD

Can you help me to get midibass to work :D ?
Nicholas
Posts: 13132

Post by Nicholas »

That sounds like it might be something like an out-of-memory error. From that dxdiag report, it looks like you're already running a little close to capacity. And the FluidR3 soundfont is pretty big. Running all those things at once is probably extra hard on your system.

Good to hear windowed mode solved the crash though.
TiagoHenriques
Posts: 16

Post by TiagoHenriques »

I see.. I tried using pianissimo soundfont (6mb) and it lets me play the whole song, goes to the score board and than sometimes I can playit again other times it just crashes with or withou display that error

If I go into keyboard setup sometimes it crashes imidatly, other times it lets me play in there and than crashes on exit.

I tryed to kill all non essencial processe, including explorer and it crashed even sooner :shock: but tis pretty random

In the mean time I can already play the beginning of für elise :D:D:D
Electrode
Posts: 195

Post by Electrode »

I will try this new dev preview out over the weekend, hopefully!

Regarding newbie help, how about introducing a clickable template on the pause screen (much like what we have already, but more like a full keyboard + mouse diagram) that displays the binding assigned to the clicked key combo on the template. For instance, if I clicked the "D" key on the graphic (for example), if there was a binding attached to that key, the D key would light up on the diagram and any binding (if set) would display (in large-ish text and centred) directly underneath the template graphic. (If there is no binding, perhaps "Not used" - or words to that effect - could display.)

Clicking the Ctrl key on the graphic while the D key was already selected, would display the binding for Ctrl + D instead. Clicking any selected keys on the graphic would de-select them. Only one alphanumeric key would be selectable at once, but of course, several modifier keys could be toggled at the same time. (So, essentially, each key is a toggle for displaying the key binding attached to that key or key combination.) It's basically an interactive, dynamic help system using a similar concept to what we already have, just jazzing it up a bit.
Nicholas
Posts: 13132

Post by Nicholas »

Showing a whole-keyboard template is tricky because of all the different language mappings. Also because one key could be responsible for lots of bindings (d, D, Ctrl-d, Ctrl-D) it also gets tricky to show their associations with the various game functions that way too.

The way I tackled the software keyboard mapping problem for new players (without a MIDI device) was to offer a button on the (new in the next preview) help screen that would switch their key labels over to "Software Keyboard Mapping" automatically. The button is right after a short blurb about hitting notes just as they reach the keyboard and also has a shortcut button to take you right to the key bindings screen (more for reference than for changing things).

Outside of a graphical way to change the software keyboard mapping, I'm pretty happy with where things ended up for now. At least happy enough to proceed. I'll work my way back around to it eventually. I always do. ;)
Trujax
Posts: 6

Post by Trujax »

Hi Nicholas, i have to say what a great work! Could you accept a suggestion? please allow multiple midi inputs simultaneously, now that there are midi bindings. I want to use my midi surface control along with my midi keyboard.

By the way, my "midi surface" is an android mobile phone with these little pieces of software: Wireless mixer (https://market.android.com/details?id=c ... elessMixer) and TouchDAW (https://market.android.com/details?id=d ... rch_result), designed for wifi remote control daws and midi instruments. Both there are free in the android market. I think that these days almost everyone haves a smartphone, but most people don't know about this potential use. For IOS there are even better solutions, but i am not an iphone user so i can't provide advice.

Thanks!
Nicholas
Posts: 13132

Post by Nicholas »

Trujax wrote:please allow multiple midi inputs simultaneously...
An earlier 0.8.2 preview (fixing the device unplug crash) required a little bit of rework that got the code a little closer to multi-device input. And just now, having to reroute a few things to get the MIDI input binding working, multi-device input is very close.

I don't expect to have time for it in the next two months (with the big iPad push I just started). Though, with how easy it's going to be now -- basically the only work left is changing the UI stuff on the keyboard setup screen so you can pick more than one -- I expect to add it near the beginning of 2012.

(I had the same experience. During my key binding testing over the last few weeks, it seemed like it'd be cool to have one of my test devices just hang out on top of my actual keyboard so I could control stuff with it.)
skyhawko450
Posts: 18

Post by skyhawko450 »

I've just been running this update for a few days now, and so far, I like it Nicholas! I'm no expert on either programming or music, but I will continue to run the update and will report back any "unusual" activity.

Thanks
Nicholas
Posts: 13132

Post by Nicholas »

Thanks! Hearing positive feedback is often just as useful as bug reports. That way I know people are actually getting their hands on it and trying it out. :D
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

Nicholas wrote:
Trujax wrote:please allow multiple midi inputs simultaneously...
(I had the same experience. During my key binding testing over the last few weeks, it seemed like it'd be cool to have one of my test devices just hang out on top of my actual keyboard so I could control stuff with it.)
Hmm, using MidiOx inbetween is maybe just the right solution.

Your N devices --> Midi-Ox, all inputs routed e.g. to Midi-Yoke Out 1 --> Synthesia, with Midi-Yoke 1 In activated, voila.
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

The command line feature seems not to work here in 1488. I experience just a short kind of "flickering" but no Synthesia window appears at all, I tried both DirectX and OpenGL drawing, both the same.
maccer
Posts: 222

Post by maccer »

The key binding feature now actually works better than the software keyboard for Swedish keyboards!

In the 0.8.2 Preview r1395 - Mac updates thread I wrote:
The software keyboard works slightly better: it now recognizes the ä and ö keys on the Swedish keyboard. But still not the ¨ key (see this post for image).
The good news is that the ¨ key is recognized in key bindings - but as a nameless key, when I press it the key binding dialog looks like in the attached image. It would be great if the same key would also work with the software keyboard.
The ¨ key.png
The ¨ key.png (26.29 KiB) Viewed 16836 times
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: 13132

Post by Nicholas »

(I don't suppose there is any way you could test the same thing on Windows, somehow? :D )

But yeah, I can detect the key-codes now (vs. just the on-screen character). Though, I'd like to solve how to show the ¨ in that window. Mostly because I've since removed the "Key " part from the "Key X" display. That will show up in the next preview. So if the ¨ isn't displayed, it will show nothing.

When I switch the software keyboard's storage to a different method similar to the new bindings.xml (instead of that simple string that is stored in settings.xml at the moment), it'll get that upgrade for free. That will be the same time I make an on-screen graphical mapping tool for it, too.
Nicholas
Posts: 13132

Post by Nicholas »

TonE wrote:The command line feature seems not to work here in 1488. I experience just a short kind of "flickering" but no Synthesia window appears at all, I tried both DirectX and OpenGL drawing, both the same.
Which command line options are you using? I just tried a few of them and they seemed to be working fine.
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

For testing I used the autohotkey code below:

Code: Select all

Speed := 80
LoopStartMeasure := 1
LoopEndMeasure := 3

Run, Synthesia.exe --on-startup Play --speed %Speed% --play-mode Practice --copy-score --loop-start=m%LoopStartMeasure% --loop-end=m%LoopEndMeasure% test.mid
Oldrich
Posts: 61

Post by Oldrich »

I have a few comments / suggestion:

1. Design the program for smaller (netbook like) display sizes (the "change keyboard software settings" window does not fit to my netbook at all)

2. Large parts of the program can be used only by mouse (different menus). I would suggest to support keyboard navigation everywhere.

3. You often suggest to use synth of the real keyboard and not the computer synth. That means that notes should be muted by default for that case, right? Otherwise you will hear double sound - one from the keyboard and one from the computer synth. Is it possible to set up muted notes by default even for the simple view menu?

4. I do not know how it is in the latest version but if the program crashed from any reason, many items (scores, settings etc) were not saved. Please save everything as soon as possible to the disk. BTW: where do you store the user data?

I love you program and use it almost every day while learning piano!
Nicholas
Posts: 13132

Post by Nicholas »

1. I design for 1024x600. Everything should fit at that resolution. The tiny bit of cut-off at the top and bottom of the "Keyboard Size and Settings" is a little tragic, but there is just a lot of information on that screen. I made sure it was all still legible though. My stats are showing 2.8% of website visitors are running anything smaller than 768 vertical resolution. I do feel bad for giving anyone a poor experience, but having 2% of people see the "Back" button partially cut-off didn't seem so bad.

2. This is the goal eventually. I can usually only take small steps each release toward larger goals. 0.8.2 is bringing us a long way, so I'm happy about the progress for now.

3. The solution here is "Local Off" on your synth. That whole notion is included in the MIDI standard for exactly this purpose. Synthesia is acting as a sort of master device in this case.

4. And here, I'd sooner make crashes so rare that this is a non-issue than try to write code around it. I actually spent about 2 years tracking down a bug where data files would become corrupt if I tried to write them periodically the way you described. (I'm still not 100% convinced I solved it, either. :? ) Otherwise, you can find the data files by typing "shell:appdata\Synthesia" in a "Run..." prompt. They're stored in %appdata%\Synthesia.
vicentefer31
Posts: 899

Post by vicentefer31 »

"View in Synthesia" doesn't work in r1488 in my PC
Picasso: I am always doing that which I cannot do, in order that I may learn how to do it.
Nicholas
Posts: 13132

Post by Nicholas »

I take it you're overwriting a typically-installed Synthesia.exe (with the file-association stuff that makes the "View in Synthesia" available) with the dev-preview version of Synthesia.exe?
Locked