Synth Forum

Notifications
Clear all

Automated changing of Parts during play

6 Posts
2 Users
0 Reactions
1,392 Views
 Axel
Posts: 0
Active Member
Topic starter
 

Hi,

I'm about to buy me a new device, ideally the MX61 (currenty I own a PSR-740). To make sure that it can be used in the setting I'm currently playing, I have some questions:

- In the modus "Playing the keyboard along with Songs", does the selected part (selected via [PART SELECT]) use all the parameters (program/CC) as defined for the respective track within the MIDI file to be played? Or does it always use the selected Performance from the device?
- Let's say I have selected Part 16 via [PART SELECT]. Then, if during the song playback the Midi file contains Sysex messages of type "RECEIVE MIDI CHANNEL", that routes e.g. Part 1 to Channel 16, and I do not change the selected part on the MX61 (via [PART SELECT]), does the device then play the voice with settings from Part 1 of the Midi file? In other words, it is possible to automate the voices to be played in this way?

- A different topic: I have seen in the manual that the MX61 does not support NRPN to manipulate single drum instruments, is this right? What is the way to do so, are there Sysex messages?

Thanks a lot
Axel

 
Posted : 30/11/2020 12:53 pm
Bad Mister
Posts: 12303
 

Hi Axel,
Welcome to Yamaha Synth... we’ll do our best to answer your questions. We hope you realize your are moving to an entirely different type of product. If you were a customer coming into a music store with your set of questions, I would not be doing my job if I didn’t ask you to describe what you want to accomplish...

- In the modus "Playing the keyboard along with Songs", does the selected part (selected via [PART SELECT]) use all the parameters (program/CC) as defined for the respective track within the MIDI file to be played? Or does it always use the selected Performance from the device?

The MX61 does not have the ability to play a song. It does not feature an on-board sequencer or recorder of any kind. You do, however, get an Access Code that entitles you to a free copy of Cubase AI (for Windows or Macintosh); The MX is also iOS compatible so you can record to an iPad/iPhone app via a USB connection.

[PART SELECT] refers to a set of 16 numbered buttons that allow you to use the front panel to select which of the 16 Parts the Keyboard is going to communicate with. The KEYBOARD addresses the internal MX directly. The MX has no tracks!

The [PART SELECT] button 1-16, determines the MIDI OUT channel sent from the Keyboard. It has nothing to do with what is coming IN via MIDI. When working with an external MIDI Sequencer, you would typically work with LOCAL CONTROL = OFF. You can use any PART SELECT, to send to your external sequencer... because the external sequencer’s MIDI OUT will determine what Channel is sent from the Track.

- Let's say I have selected Part 16 via [PART SELECT]. Then, if during the song playback the Midi file contains Sysex messages of type "RECEIVE MIDI CHANNEL", that routes e.g. Part 1 to Channel 16, and I do not change the selected part on the MX61 (via [PART SELECT]), does the device then play the voice with settings from Part 1 of the Midi file? In other words, it is possible to automate the voices to be played in this way?

? Sorry, I cannot follow that at all. MIDI Files have Tracks, not Parts.

You can change the MIDI Receive Channel of any of the 16 Parts with the appropriate Parameter Change (Sysex) message. If you change Part 1 to MIDI channel 16, it will naturally Receive data sent from the external sequencer on channel 16, along with the Voice in Part 16.

Really, clumsy, however... are you expecting to do this during the song playing?
Again, I’m not clear about what you trying to do exactly... I can’t imagine you’d need to change MIDI Channels mid-Song.
You can send Bank Select and Program Change messages to change sounds (why do you need to change the channel of the Part?)
If you’re playing connected to an external sequencer you can change the Part that is sounding in response to the [PART SELECT 16] button by changing the active MIDI Track in your external sequencer. Whatever Track you select in the external Sequencer will determine what Part in the receiving devices will sound.

You mention your previous keyboard was a PSR-740
You are aware of the difference in category? The MX is not an Arranger, does not have any Arranger features. The MX is our entry-level 16 Part multi-timbral synthesizer.

- A different topic: I have seen in the manual that the MX61 does not support NRPN to manipulate single drum instruments, is this right? What is the way to do so, are there Sysex messages?

NRPNs are not used in this category of product...edits in the synthesizer are stored right on-board the synthesizer. In the XG/GM World of the Arranger, storing edits internally is not a mandate... edits for tuning the snare drum, for example, are typically stored in the MIDI File using NRPNs and a bunch of typing; then that data is played to the receiving synth from a Setup Measure stored in the MIDI File.

Generally speaking, synthesizers have on board memory so you can store the Edits to a Voice. Any time you want to use that Voice you simply recall it. If you want to tune a drum you can tune the drum right on board the MX61 — you can store 128 Normal User Voices and 8 User Drum Kits. (The deeper editing on the MX Series will require Sysex and a computer).

What is it you wish to accomplish... again, if I was in a store showing you option (and based on the questioned you’ve asked) I would show you a PSR-S670 and PSR-SX600 as two Arranger type alternatives... and if you are convinced you want to move to a synthesizer, I would show you the MODX-lineup. All of these models have on board recorders (since you never once mentioned computer, I’d want to know if that is apart of your wish list or not). The MODX is more money than the MX61, but it has recording capability, more powerful editing capability, all built right in.

I highly recommend you research each of these models... in addition to the MXs.

Hope that helps.

 
Posted : 02/12/2020 8:58 pm
 Axel
Posts: 0
Active Member
Topic starter
 

Hello Bad Mister,

thank you for taking your time to answer me in detail. From your reply I understand that I really have to explain you in detail what I want to accomplish with my device and the setup, so that you probably can give me a better advice for my choice of a new device ...

Before I start - and it will be a long explanation I'm afraid, sorry for that and thanks in advance for your patience - just one short remark on your reply:

> The MX61 does not have the ability to play a song.

I was refering to the function "Playing the keyboard along with Songs" as described in the manual, where you are able to play Midi songs from an external usb flash memory. This was the function I thought could be helpful for my purposes, but anyway, let me explain what I really want to do:

Basically, there are two "use cases" I'm currently using my PSR-740 currently for: (1) Playing midi songs from the floppy drive together with "live" play on the keyboard, using different voices changing during play, and (2) editing voices from the PSR-740 and include them into midi files.

Let's start with (1):

I produce XG midi files (see (2)) that I play on my PSR-740 via the floppy drive (normal song play function). Additionally, I play live different melody parts of the song, whereby the voice (and all the parameters of the voice) change in real-time, e.g. from measure 1-16 I play some melody part, from 17-32 some other and so on. The voice parameters thereby are changed automatically, triggered by the midi file. This is achieved as follows: I use the "Multi Part" logic/functionality of the Yamaha XG Midi format. In my Midi files, only channels (or rather: Multi Parts, as called in this context) 1-15 contain voice definitions (MSB/LSB/program, all the other CC parameter) and note events, channel/Multi Part 16 in the beginning is empty. Then, at the song positions where I want to play some melody parts, I use the Sysex message "RECEIVE MIDI CHANNEL" to route a Multi Part to channel 16. E.g. let's say from measure 1 to 8 I want to play the voice defined on Multi Part 1 of the midi, then I add to my midi file a message to route Multi Part 1 to channel 16 (in detail: "F0 43 10 4C 08 00 04 0F F7" ). If I then want to play from e.g. measure 9 to 12 the voice from Multi Part 7 then I add to my midi file first a message to route Multi Part 1 back to channel 1 ("F0 43 10 4C 08 00 04 00 F7", so it is again played by the internal tone generator) and then "F0 43 10 4C 08 06 04 0F F7" (Multi Part 7 to channel 16).

To actually play the melody parts live, I use an external midi controller keyboard, connect it with my PSR-740 via Midi In, and the Midi Receive setup for channel 16 is set to option "XG/GM", so that notes played on the midi controller keyboard are added on channel 16 to the midi file played in the floppy drive.

I use this technique to fully automate my live play together with the midi song, and can achieve the following:
- switch between the voices/parameters (as defined in Multi Part 1-15 in the midi file) at any pre-defined position of the song
- route any combinations of Multi Parts to be played live together, in the sense of layering and splitting voices: e.g. I can route at the same time (let's say from measure 9-32) the voices from Multi Part 1,4 and 5 to channel 16, so that playing the keyboard means playing voices from 1,4 and 5 at the same time (similar to layering). Via Sysex messages NOTE LIMIT LOW and NOTE LIMIT HIGH I can distribute voices over the range of the keyboard (similar to splitting)
- by adding CC events to channel 16 it is possible to dynamically change voice parameters, which are applied to the voices played at this song position (to avoid CC changes to be applied to all Multi Parts currently routed to channel 16, one can restrict this via RECEIVE CONTROL CHANGE sysex messages ...)

Of course, this is not "dynamic" in the sense that I can change the melody parts I play live, rather everything is fixed/coded in the midi file (through the Sysex Multi Part messages of type "F0 43 10 4C 08 ..." ). But I can program in advance all the changes in PC/CC and then just do the play on the keyboard.

This works fine, but in the setting just described I need an external Midi controller keyboard to play live, the PSR-740 is only used as tone generator. Actually, I found a way to avoid even this and to use the PSR itself to act as the controller: For this, I connect the Midi Out of my PSR-740 with the Midi In via cable, the Midi Receive setup for channel 16 still is in mode "XG/GM", additionally the Midi Transmit setup for channel 16 is in mode "RIGHT 1". In this way, the notes played on the keyboard of the PSR-740 are added on channel 16 to the Midi events from the file, which is still played from the floppy drive. (Of course, the volume for "Right 1" has to be set to 0, so that the notes played do not sound twice, with the voices routed to channel 16 and the voice selected on the PSR for Right 1.)

Sounds a bit complicated, and I hope my explanation is good enough. I would be happy to find some advices how to achieve such an "automated playing technique" with simpler means. From reading the MX61 manual, I thought it would be possible with the PART SELECT function or something like this of this device.

And now for use case (2): Basically, I create my Midi files on the computer with a Midi Editor software. One of my main challenges is to "tweak" the voices (via all the available XG parameters) to sound as close as possible to the voices used in the original songs. Of course, it will never be possible to sound 100% identical, because the original songs I try to reproduce use all kinds of synthesizers/samplers/electronics. But in principle I'm happy with the results, even with the old PSR-740 and its limited capabilities. But the procedure to tweak/shape the voices is rather complicated and time-consuming: To adjust all the XG voice parameters, I use an external Midi controller (a Novation Remote SL Mk II, basically a small keyboard and a number of assignable controllers), which is connected to the Midi In of my PSR-740. Then I load the Midi song in the PSR (via the floppy drive, i.e. I simply select the song in question), select on the controller the channel that contains the voice I want to edit, change all the parameters via the controller until the sound fits my wishes, and write down the selected parameter values. Then I have to edit the respective Midi file with my Midi Editor software on the computer (adapt the XG parameters as written down). It is not possible to directly change all the parameters in the PSR (and write it to the midi file somehow), I always have to go back to the computer and edit the file there.

Now, I want to buy a new device, offering me "fresh", new and more voices than my PSR-740, also more capabilities to "tweak" the voice's parameters. (Even if I'm quite happy with the results most of the time, I think there is still potential with modern gear ...) I thought of the MX61 because as it is a synthesizer there are all these capabilities to shape sounds (via Filter/Amp/Pitch EGs, LFOs, ...). Also the SX600 seems to be a reasonable alternative. But besides of sound design, it would also be nice to have a better possibility to save the adjusted voice parameters directly by the device to the midi file, without the need to always use the computer. Would be good also to get some advices for this "use case"

Sorry again for this long message, thanks for reading and I really would be happy for any advice!

Axel

 
Posted : 03/12/2020 9:16 pm
 Axel
Posts: 0
Active Member
Topic starter
 

As an addition to my above explanation of (1), as it may not be clear why I switch routing of Multi Parts to channel 16 via Sysex messages like "F0 43 10 4C 08 06 04 0F F7":

After creating the Midi file, channels / Multi Parts 1-15 contain the COMPLETE song, so playing the midi file would mean to play the complete song, without the need to play any parts live in addition. By routing Multi Parts to channel 16 (which does not contain any NOTE ON events) via Sysex messages RECEIVE MIDI CHANNEL this has at first the effect to mute the respective melody part between the measures where messages e.g. "F0 43 10 4C 08 00 04 0F F7" (route 1->16) and "F0 43 10 4C 08 00 04 00 F7" (route 1->1) are located in the midi file. Secondly, because of the midi setup in the device, notes played on the keyboard will be handled in the same way as NOTE ON/OFF events on channel 16, so in effect I can replace the melody parts which originally are included in the midi file by live keyboard play.

Using this technique it allows for easy manipulating my original midi files to prepare for live play - all I have to do is to add these Multi Part-type Sysex messages to control the switching.

But maybe there is a complete different technique available with the modern equipment of today's, which allows for automatic controlled live play in the same way ...

 
Posted : 04/12/2020 7:18 am
Bad Mister
Posts: 12303
 

As an addition to my above explanation of (1), as it may not be clear why I switch routing of Multi Parts to channel 16 via Sysex messages like "F0 43 10 4C 08 06 04 0F F7":

Thanks for that additional information. It will certainly help in this discussion.

And now for use case (2): Basically, I create my Midi files on the computer with a Midi Editor software. One of my main challenges is to "tweak" the voices (via all the available XG parameters) to sound as close as possible to the voices used in the original songs. Of course, it will never be possible to sound 100% identical, because the original songs I try to reproduce use all kinds of synthesizers/samplers/electronics. But in principle I'm happy with the results, even with the old PSR-740 and its limited capabilities. But the procedure to tweak/shape the voices is rather complicated and time-consuming:

I understand fully... I spent too many hours tweaking NRPNs for sound alike files (many of which are in the XG archives). I am also aware of all of the work that goes into creating exactly this type of file— where many think that XG/GM are like something to look down on, I’m sure you are aware, amazing results are achievable! It is a lot of data entry and detail, no doubt!

While the message you mentioned: “F0 43 10 4C 08 06 04 0F F7" will change any Yamaha XG product’s Part 7 to MIDI Channel 16, the synthesizers (MX, MODX, MONTAGE all non-XG) will simply ignore this message.

Yes, there is a dedicated Sysex message for each of the synth line-ups (a different code for each)... all Yamaha XG products from the old PSR-740 through to the current PSR-S and SX-series and beyond all the way to the Genos... will recognize and respond to that very command. If you are making files to be distributed, then the data made for one XG Product would be universally compatible with any other XG Product.
A file made for the MX will need to be played back on an MX. That, just for your information.

If you are finally recording everything as audio, this is of little concern for files you make using an MX, MODX or MONTAGE.
But if you are distributing files for others to use on their gear, then being aware of what is and isn’t XG compatible will be essential.

Using this technique it allows for easy manipulating my original midi files to prepare for live play - all I have to do is to add these Multi Part-type Sysex messages to control the switching.

But maybe there is a complete different technique available with the modern equipment of today's, which allows for automatic controlled live play in the same way ...

In a synth like the MODX, you have methods to change what Part you are playing and this can be automated from the MIDI File being played back. Using standard CC messages or Sysex (your choice) you can automate which sound or sounds are accessible from the keyboard. While no MIDI Channel switching is available, the Keyboard Control Part Selection can be automated.

If you have a ton of files already made (and you want to continue using them) then you’ll want to stay with the Arranger tone engines (which will still be able to respond to your NRPNs and Sysex messages to change active Parts). Hope that is helpful.

 
Posted : 06/12/2020 5:30 pm
 Axel
Posts: 0
Active Member
Topic starter
 

Thank you, indeed, your answer is of great help for me! Now my decision on which device to buy (MX/MODX synth or SX keyboard) only depends on two concrete questions:

1. How much effort it will be to adapt my existing Midi files (ca. 40) to the automated control available in the synths? You wrote:

In a synth like the MODX, you have methods to change what Part you are playing and this can be automated from the MIDI File being played back. Using standard CC messages or Sysex (your choice) you can automate which sound or sounds are accessible from the keyboard.

How does this look like? Any reference where I can read about this automation? And does it really provide me all the flexibility in automation as I have with my current approach, i.e. arbitrary layering/splitting/distributing of all 16 parts over the keyboard?

2. What possibilities in "voice shaping" does the SX600 offer, compared to the synths? Of course, not the full flexibility, but as far as I understand the AWM2 sound synthesis should be almost similar on e.g. the MX and the SX600, I mean in terms of manipulating Pitch/Filter/Amp LFO?

Thanks again!

PS: In the SX600 reference manual, section "MIDI transmit settings", there is something I do not understand:

"Extra Part 1–5: There are five parts specially reserved for receiving and playing MIDI data. Normally, these parts are not used by the instrument itself. The instrument can be used as a 32-channel multi-timbral tone generator by using these five parts in addition to the other parts of the instrument."

Could you please explain this? (Maybe with regard to what I'm trying to achieve, i.e. using channel 16 of the MIDI file to automate my play.)

 
Posted : 07/12/2020 9:34 am
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us