I've got a Yamaha CLP-645 which has a ton of great internal sounds, and has USB support for audio as well as MIDI. I've had success in the past sending MIDI to it, recording audio back into Ableton all through USB, as long Clavinova is selected as my audio input, but there's always a problem of latency if you want to record to a click track.
After reading Step 5 - Use External Instrument (recommended) in Using hardware synthesizers with Live, I decided to try using it as an External Instrument instead of as a MIDI output destination and an Audio source.
When use an Ext. Instrument with MIDI To > Clavinova Ch. 1, and Audio From the Clavinova 1/2 stereo, all via USB, if I change the voice on the instrument to what ever I want, say, "DX Bright" Electronic piano, then in Monitor settings select Auto for the track, then I can HEAR the DX Bright with very low latency - that's just great. But I ALSO hear a piano, and most importantly, if I route the output of the Ableton Track containing the Clavinova Ext. Instrument, I only get the piano recorded, and do not get any of the audio from the voice I selected.
I thought that perhaps the MIDI channel might correspond to the voice, so I selected different channels, but the effect is the same - it only records piano, not the voice I selected on the instrument itself.
I've never used the "External Instrument" module before in Ableton ... so what could possibly be the reason? Clearly, somehow I'm getting the audio from both instruments, and somehow it's able to only record the default instrument, e.g. the piano. Why??? Have you ever heard of this behavior before?
I see in the CLP-645 MIDI Reference on page 17 that there is a way to emit program change MIDI messages to change the instrument. It's been almost 20 years since I was familiar with MIDI program change messages - could the problem be that I need to emit the program change messages for the voice in order for Ableton to "listen" to the voice I'm hearing? That seems unlikely, but I'm just searching for some conceptual framework for using an External Instrument that will let me use the non-default voice.
Yamaha CLP-645 as External Instrument ignores voice and just records piano all the time
Re: Yamaha CLP-645 as External Instrument ignores voice and just records piano all the time
I figured this out. While these instructions are specific to the CLP-645, the general principles should also be applicable to any hardware synth.
I recommend watching two YouTube videos by David Hilowitz Music to understand some of the pros and cons of the two different methods of recording an external synth: Here are the steps I took:
I hope these steps help someone else that is trying to record sounds from an external synth!
I recommend watching two YouTube videos by David Hilowitz Music to understand some of the pros and cons of the two different methods of recording an external synth: Here are the steps I took:
- Create two tracks in a group, one MIDI, one Audio. Rename the group after the sound that you want - for me this is DX key. Rename the MIDI track "DX key MIDI". Rename the Audio track "DX key Audio". Note - these track names are just a convenience, they don't affect anything on the synth or in the recording process other than the names of the inputs and outputs described below.
- In the MIDI track, add an External instrument and configure MIDI To > Clavinova Ch. 1 for the CLP-645, and Audio From > 1/2 after having configured Clavinova as an Audio Input in settings. Adjust Ext. Instrument Gain to 8.75dB to bring volume up.
- On the CLP-645 interface, select the voice you want. In my case, this was DX Bright. Also, look up the DX Bright on page 17 of the CLP-645 MIDI reference to note that the DX Bright voice uses Program Change 6, Bank MSB 108, Bank LSB 1.
- Record a new MIDI clip with the metronome. In the MIDI track, MIDI From > Clavinova (All Channels), Monitor Auto, Audio To Master. Make sure MIDI track is armed for record. Edit quantization afterward to get the timings just right.
- After the clip is recorded, Review the Ableton Help Doc Sending Program Change messages from Live to see how to edit the program change values for a given MIDI clip. Enter the program change and bank values for the voice you want in the spot that is specific to your version of Live. Playback the clip with the MIDI track armed for solo and you should hear in the master track just the voice of the DX Bright or whatever voice you used. Here, you can edit other automation parameters (tremolo, reverb, etc) to get it sounding just right. Edit loop parameters so it's looping just right.
- After the MIDI recording sounds good in your mix, you need to commit it to audio. In the MIDI track, set the Audio To > DX key Audio, and in the DX key audio track, for Audio From, select DX key MIDI. Arm DX key MIDI for recording, and also set Monitor to In, so we hear the sound being recorded.
- Record the MIDI track into audio. For me, I did this twice - the first time to measure the latency, and the 2nd time to record it with latency compensation on the DX key MIDI delay. Let me explain. The first time I recorded the MIDI into the audio clip, there was latency that made it some ms off-beat. To find the ms, I zoomed in to the recorded audio and selected the time between the beat where a note was supposed to fire and the location of the first transient where it did get recorded. In the lower left-hand corner of the selection, Ableton told me this was a 110ms selection. Then, in the DX key MIDI track, I pressed the "D" near the master track to reveal the delays on each track, and I set the DX key MIDI track to -110ms. Then I deleted the first recording, and re-recorded it in time; after zooming in, I could see that the latency compensation worked pretty well. I could have used warping, but I wanted to do it with delay compensation.
I hope these steps help someone else that is trying to record sounds from an external synth!