10.3.4075

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

Post by Nicholas » 09-13-16 11:35 pm

SYNTHESIA 10.3.4075
Download from the front page.

Reminder: Synthesia 10.3 no longer supports Windows XP, Mac OS 10.6, DirectX, or OpenGL 1.x.

CHANGES SINCE r4031
  • New Features
  • Added 5 songs from a pair of popular video games (the authors of which were awesome enough to give their permission). All 5 are always playable, even in demo mode.
  • The first 20 seconds of any song is now playable in demo mode (instead of just showing a "please unlock" prompt). Time limit is indicated on timeline with an orange warning stripe.
  • 13 more songs have been enabled in demo mode.
  • iOS and Android versions of Synthesia now have a quiet, unobtrusive pair of links at the lower-right of the title screen describing how to get support and how to rate the app.
  • Added "Title.ShowNews" advanced setting to hide project news from the title screen.
  • Synthesia now detects the "UpperFilters" registry problem on Windows and reports it on the Settings screen.
  • Added Jamboxx support to Synthesia for Android.

    Fixes
  • Synthesia for Android now works on Android N instead of always crashing outright. :?
  • Fixed Android texture glitching that was showing up on some devices.
  • Fixed the "I can't type" bug on Android.
  • Android got a nicer app icon.
This is live, so DON'T use the pink box! (iOS is waiting for Apple's review and should be up in a few days.)

The mountain of fixes and improvements had grown too large, so it was time to call it a proper release. Now 11 really is going to just be sheet music. I've already gone back and retconned the other preview posts to say they were 10.3 all along. :lol:

Speaking of 11, that work has been continuing in parallel with all of these fixes. Some of the new drawing tech is already turning out pretty cool. And my foray into Behind Bars continues to illuminate a million subtleties I wasn't even aware of, most of which are low-hanging fruit and should be easy to bring along without too much extra effort. Instead of having to wing 90% of the layout decisions (even MusicXML still leaves a lot of the details up to the engraving engine), the book provides guidance on some of the most minute points.

I'm getting more excited to see the end result all the time. This is going to be a quantum leap in quality.

revilo2
Posts: 111

Post by revilo2 » 09-14-16 2:04 am

Great !!

Any idea of the time still the next preview ?

kiwi
Synthesia Donor
Posts: 1178

Post by kiwi » 09-14-16 6:00 am

The "first 20 seconds is a very good idéa!

Edit: It seems i have lost some bookmark and others stuff from my recently played songs (not really a problem...)

Beside that Synthesia run fine here on El Capitan.
Last edited by kiwi on 09-14-16 8:22 am, edited 2 times in total.

Nicholas
Posts: 12440

Post by Nicholas » 09-14-16 8:05 am

No ETA yet on the next preview. ;)

And yeah, giving a short section of the song clears up a lot of the problems ("will this song work in Synthesia?", "do I have my keyboard configured correctly for this song?", etc.) without it being all or nothing. It took like an hour to implement, too. I like those kinds of solutions.

rumpole
Posts: 22

Post by rumpole » 09-23-16 3:23 am

Hi Nicholas,

Thank you for your reply. The log.txt does not say anything about "Could not load..."

1: Comments in the log.txt are, in order top down:

"Initializing simple settings system"
"Loading machine list"
"machine not found"
"Resource not found. Returning empty document"
"Loading settings list"
File found: 1462 byte (s)"
Starting Synthesia 10.3 - r4075'
Built Sept. 13 2016
Running on Windows 6.1"
"C:\Program Files (x86) Synthesia\Synthesia.exe"
"Attempting to process the command line."

2: Tried Intel Utility 2.6. Nothing which might indicate that there is a later/alternative driver to download, but then I do not really know what I am looking for.

3: If this is an issue of an outdated obsolete graphics card/driver installed on a machine now 10 years old, and there is not an update possible, it might be desirable to change to a new machine. However, if my machine is obsolete, that begs the question of how many thousands of similar machines are affected, and which would impact upon your present and future customer base. That indeed, would be a shame.

Any suggestions on how to run with this?

Regards,

rumpole

Nicholas
Posts: 12440

Post by Nicholas » 09-24-16 11:07 pm

rumpole wrote:... if my machine is obsolete, [...] how many thousands of similar machines are affected?
Users running Windows XP or macOS 10.6 already see a different button on the download page than everyone else. It will forever point them at the 10.2 release. So, at the very least they can use some version of Synthesia... even if it's not the very latest. I could see detecting the OpenGL problem and pointing users at a page with a link to the most recent usable version.

It does hurt to have to move on from very old platforms. I spend a lot of my time feeling guilty for not being able to please everyone. But, Synthesia LLC is still a (very) small operation with barely the resources to support the latest versions of our 4 major platforms. (I would argue that Android already over-extended us.) So, changes like the removal of DirectX and ancient OpenGL support in Synthesia 10.3 actually free up time to work on other things.

Before, we had 3 completely separate code paths: Desktop OpenGL (1.0), Desktop DirectX, and tablet OpenGL (modern) used to draw things to the screen. It was a lot of work and three times the opportunity for one of these giant companies to break something on us (which Google does to us with Android updates every couple months). Whenever I wanted to add a new graphics engine feature, I had to figure out all three different ways implement it and work out three different sets of bugs. That is a lot of time spent with the project not really moving forward. Now that ALL versions of Synthesia use the exact same modern OpenGL path, we have a lot less code to fight against. Repeat that decision to consolidate things a hundred more times, and you're talking about a lean platform that finally lets us get to the things users want.

So, it's a matter of choosing our priorities. If our goal was to maximize the number of devices/computers that could run Synthesia, then you would never see a new feature again. I spend a lot of time comparing my business practices with others and it feels like we are on the "very conservative" side. (We supported Windows XP more than 2 years longer than Microsoft did!) Keeping an eye on our website traffic, my goal is to support as close to 99% of our visitor's platforms as we can. In this case, XP and macOS 10.6 finally fell off the bottom of the chart. It's a little trickier to get information on the graphics capabilities of the hardware people are using, but the early Intel chipsets from around 10 years ago were barely capable of doing much of anything at all.

I remember reading about pixel shaders for the first time when I was in 10th grade in high school. It was an exciting new technology and I couldn't wait to start using it. Who would have guessed it would be 18 years before we could count on most people having hardware that can run them? And from the sounds of it, we're still not there yet.

I just pushed a quiet dev preview release with a small change that might get things working on your machine. If you grab r4091 from the pink box at the top of the page, does that run on your machine?

rumpole
Posts: 22

Post by rumpole » 09-25-16 5:21 am

Hi Nicholas,

Thank you for your correspondence. I now fully understand the difficulties with which you have to deal.

The simple explanation on your main website might simply be, that, if you have x older machine then only downloads up 10.2 will work. For those users seeking to use higher and the later version 11, then certain later graphics hardware/drivers will be required (something along those lines, perhaps?). It would require a button to, say, 10.2 and a button for later versions. Nobody could be offended at that, and especially, as version 10.2.3742 works brilliantly.

If it were not for version 11 marking the concept's oncoming maturity, and bringing the entire concept of yours into the realms of a professional alternative to the old fashioned horizontal note reading exercise, then I might not even bother. But because the world of music still clings to, what might perhaps be down the track be considered an outdated concept, that is, professionally be able to stand side-by-side,rather than still be regarded by musicians as "gamification" (which incidentally is good, because it allows the solo budding pianist to compete against oneself - I get a kick out of seeing my speed percentage move up a notch of two, as the piece of music is repeated endlessly). Whether your brilliant concept can adapt and go beyond the single user will show in time.

I have now used the program since late 2011, solo. I am still enjoying every day to practice with the Yamaha dgx640. I do concede, and this has nothing to do with Synthesia, that I now should go to a professional teacher. But to find somebody who is au fait with the program in the world of piano teachers is not easy. I, in the meantime, shall plod on learning pieces which at my level should probably not be attempting, and would not be able to attempt with the traditional horizontal sight reading method.

R4091 works. Whatever you have done does the trick. What I cannot ascertain, until I reconnect the computer to the piano (one is in Sydney and one is in Tasmania) is whether r4091 works when reconnected.

Many thanks in the meantime. I am sure that out there in the big world, there are many who think the same as I do. I hope that you make $ zillions and go down in history as the man who changed the learning of music.

With regards,

Rumpole

monkel
Posts: 192

Post by monkel » 10-13-16 3:12 am

Nicholas wrote:Speaking of 11, that work has been continuing in parallel with all of these fixes. Some of the new drawing tech is already turning out pretty cool. And my foray into Behind Bars continues to illuminate a million subtleties I wasn't even aware of, most of which are low-hanging fruit and should be easy to bring along without too much extra effort. Instead of having to wing 90% of the layout decisions (even MusicXML still leaves a lot of the details up to the engraving engine), the book provides guidance on some of the most minute points.

I'm getting more excited to see the end result all the time. This is going to be a quantum leap in quality.
Wow. Just had a look at the sample chapter - that's a lot of stuff to consider. If your work is not too constrained to Synthesia requirements there could be a rendering engine as a result that you could license to others to make some extra income.

Nicholas
Posts: 12440

Post by Nicholas » 10-13-16 5:19 am

I hadn't thought about licensing, but my plans were already to keep the new sheet work as uncoupled from everything as possible so that I might be able to use it in future projects (closer to standalone than, say, the video creator). One major benefit to the preview I'm working on right now is that sheet will be drawn using regular (non-3D accelerated) style drawing, which means the code will be fantastically simpler and nearly dependency free. The likelihood that this new component could just be dropped into another project without modification goes through the roof when you take away all the weird, complicated frameworks that behave slightly different on every platform (like OpenGL).

And if the sample you saw was the first "Ground Rules" chapter, things get way more detailed later in the book. There are 14 pages(!) describing precisely how ties should be drawn between notes. Of course, a majority of the book is for non-piano instruments, but there is still a tremendous amount of detail relevant to Synthesia. (The opening third is general purpose, while afterward it gets broken down into notation used by specific instrument families.)

That said, while there is plenty of easy-to-implement stuff (especially where I would have just had to pick my own uneducated heuristic in the absence of professional guidance), there are some nitty-gritty things that are hard and don't make a lot of sense to attempt during this Synthesia 11 work. (Say, notational quirks that haven't been used in more than a couple hundred years... but which are still covered in this book! :lol: )

Still, no matter what is left out this time, it's going to be a pretty ridiculous quality increase.

monkel
Posts: 192

Post by monkel » 10-13-16 6:30 am

Are you actually using any of the stuff musescore is implementing? It's after all published under GNU, available for multiple platforms and has a relatively good import function to generate decent sheet music from midi files. I'm sure there are some tricks under the hood that could be worth a peek.

https://github.com/musescore/MuseScore

Nicholas
Posts: 12440

Post by Nicholas » 10-13-16 7:59 am

I had considered peeking at some point, but that's all it can be with their license, unfortunately. Of course, MuseScore has its own flaws (click "Product E"). Too much peeking and we'd be in danger of unintentionally replicating bad behavior.

(Since that post on Steinberg's blog, MuseScore has fixed some of the things that were pointed out.)

Synthesia's implementation also necessarily gets to be an order of magnitude simpler, as well. It only has to support displaying two-hand piano pieces. MuseScore has the much larger task of displaying and editing everything in Behind Bars. (If this weren't the case, trying to re-implement all of MuseScore inside Synthesia would be a fool's errand! Our team is smaller than theirs, and sheet music is and has been their entire job for more than a decade now.)

User avatar
jimhenry
Posts: 1815
Location: Illinois

Post by jimhenry » 10-13-16 10:26 am

Nicholas wrote:It only has to support displaying two-hand piano pieces.
At a minimum you should also be considering 3 part organ music. And you should also consider piano four hands. Plus there are some keyboard pieces that are sufficiently complex that the part for one hand is presented on two staves. And then there is the question of how you should notate pieces where the keyboardist is switching between two or more keyboards during the piece.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/

Locked