0.8.2 Preview r1310 - Device rework and bug fixes

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

Post by Nicholas »

PREVIEW r1310
Download from the pink box above.

Changes in r1310 since 0.8.1 (r1288):
  • Your favorite devices will be remembered between sessions. Boundaries and lighted key settings are also remembered per-device.
  • Black keys are now spaced the way they are on real pianos instead of just being centered between white notes.
  • Metronome counts in longer before a song starts and continues all the way until the first note (even if it's a little ways into the song).
  • "No Input Device" is gone forever. Long live the software keyboard. ;)
  • Unplugging a device no longer crashes the game! (Only took 5 years!)
  • Lighted keys now also shift correctly when using Z/X to change octaves.
  • "Bring notes to me" keyboard setting now works with overlapping notes.
  • Instrument detection on the track settings screen is improved (see readme).
  • Finger hint interface continues working through a keyboard zoom change now. :?
  • Non-sparking (auto-played) notes no longer temporarily obscure sparking (user-played) notes.
  • Fixed rare incorrectly-detected super-short notes in some songs.
That was a really big bug pass! Device input is much nicer now. As usual with this many low-level changes, be wary! Please report any new bugs I may have caused while fixing these bugs. :D

Next dev preview will be Song Library quality-of-life features:
  • Library population speed improvements.
  • Better filtering/grouping (not sure what this means yet, but I won't stop until it's improved.) ;)
  • That one recycle bin thing.
kiwi
Synthesia Donor
Posts: 1180

Post by kiwi »

Good work Nicholas i assume all this low level feature are hard to coded/recoded.
Thx for all i go to dl this new build!
Lemo
Posts: 313

Post by Lemo »

I know that the metronome change was a user request, but I think I liked more the shorter version
Maybe you can add an option for everyone to choose the number of measures he likes?

Apart from that I tested sparks and they seem to work just fine now :]
Stuff & experiments for Synthesia: Gramp v0.2SkinboxFireSynthVideoWebradio
Nicholas
Posts: 13137

Post by Nicholas »

kiwi wrote:Good work Nicholas i assume all this low level feature are hard to coded/recoded.
It was exciting. This was the first time it really hit me that I finally have enough time to do these things right. Where before I might have just tried to hack something in real fast to get the job done, this time I was really able to pull things apart, look at them closely, and put them all back in better places. I fixed a dozen things I've been meaning to get back to for years during those quick hacks.
Lemo wrote:... I think I liked more the shorter version
Give it a week or two. Sometimes it's just resistance to change. If you still don't like it after that, I'll think about adding a Configuration Tool option. ;)
User avatar
DC64
Posts: 830

Post by DC64 »

I never noticed that the keys where in the wrong spot before, now the keys dont look so crossed eyed anymore.
Where is the "recycle bin thing"?
"And now for something completely different."
matti
Posts: 11

Post by matti »

DC64 wrote:Where is the "recycle bin thing"?
That's planned for the next preview.
Nicholas wrote:Black keys are now spaced the way they are on real pianos instead of just being centered between white notes.
This wasn't done for "live video feed," was it? ;)
Nicholas
Posts: 13137

Post by Nicholas »

matti wrote:This wasn't done for "live video feed," was it? ;)
It was done for like 9 reasons. Live video feed might be one of them. ;)
User avatar
DC64
Posts: 830

Post by DC64 »

Bug: Whenever I play a song, the title info/composer ect has dissapeared from the beginning.
"And now for something completely different."
aria1121
Posts: 1505

Post by aria1121 »

(I'm back! because of some after-schoolyear tests)
DC64 wrote:Bug: Whenever I play a song, the title info/composer ect has dissapeared from the beginning.
This happens to me all the time now. I always open them like Open With...
By the previous dev there was a gray bar, but no text.
Nicholas wrote:"No Input Device" is gone forever.
Why is it called Synthesia Software Keyboard? It sounds more logic to call it something like Virtual Hardware Keyboard or am I wrong?
Nicholas wrote:Black keys are now spaced the way they are on real pianos
Whoa this looks creepy, why haven't I noticed this before...
maccer
Posts: 222

Post by maccer »

No major problems on Mac as far as I have seen.

Synthesia doesn't crash when I unplug my Roland VIMA RK-500 digital piano on Mac OS 10.6.7, but when I re-plug it and play a few keys I got a crash - see the attached crash log.
Attachments
Synthesia_replug_log.txt
(27.87 KiB) Downloaded 230 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
aria1121
Posts: 1505

Post by aria1121 »

Nicholas wrote:Unplugging a device no longer crashes the game! (Only took 5 years!)
maccer wrote:[...] but when I re-plug it and play a few keys I got a crash [...]
It would be so funny if it takes another 5 years for this :lol:
Nicholas
Posts: 13137

Post by Nicholas »

DC64 wrote:Bug: Whenever I play a song, the title info/composer ect has disappeared from the beginning.
I can reproduce this. (Interestingly a few seconds later it starts to work again when you pause.)
aria1121 wrote:Why is it called Synthesia Software Keyboard? It sounds more logic to call it something like Virtual Hardware Keyboard or am I wrong?
By including "Synthesia" in the name, I was hoping to convey the idea "this is something extra the game has added on top of the rest of your other devices..."

I actually have an old sound card that will install a device named very similar to Virtual Hardware Keyboard, but it's just some general thing on my system that any program can use.
maccer wrote:Synthesia doesn't crash when I unplug my Roland VIMA RK-500 digital piano on Mac OS 10.6.7, but when I re-plug it and play a few keys I got a crash - see the attached crash log.
Hey, where did you get that crash report thing? That's very helpful.

I can see that it was on the input thread... I'll take a look to see if there is anything there that could crash. (What I'm curious about is whether it was on the "old" input thread from the previous device or the "new" thread that was created when you replugged and the device was detected again. Maybe CoreMIDI is smarter than Windows about device re-detection and resurrected the old device that I had since cleaned up.)
maccer
Posts: 222

Post by maccer »

Nicholas wrote:Hey, where did you get that crash report thing? That's very helpful.
I think it's the same information I get from the Mac OS dialog that's shown after a crash. But I didn't think of writing it down just then and closed the dialog. Today I opened the Console application in the Utilities folder, clicked on DATABASE SEARCHES > Console Messages, entered "Synthesia" as the filter in the search box. One of the messages that I found said:

Sender[PID]:
ReportCrash[496]

Message:
Saved crash report for Synthesia[490] version ??? (0.8.2) to /Users/<Username>/Library/Logs/DiagnosticReports/Synthesia_2011-06-26-233828_<Name_of_my_computer>.crash


So, I looked in the ~/Library/Logs/DiagnosticReports/ folder and sure enough, it contained the crash file I sent you.
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
DC64
Posts: 830

Post by DC64 »

I have noticed that the notes for the this song in the beginning for v 8.1 are short, but long in v8.2p.
The sound length is exactly the same but look different. How did this happen?
http://midi.mididatabase.com/beatles/Revolution.mid
(Sounds better with Timidity :p)
"And now for something completely different."
Nicholas
Posts: 13137

Post by Nicholas »

DC64 wrote:I have noticed that the notes for the this song in the beginning for v 8.1 are short, but long in v8.2p.
Nicholas wrote:Changes in r1310 since 0.8.1 (r1288):
  • Fixed rare incorrectly-detected super-short notes in some songs.
;)

(It doesn't actually change that the MIDI is a bad one... those NoteOn and Offs are transposed such that those notes should be longer. Still, at least Synthesia is showing them correctly now.)
User avatar
DC64
Posts: 830

Post by DC64 »

I still cant figure out why with why with another sf2 driver it sounds short, but in timidity it sounds like in the video.
(dont put me wrong, I do use BASSMIDI)
"And now for something completely different."
Nicholas
Posts: 13137

Post by Nicholas »

It's completely up to the MIDI driver how to interpret the following:
- Time 0: Note On
- Time 5: Note On
- Time 5: Note Off
- Time 10: Note On
- Time 10: Note Off

It's completely ambiguous. Should the first one (at time 0) sound forever while the ones at 5 and 10 be super-short, little clicks of notes? That is, should they be paired up like this:

- Time 0: Note On (Note 1 start)
- Time 5: Note On (Note 2 start)
- Time 5: Note Off (Note 2 end after 0 units of time)
- Time 10: Note On (Note 3 start)
- Time 10: Note Off (Note 3 end after 0 units of time)

Should the "Off" at 5 be paired up with the "On" at 0? Who is to say? The MIDI spec doesn't define it. It just mentions that some devices are capable of more than one NoteOn at the same time but that it's up to the device what it wants to do in that situation. That would look like this:

- Time 0: Note On (Note 1 start)
- Time 5: Note On (Note 2 start)
- Time 5: Note Off (Note 1 end after 5 units of time)
- Time 10: Note On (Note 3 start)
- Time 10: Note Off (Note 2 end after 5 units of time)

Most MIDI drivers go with choice 1. Timidity apparently goes with choice 2. I prefer choice 2 as well. That's all that is happening. The MIDI file just has the events in a strange order. You can see in that second example (Note 1, 2, 1, 3, 2) that things have to be interpreted with a little more care if you want to do it right.

A much more sensible ordering for that would be to transpose the Offs and Ons like this:
- Time 0: Note On (Note 1 start)
- Time 5: Note Off (Note 1 end after 5 units of time)
- Time 5: Note On (Note 2 start)
- Time 10: Note Off (Note 2 end after 5 units of time)
- Time 10: Note On (Note 3 start)
...

Then there is no ambiguity and everything makes perfect sense. So, chalk it up to a broken MIDI.
Nicholas
Posts: 13137

Post by Nicholas »

Hey, if anyone out there is still running XP (I can't seem to track down a test machine that isn't Vista or later), could you try to see if a bug that I discovered reproduces?

On the "Add New Watched Folder" screen (at least in Vista and Win7), if you click one of the shortcuts on the side (Desktop, Home, Music, Documents, etc.) the path it pops you over to has a trailing backslash (e.g., C:\Users\Nicholas\Documents\ ). But, then if you hit the "Go up a level" button the directory doesn't actually change... just the trailing backslash is removed (e.g., C:\Users\Nicholas\Documents ). You have to hit the "go up" button twice to actually go up.

Does that happen on XP too? Thanks!

It seems to be working correctly on the Mac. I'm guessing it was introduced the last time I rolled the version of the Boost library to latest and I just hadn't discovered it until now.
Raymond
Posts: 528

Post by Raymond »

Nicholas wrote:Hey, if anyone out there is still running XP
XP Media Center 32bit.
Nicholas wrote:Does that happen on XP too?
Yes it does.
Nicholas
Posts: 13137

Post by Nicholas »

Excellent, thanks! That will be fixed in the next dev preview. ;)
Locked