Hi
My elderly father goes round old people's homes entertaining them with his keyboard which he recently upgraded to a Yamaha PSR E-473. He also plays the trumpet and his keyboard can play Midi files to accompany him when he plays the trumpet.
He asked me to make a few tracks for him, most of which I already had in my decades old collection of midi files and they play fine on his keyboard. One song he asked for I was not familiar with so I spent a small amount of money buying the track online.
It plays perfectly on my computer and all the keyboards I own (none are Yamaha) but the drum track plays as a piano on his Yamaha PSR E-473 and I cannot figure out what is going on. It doesn't help that he and his keyboard are a 90 minute drive from me so all testing involves me phoning him to get him to put his USB stick into his laptop then me using a remote desktop connection to copy stuff over for him - he's not computer literate at all!
I've done a lot of Googleing and found people with similar issues but I have yet to find a solution.
Can anyone point me in the right direction? Happy to upload/link to a file if it would help someone identify the issue. It seems to me that it's something Yamaha specific that I'm missing but I don't know what.
I should add that this isn't the only track where the drums play as piano - most of the tracks I have/create are doing the same thing.
By default, anything played on channel 10 is drums.
It is possible that this setting was changed on the E-473 and that that file does not reset it, or, alternatively, that the file does not use channel 10 and forgot to change it, or tries to change it but uses a command that is not understood by the E-473.
Can you check with a sequencer? Or post the beginning of the file (in a .zip) here?
Thanks. Please find attached a .zip file.
This is the first few bars of the original file as purchased. As far as I can see, all notes are on channel 10 though when I look at the events list in Cakewalk, it does show an entry which refers to channel 11 and an acoustic grand piano. I have tried removing that entry but it didn't solve the issue.
I really appreciate your help with this.
There's a LOT of non-standard midi commands in this file, I've no idea of how much of this will be recognised by your father's keyboard.
According to the Text items, Ch 10 uses Tr 10, and this is assigned to 'Standard' which I assume will be the Percussion.
This channel/track has Bank Select instructions. However, I don't see a Program Change. Ch 10 would probably have defaulted to Percussion anyway, but with the explicit Bank Select but no Program Change I'm not sure what will actually have happened. As 'Standard' kit is wanted, it would be better to remove the Bank Select and see what happens.
Tr 10, where there is no Program Change for C 10, DOES however have a PC for Ch 11, which seems a little odd?
I'll look further at this.
Geoff
Martin,
Yes!
I've loaded the file into SynthFont, my VST player, and the initial screen shows the Bank Select commands, but Program Selected as 0 which is Piano.
This may be because there IS the Bank Selects, but no PC?
There is an Events List screen, I went into that and deleted the two Bank Select items, and the PC which shows as Acoustic Piano. I saved the file, and reloaded it.
Synthfont now shows Ch 10 as 'Standard', as per the text description.
When I play the file, percussion sound OK, everything seems OK (as in 'normal').
So yes, the problem seems to be the incomplete Bank Select which is over-riding the default setting for Percussion, but leaving it as zero selected, which is Piano.
Try that.
Geoff
Thanks Geoff. That makes sense now. I'll give that a go.
The PC item on Ch 11 is nothing to do with this. Deal with the items on Ch 10.
I've looked again at the original file. All the programs have a Bank Select. I think that All the Bank Selects are NULL settings, i.e. they don't do anything. They need not be there.
Each is followed by a PC (Program Change) which sets the voice, but this will just use the default bank, so there is no problem here.
The percussion track, track 10, would be set for a Percussion bank anyway, by default. You COULD use a Bank change and PC to set a non-Percussion voice. Or you might use different val;ues and select a different drum kit. But, in effect, the Bank Select has turned OFF the default Percussion setting, but has not replaced it with anything, as for this Channel there is no PC.
As there is no instrument selected, the system has defaulted to Voice 0 (Piano).
Removing the BS/PC (if the latter shows, it's not in the data, maybe it's added by the software) will return things to the default, where Ch 10 is Percussion.
Geoff
Thanks Geoff. Deleting the BSs on 10 sorted everything.
Cakewalk and MidiEditor do not seem to show BS at all. I Googled for and downloaded Synthfont in order to see and delete those entries. Looks like I'll be investing in a license 🙂
So glad you took time to look at this for me as I was tearing my hair out trying to fix something I couldn't even see!
Really appreciate it.
Thanks in return.
That IS news. I was not aware that there are some systems that don't (bother to?) show ALL the events.
I wonder, on what basis do they not show some?
The BS events are certainly in the midi file, so they OUGHT to show, even if they are, in effect, invalid. As you point out, if you cannot see them, then you cannot remove/correct them!
I suppose I can see a hint of logic, the software must see that two BS and no PC is an invalid midi instruction, therefore disregard it? BUT - much better if the software shows it, but flags it as invalid.
Synthfont did show them, but it usually shows errors (or invalid) items in red, but did not do that in this case.
I hope your father's entertaining goes well. Sounds like he's doing a good job!
Geoff
For investigating the contents of a MIDI file, I like to use the Windows MIDI sequencer Sekaiju. Sekaiju shows you every event in the MIDI file.
Cakewalk considers certain events at the very beginning of a track (at time 1:1:0) as "track properties". Cakewalk will show them as values on the Track List, but doesn't show them as events in the Event List.
For example, the attached picture shows the same MIDI file track in Sekaiju's Event List and in Cakewalk's Track List and Event List. The Track Name, Bank Select, Program Change, Volume, and Pan events appear in Cakewalk's Track List, but not in Cakewalk's Event List.
Thanks for the extra info, Bavi,
Well, looking again at the midi file in question, I see that all events in the file have ended up with assigned time data, all events seem to have unique times.
So the specific events referred to, the Bank Select and PC for Track 10/Ch 10 are a distance from the start of the file, and are at Ticks 553 to 555, which are Times 0.567 to 0.569
I think these events are before any Note On has happened. I'm sure the Note events etc have Real Time used for them once they start.
If the relevant events were not showing in the main list, they must have been treated as Track Properties, so Martin might look there to complete the picture.
Geoff