What does it mean to "learn" a song?

Archived development update discussion from past versions
Archived development updates.
sladeburns
Posts: 13

Post by sladeburns »

I know we are getting off topic but...

I am in a situation where I teach Middle and High School students, I have a lab of 30 computers and I would actually prefer separate Synthesia accounts for each student. However, there needs to be a way for teachers to set up classes in Synthesia for managing/reporting these accounts. I would like a distinction between personal and education/student classroom accounts because their use is very different. I guarantee most teachers would like some way to report student progress to their account somehow.In my situation, I have 30 computers(so 30 copies of Synthesia) but I could have up to 200 students per semester using the program.

As far as Rubato goes, what do you think about it being an unlock/achievement after playing a song at a proficient level? Perhaps an optional setting in the teacher's class management preferences?

I also like the idea of 3 consistant, proficient playthroughs to demonstrate mastery. Again, perhaps a variable setting in class management preferences. The more flexibility for individual instructors to customize to their teaching preferences the better.

Thanks for your work Nicholas. I am very excited that we are at this point and I will be checking in more often. I am going to get my purchase request ready so I'm at the front of the line when the budget refreshes this summer. :)
Nicholas
Posts: 13135

Post by Nicholas »

bluesdance wrote:That would be INCREDIBLE and LOVELY. I would actually use it per class.
Actually, that reminds me of a workaround that might help. If you follow these instructions, every time you start Synthesia all scores will be wiped clean:
  1. From a Finder window, navigate to the top-level Macintosh HD, then Library, and finally Application Support.
  2. Double-click the Application Support folder to "enter" it so that the Finder window's title bar changes to say "Application Support".
  3. Choose File -> New Folder from the pull-down menu. (You'll have to enter an admin password because this is a computer-wide location that affects all users.)
  4. Name the new folder "Synthesia".
  5. Add the following two files to the new /Library/Application Support/Synthesia folder:
scores.xml
(52 Bytes) Downloaded 258 times
songProgressCache.xml
(56 Bytes) Downloaded 261 times
That system-wide location is meant to contain "master" settings in a classroom setting. Things like network folder locations for shared MIDI files or to auto-unlock the Learning Pack for every student, even if they all have separate accounts on that computer. Each time Synthesia starts, it tries to load settings from that location first. If a file exists there, it uses it without checking the local user location for the same file.

So, we get to cheat and put an empty set of score files (the "songProgressCache" is for the big numbers shown at the left in the song library). Then, each time Synthesia starts, it reads those first and ignores the "actual" scores from the user data folder. So the net effect is to wipe out all the scores each time you start things up.

It's kind of brute force and definitely inconvenient to set up for the first time, but it might help. Let me know if you have any trouble getting it to work.
sladeburns wrote:... there needs to be a way for teachers to set up classes in Synthesia for managing/reporting these accounts.
This is something I've always had in mind, since the very first days before the Learning Pack even existed. It's the core reason that there is a distinction on the checkout page between home use and classroom use. I would like Synthesia -- when unlocked with a classroom key -- to have all the centralized features you described. You should be able to create accounts from some instructor console and all the machines on the network should be able to interact with that list.

It does bring up a lot of technical issues: do those accounts need passwords? Without them one student could provide results for another (either to pollute their results with poor scores or cheat for them with high scores). And if passwords are involved, why isn't Synthesia using the account access-type features provided by the operating system and network? Suddenly Synthesia has to learn how to "speak" network/domain protocols for any of the popular vendors that schools use.

Definitely a tricky problem. Although Synthesia isn't the first to have to solve it. I am sure there are good examples of how to do it right out there. Some other classroom software that integrates well with existing networks. (You'd be more familiar with any good examples than I would. Do you know of any other software that does a nice job of managing many students, securely, without requiring a whole extra set of users/passwords to be created? Being able to use existing network accounts would be ideal!)

In any event, as classroom adoption has slowly increased over the years this is getting closer to the top of the to-do list all the time. And when I hear direct interest like this from teachers it does a nice job of accelerating it to the top.
bluesdance
Posts: 23

Post by bluesdance »

so glad to find another teacher on this forum! although it seems like Sladeburns and I represent two very different use cases -- me with one keyboard for a room of younger kids, Sladeburns with a computer / piano lab. I think it's great that we can share our two different perspectives.

I just wanted to add that my kindergarten kids LOVE free play. I set a timer on the screen for ten seconds and each kid gets to hammer away at the keyboard for ten seconds. they just like being able to make the shapes and colors move around the screen. it often comes out sounding not unlike some of the modern compositions I studied in college so who am I to judge the normative quality of their improvised music? ;)
sladeburns
Posts: 13

Post by sladeburns »

Nicholas wrote: It does bring up a lot of technical issues: do those accounts need passwords? Without them one student could provide results for another (either to pollute their results with poor scores or cheat for them with high scores). And if passwords are involved, why isn't Synthesia using the account access-type features provided by the operating system and network? Suddenly Synthesia has to learn how to "speak" network/domain protocols for any of the popular vendors that schools use.

Definitely a tricky problem. Although Synthesia isn't the first to have to solve it. I am sure there are good examples of how to do it right out there. Some other classroom software that integrates well with existing networks. (You'd be more familiar with any good examples than I would. Do you know of any other software that does a nice job of managing many students, securely, without requiring a whole extra set of users/passwords to be created? Being able to use existing network accounts would be ideal!)

In any event, as classroom adoption has slowly increased over the years this is getting closer to the top of the to-do list all the time. And when I hear direct interest like this from teachers it does a nice job of accelerating it to the top.
I use a program called Music Ace Maestro to supplement my music theory instruction and it has decent network integration. The students log into the school computers with Active Directory usernames and passwords. Our IT dept. has set up a server so when students log into networked software, the OS prompts them to log in again with the same AD user name and password. This usually ports their AD info to the program. Music Ace Maestro has a separate program called Maestro Manager which is used to manage classes, set syllabi, etc. Just one example.
bluesdance wrote:so glad to find another teacher on this forum! although it seems like Sladeburns and I represent two very different use cases -- me with one keyboard for a room of younger kids, Sladeburns with a computer / piano lab. I think it's great that we can share our two different perspectives.
Agreed!

Again, I currently use Finale Performance Assessment from Finale 2005 and 2006 to assess my students on piano. It is essentially crippled SmartMusic and very much at the end of it's life. SmartMusic is wonderful software for what it does but the company that owns it is not interested in seriously adapting it for piano use or multiuser lab setups like mine. The subscription, all or nothing system they use is also unsustainable for me. I have begged and pleaded but they are unwilling to even engage in a conversation which is why I am here. I have been lurking for a while and really like what I see developing and how it is evolving through community suggestions/needs.
Nicholas
Posts: 13135

Post by Nicholas »

Thanks for all the feedback, both of you. Synthesia 10 isn't even out the door (or halfway finished for that matter) and the feedback I've already received about the new Free Play mode is very encouraging. It seems to have sparked many imaginations in all sorts of different directions.

Those two examples of network-integrated software packages were useful, too. I try my best to keep up with the other useful piano/music theory packages but that was the first I'd heard of Music Ace Maestro. Their system seems pretty well documented, so with any luck there should be some useful ideas there.

It's interesting that the MakeMusic folks don't have a version of SmartMusic that works with piano. I'd only seen a bit of promotional video for SmartMusic and just assumed piano was a supported instrument. It requires microphone input, doesn't it? I wonder if that means they only have good support for monophonic instruments. Detecting more than one note at a time (like a piano, guitar, or say a harp can produce) with any degree of accuracy is a much harder computational problem than single-note instruments like a flute or trumpet.
sladeburns wrote:I have begged and pleaded but they are unwilling to even engage in a conversation which is why I am here. I have been lurking for a while and really like what I see developing and how it is evolving through community suggestions/needs.
I am definitely personally invested in solving these kinds of problems. My only worry is that I need to spend a little energy tempering expectations. It's unfortunate that a huge player like MakeMusic in this market won't even have that conversation... though I would caution that while I'm very happy to, my resources are extremely limited. Calling Synthesia a small shop would be generous. Our business address is actually just my house (though the same appears to be true of Music Ace Maestro, too).

So while I am interested, Synthesia has a good track record of steady improvement year after year for nearly a decade now, and I even have an idea of when these types of features will fit into the plan, I would be remiss not to describe that plan as being measured in years, rather than months. As long as you're comfortable with that, hopefully I will be able to help!

This is a very exciting time for the project. I've recently fully embraced the idea of making Synthesia more pedagogically sound and focusing on making it the best possible piano practice tool available. Historically it has (poorly) straddled that line with various elements from rhythm video games. For example, I'm not sure a score multiplier (that grows as a function of how long since the player has missed a note) has any place in Synthesia's evaluation of a performance. I would argue that every mistake in playing is much more significant than the length of time between successive mistakes. There are a few other things along those lines I want to improve, too.

I also just took a look at the letter grading that you mentioned, bluesdance, and I agree there isn't much value there. That a song played in melody practice shows an "F" in any column for any reason, even if every note was played correctly could practically be considered a bug. I'll have those removed in the next development preview.
sladeburns
Posts: 13

Post by sladeburns »

Nicholas wrote: It's interesting that the MakeMusic folks don't have a version of SmartMusic that works with piano. I'd only seen a bit of promotional video for SmartMusic and just assumed piano was a supported instrument. It requires microphone input, doesn't it? I wonder if that means they only have good support for monophonic instruments. Detecting more than one note at a time (like a piano, guitar, or say a harp can produce) with any degree of accuracy is a much harder computational problem than single-note instruments like a flute or trumpet.
What they do, they do very well. The thing is, the SmartMusic software can do digital piano/MIDI with multiple notes at once, they just aren't willing to officially support piano. Digital piano is more of an afterthought and I'm positive that they couldn't do a miked, acoustic, polyphonic piano the way they do a sax. MakeMusic appears to be rigidly focused on the 1 band/orchestra and to a lesser extent choir kid in a practice room model. It just makes me scratch my head. *shrug* Oh well. More business for you :)
spiritofcat
Posts: 10

Post by spiritofcat »

I've been learning to play Guitar thanks to Rocksmith and Rocksmith 2014 for the last couple of years, and I think that the way that Rocksmith 2014 evaluates your mastery of a song is something you might be interested in hearing about.

First of all, I have to explain that Rocksmith 2014 makes use of a dynamic difficulty level system.
The song is broken up into sections, and each section will level up or down while you play, depending on how well you're managing to hit the notes it gives you.
At a low level, a section will only give you a few of the notes to play. For example, the first note of each bar, or only the root note of each chord and so on.
As the game detects you hitting those notes correctly enough times, it will level the section up and add in some more notes.
This continues until the game is asking you to play all the notes of the section.
Sections that are repeated throughout the song are tied together in terms of leveling, so if you do really well on the first iteration of the chorus, and level it right up, then all other instances of the chorus will have leveled up too.

When you play a song in Rocksmith 2014, the game reports three stats to you at the end of the song.
- Your note streak, which is how many notes you hit in a row without missing any.
- Your accuracy, which is what percentage of the notes the game asked for, you hit. (Refer to the explanation above to understand what I mean by "notes the game asked for)
- Your mastery, which is the percentage of all the notes in the song you hit. (You can't get 100% mastery unless you're playing with all the sections fully leveled up.)

The "high score" that the game keeps on file for you is simply your mastery score.


Another interesting mechanic that the game includes is Master Mode.
If you're consistently nailing a section that's already fully leveled up, then after a while the game starts fading those notes towards transparent until finally they're not visible at all and you have to play the section by memory alone.
If you start to stumble and miss notes when master mode has activated it will fade them back into visibility for you too.

Master Mode has an effect on your mastery percentage score too. Sections played in master mode yield extra mastery points such that if you play the whole song perfectly with every section in master mode you end up with a mastery score of 110%.
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

Sounds interesting with leveling up. This can be done, using external tools, I am imagining following scenario, now where we have measure-based-navigation, which I did not test yet, but I am assuming it is working correctly:

1. Generating from song.mid the needed level versions, e.g. for 8 levels, song-level1.mid, ... , song-level8.mid.
2. I chose in this example 8 levels, so I will divide each bar into 8 phases. On each level I will add another phase, in binary fashion, so the phases are filled up in equidistant form within the 1 measure space. Example: phase0=beginning of bar, then phase4=middle of bar, and so on. In a simple song case which contains only 8th notes, it would show more and more of those 8th notes.
3. The rest is already available in Synthesia. I have to try this one day, thanks for the idea, another fun dimension.

Fading out, in master mode, later back fading in, is not possible, yet.
Nicholas
Posts: 13135

Post by Nicholas »

Thanks for all of that explanation. I wasn't familiar with Rocksmith's method. I like the distinction between accuracy and mastery. And, actually... Master Mode sounds really cool too.

I like that all of it seems automatic. The user doesn't have to elect any particular difficulty or know when it's time to switch over to master mode; it just kind of happens.

Rocksmith has the luxury of authoring all of their own content. Synthesia has to support any MIDI song out there, which makes the multi-level concept a little more challenging. Though, even the rules you outlined (root note of a chord, first note of each bar, etc.) don't sound too difficult to automate.

My only worry is that by progressively adding notes, a user has to learn a whole bunch of different songs while they're really only trying to learn one. I guess so long as the finger hints shown were the same as the final/hardest version of the song (and users were diligent about following them), the hand motions would keep the same shape, but only become more complex. That wouldn't be so bad.
TonE
Synthesia Donor
Posts: 1180

Post by TonE »

Yes, if you apply only a 'subtraction' operation to notes, keeping everything else same, mainly the fingering, it can work. One option in Synthesia can be 'phases', the number of phases you want to split a measure. Default can be 8. You can set it to 4 or 12 or 16, if you want. So many levels you would get. The least number of notes per measure will be level0. For 4 note chords, it can additionally reduce vertical number of notes as follows:
1. lowest note only, this can be root or non-root note of the chord, simply lowest
2. highest note
3. second lowest note (in a 3 note chord this would be last)
4. second highest note
5. rest notes (for 5+ note chords)

No matter what type of chords the song contains, you could fill up all notes in five levels, always. So minimum phase number can be more than 5, e.g. 6. So the phase options are, now corrected considering chords: 6,8,12,16.
Locked