News:

PSR Tutorial Forum is Now Back to Life!

Main Menu

GENOS Piano voices for the SX900

Started by vadesriux, November 08, 2021, 04:53:34 PM

Previous topic - Next topic

vadesriux

https://drive.google.com/file/d/1hAmur2qG5zzYRLvz_k0qcfsM6vgk1Xu1/view

The above link is from a great guy who owns a GENOS and happened to share (on my request) his own GENOS full Piano Voices (.nlv files) on his Youtube channel.

I tried to use the voices directly on the SX900 but the 900 only plays its own piano voices whe you select each sound. Also if you use YEM and try to create a Pack, YEM does not accept ".nlv" files.

Anyone with more experience than me could try to see if the Piano voices from the link above work on the SX900 ? I would be most appreciated. GENOS Piano voices include the CFX and the C7.

andres_fprado

All voice files on Yamaha arranger keyboards and Clavinova digital pianos (including files with extensions *.clv, *.drm, *.liv, *.mqv, *.sar, *.sfx, *.swv, *.vce, *.nlv, amongst others) are in reality small (< 1k) disguised MIDI files, that just do the set-up of the requested voice and its parameters. For instance, I've taken one file in your archive (C7 Atmosphere.T230.nlv - by the way, the T230 in the filename identifies the icon to show for this instrument), and decoded it so you see what is inside.

*   [001:1:0005]   05 FF 58 04 04 02 18 08                                  # Time Signature = 4/4 [24 clocks/tick, 8 32nd notes per quarter]
*   [001:1:0010]   05 FF 51 03 07 A1 20                                     # Tempo : ♩ = 120  (500000 us/Quarter)
* + [001:1:0015]   05 B0 00 68                                              #    [CH:1 - (00) Bank Select MSB = 104 (68H)]
* + [001:1:0020]   05 B0 20 18                                              #    [CH:1 - (20) Bank Select LSB = 24 (18H)]
* + [001:1:0025]   05 C0 05                                                 #    [CH:1 - PRG = 5 (05H)]
* ++[001:1:0025]                                                        ++  # CH:1 - Voice Set: C7 Atmosphere [MSB/LSB/PRG = 104/24/5 (68H/18H/05H)]
*   [001:1:0030]   05 B0 48 74                                              # CH:1 - (48) Release Time = 52 (74H)
* + [001:1:0035]   05 B0 63 01                                              #    [CH:1 - (63) NRPN MSB = 1 (01H)]
* + [001:1:0040]   05 B0 62 66                                              #    [CH:1 - (62) NRPN LSB = 102 (66H)]
* + [001:1:0045]   05 B0 06 40                                              #    [CH:1 - (06) Data Entry MSB = 64 (40H)]
* + [001:1:0050]   05 B0 26 00                                              #    [CH:1 - (26) Data Entry LSB = 0 (00H)]
* ++[001:1:0050]                                                        ++  # CH:1 - NRPN #0166H: EG Release = 0 (40H)
*   [001:1:0055]   05 B0 49 40                                              # CH:1 - (49) Attack Time = 0 (40H)
* + [001:1:0060]   05 B0 63 01                                              #    [CH:1 - (63) NRPN MSB = 1 (01H)]
* + [001:1:0065]   05 B0 62 64                                              #    [CH:1 - (62) NRPN LSB = 100 (64H)]
* + [001:1:0070]   05 B0 06 40                                              #    [CH:1 - (06) Data Entry MSB = 64 (40H)]
* + [001:1:0075]   05 B0 26 00                                              #    [CH:1 - (26) Data Entry LSB = 0 (00H)]
* ++[001:1:0075]                                                        ++  # CH:1 - NRPN #0164H: EG Decay Time = 0 (40H)
* + [001:1:0080]   05 B0 63 01                                              #    [CH:1 - (63) NRPN MSB = 1 (01H)]
* + [001:1:0085]   05 B0 62 08                                              #    [CH:1 - (62) NRPN LSB = 8 (08H)]
* + [001:1:0090]   05 B0 06 40                                              #    [CH:1 - (06) Data Entry MSB = 64 (40H)]
* + [001:1:0095]   05 B0 26 00                                              #    [CH:1 - (26) Data Entry LSB = 0 (00H)]
* ++[001:1:0095]                                                        ++  # CH:1 - NRPN #0108H: Vibrato Rate = 0 (40H)
* + [001:2:0004]   05 B0 63 01                                              #    [CH:1 - (63) NRPN MSB = 1 (01H)]
* + [001:2:0009]   05 B0 62 09                                              #    [CH:1 - (62) NRPN LSB = 9 (09H)]
* + [001:2:0014]   05 B0 06 40                                              #    [CH:1 - (06) Data Entry MSB = 64 (40H)]
* + [001:2:0019]   05 B0 26 00                                              #    [CH:1 - (26) Data Entry LSB = 0 (00H)]
* ++[001:2:0019]                                                        ++  # CH:1 - NRPN #0109H: Vibrato Depth = 0 (40H)
* + [001:2:0024]   05 B0 63 01                                              #    [CH:1 - (63) NRPN MSB = 1 (01H)]
* + [001:2:0029]   05 B0 62 0A                                              #    [CH:1 - (62) NRPN LSB = 10 (0AH)]
* + [001:2:0034]   05 B0 06 40                                              #    [CH:1 - (06) Data Entry MSB = 64 (40H)]
* + [001:2:0039]   05 B0 26 00                                              #    [CH:1 - (26) Data Entry LSB = 0 (00H)]
* ++[001:2:0039]                                                        ++  # CH:1 - NRPN #010AH: Vibrato Delay = 0 (40H)
*   [001:2:0044]   05 F0 08 43 10 4C 08 00 1E 1E F7                         # [XG] CH:1 - MW Low Pass Filter Control = -5100 cent (1EH)
*   [001:2:0049]   05 F0 08 43 10 4C 0A 00 40 40 F7                         # [XG] CH:1 - MW Offset Level Control = 0,0% (40H)
*   [001:2:0054]   05 F0 08 43 10 4C 08 00 20 00 F7                         # [XG] CH:1 - MW LFO PMOD Depth = 0 (00H)
*   [001:2:0059]   05 F0 08 43 10 4C 08 00 21 00 F7                         # [XG] CH:1 - MW LFO FMOD Depth = 0 (00H)
*   [001:2:0064]   05 F0 08 43 10 4C 08 00 22 00 F7                         # [XG] CH:1 - MW LFO AMOD Depth = 0 (00H)
*   [001:2:0069]   05 F0 08 43 10 4C 08 00 4E 40 F7                         # [XG] CH:1 - CAT Low Pass Filter Control = 0 cent (40H)
*   [001:2:0074]   05 F0 08 43 10 4C 0A 00 42 40 F7                         # [XG] CH:1 - CAT Offset Level Control = 0,0% (40H)
*   [001:2:0079]   05 F0 08 43 10 4C 08 00 50 00 F7                         # [XG] CH:1 - CAT LFO PMOD Depth = 0 (00H)
*   [001:2:0084]   05 F0 08 43 10 4C 08 00 51 00 F7                         # [XG] CH:1 - CAT LFO FMOD Depth = 0 (00H)
*   [001:2:0089]   05 F0 08 43 10 4C 08 00 52 00 F7                         # [XG] CH:1 - CAT LFO AMOD Depth = 0 (00H)
*   [001:2:0094]   05 F0 08 43 10 4C 08 00 5B 40 F7                         # [XG] CH:1 - AC1 Low Pass Filter Control = 0 cent (40H)
*   [001:3:0003]   05 F0 08 43 10 4C 0A 00 44 28 F7                         # [XG] CH:1 - AC1 Offset Level Control = -37,5% (28H)
*   [001:3:0008]   05 F0 08 43 10 4C 08 00 5D 00 F7                         # [XG] CH:1 - AC1 LFO PMOD Depth = 0 (00H)
*   [001:3:0013]   05 F0 08 43 10 4C 08 00 5E 00 F7                         # [XG] CH:1 - AC1 LFO FMOD Depth = 0 (00H)
*   [001:3:0018]   05 F0 08 43 10 4C 08 00 5F 00 F7                         # [XG] CH:1 - AC1 LFO AMOD Depth = 0 (00H)
*   [001:3:0023]   05 F0 08 43 10 4C 08 00 05 01 F7                         # [XG] CH:1 - Mono/Poly Mode = Poly
*   [001:3:0028]   05 F0 09 43 73 01 50 08 00 04 73 F7                      # [CLAVI] CH:1 - Voice: Set Volume = 115 (73H)
*   [001:3:0033]   05 B0 47 40                                              # CH:1 - (47) Harmonic Content = 0 (40H)
*   [001:3:0038]   05 B0 4A 40                                              # CH:1 - (4A) Brightness = 0 (40H)
*   [001:3:0043]   05 B0 05 00                                              # CH:1 - (05) Portamento Time = 0 (00H)
*   [001:3:0048]   05 F0 08 43 10 4C 08 00 0C 42 F7                         # [XG] CH:1 - Velocity Sense Depth = 66 (42H)
*   [001:3:0053]   05 F0 08 43 10 4C 08 00 0D 3F F7                         # [XG] CH:1 - Velocity Sense Offset = 63 (3FH)
*   [001:3:0058]   05 F0 09 43 73 01 50 08 00 05 40 F7                      # [CLAVI] Voice: Right (R1/R2/R3) Octave = 0 (40H)
*   [001:3:0063]   05 F0 09 43 73 01 50 08 03 06 41 F7                      # [CLAVI] Voice: Left (L) Octave = 1 (41H)
*   [001:3:0068]   05 F0 08 43 10 4C 0A 00 02 00 F7                         # [XG] CH:1 - #0A:00:02 = 00H F7H
*   [001:3:0073]   05 F0 08 43 10 4C 0A 00 03 00 F7                         # [XG] CH:1 - #0A:00:03 = 00H F7H
*   [001:3:0078]   05 F0 08 43 10 4C 08 00 76 19 F7                         # [XG] CH:1 - EQ Bass Frequency = 355Hz (19H)
*   [001:3:0083]   05 F0 08 43 10 4C 08 00 72 40 F7                         # [XG] CH:1 - EQ Bass Gain = 0 dB (40H)
*   [001:3:0088]   05 F0 08 43 10 4C 08 00 77 2B F7                         # [XG] CH:1 - EQ Treble Frequency = 2.8kHz (2BH)
*   [001:3:0093]   05 F0 08 43 10 4C 08 00 73 40 F7                         # [XG] CH:1 - EQ Treble Gain = 0 dB (40H)
*   [001:4:0002]   05 F0 0B 43 73 01 51 04 00 00 02 01 00 F7                # [CLAVI] Voice: Echo/Harmony Type = Standard Trio (01H 00H)
*   [001:4:0007]   05 F0 09 43 73 01 50 04 00 05 40 F7                      # [CLAVI] Voice: Echo/Harmony Volume = 64 (40H)
*   [001:4:0012]   05 F0 09 43 73 01 50 04 00 02 10 F7                      # [CLAVI] Voice: Echo/Harmony Assign = Auto (10H)
*   [001:4:0017]   05 F0 09 43 73 01 50 04 00 03 00 F7                      # [CLAVI] Voice: Echo/Harmony Chord Note Only = Off
*   [001:4:0022]   05 F0 09 43 73 01 50 04 00 04 00 F7                      # [CLAVI] Voice: Echo/Harmony Touch Limit = 0 (00H)
*   [001:4:0027]   05 B0 5B 1C                                              # CH:1 - (5B) Effect1 Depth (Reverb Send Level) = 28 (1CH)
*   [001:4:0032]   05 B0 5D 0C                                              # CH:1 - (5D) Effect3 Depth (Chorus Send Level) = 12 (0CH)
*   [001:4:0037]   05 F0 09 43 73 01 50 08 00 08 7F F7                      # [CLAVI] CH:1 - Voice: DSP Effect = On
*   [001:4:0042]   05 F0 09 43 73 01 50 08 00 01 00 F7                      # [CLAVI] CH:1 - Voice: DSP Variation = Off
*   [001:4:0047]   05 F0 09 43 10 4C 03 00 00 7B 08 F7                      # [XG] Insertion Effect 1 (DSP2) Type = Damper Resonance (7BH 08H)
*   [001:4:0052]   05 F0 08 43 10 4C 03 00 0B 20 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 10 = 32 (20H)
*   [001:4:0057]   05 F0 0B 43 73 01 51 08 00 11 02 28 00 F7                # [CLAVI] CH:1 - Voice: DSP Variation Parameter = 10240 (28H 00H)
*   [001:4:0062]   05 F0 08 43 10 4C 03 00 02 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 1 = 0 (00H)
*   [001:4:0067]   05 F0 08 43 10 4C 03 00 03 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 2 = 0 (00H)
*   [001:4:0072]   05 F0 08 43 10 4C 03 00 04 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 3 = 0 (00H)
*   [001:4:0077]   05 F0 08 43 10 4C 03 00 05 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 4 = 0 (00H)
*   [001:4:0082]   05 F0 08 43 10 4C 03 00 06 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 5 = 0 (00H)
*   [001:4:0087]   05 F0 08 43 10 4C 03 00 07 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 6 = 0 (00H)
*   [001:4:0092]   05 F0 08 43 10 4C 03 00 08 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 7 = 0 (00H)
*   [002:1:0001]   05 F0 08 43 10 4C 03 00 09 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 8 = 0 (00H)
*   [002:1:0006]   05 F0 08 43 10 4C 03 00 0A 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 9 = 0 (00H)
*   [002:1:0011]   05 F0 08 43 10 4C 03 00 20 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 11 = 0 (00H)
*   [002:1:0016]   05 F0 08 43 10 4C 03 00 21 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 12 = 0 (00H)
*   [002:1:0021]   05 F0 08 43 10 4C 03 00 22 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 13 = 0 (00H)
*   [002:1:0026]   05 F0 08 43 10 4C 03 00 23 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 14 = 0 (00H)
*   [002:1:0031]   05 F0 08 43 10 4C 03 00 24 00 F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 15 = 0 (00H)
*   [002:1:0036]   05 F0 08 43 10 4C 03 00 25 5A F7                         # [XG] Insertion Effect 1 (DSP2) Parameter 16 = 90 (5AH)
*   [002:1:0041]   05 F0 0C 43 73 01 51 08 00 12 03 09 00 28 F7             # [CLAVI] Sy*** - * no further analysis available *
*   [002:1:0046]   05 FF 2F 00                                              # ** END OF TRACK **



The really important lines are 3-6, which send the MIDI commands to set a voice with MSB/LSB/Program Change of 104/24/5 (5 is 6 in Yamaha charts), which corresponds to... "C7 Atmosphere". So, these commands instruct the keyboard to use the internal sound corresponding to C7 Atmosphere. The rest of the file is used to set some parameters with values optimized for the keyboard (which can be edited under Voice Edit).

What this file does not contain is the actual samples. These are inside the Genos (in this case) in the Wave Flash Memory, which is completely inaccessible. When you create a bank with YEM it will be written in the user part of the internal Wave Flash Memory. Genos (and Tyros) keyboard allow the re-use of internal wave files in YEM, whereas with PSR-S/PSR-SX keyboards, only new wave files can be used.

AFAIK, there is no way to extract waves from one keyboard to use on another (and much less if those waves use unavailable features, like Revo! Drums and Super Articulation 2!).

Regards!

overover

Hi vadesriux,

There is obviously a little misunderstanding (on your part):

Preset Voices cannot be extracted from one keyboard and transferred to another keyboard. Each model has its own internal samples that are used for the Preset Voices. If you "copy" a Preset Voice, a so-called "User Voice" file is created. Depending on the voice type, this file has different extensions, e.g. .vce, .liv, .clv, .swv, .nlv ...

You can find a list of common User Voice file extensions here:
>>> https://www.psrtutorial.com/forum/index.php/topic,55455.msg432350.html#msg432350

Note: A User Voice file is nothing more than a small MIDI file (only about 1 KB in size) that calls up a certain Preset Voice (via Bank Select MSB / LSB and Program Change) and contains the relevant Voice Set and Effect settings.

If such a User Voice file is loaded on another keyboard, the original sound will only be produced if this Preset Voice is also available there. If this is not the case, the keyboard tries to select a Preset Voice that is as similar as possible and applies the Voice Set parameters of the User Voice file to it. Problems can also arise here, e.g. if the effects originally used are not available on the target keyboard. In the "worst" case (if no suitable Preset Voice is found), the Voice simply remains silent after being called.


Edit:
andres_fprado was faster than me ... ;)


Best regards,
Chris
● Everyone kept saying "That won't work!" - Then someone came along who didn't know that, and - just did it.
● Never put the Manual too far away: There's more in it than you think! ;-)

vadesriux

Thank you for both replies. I understood that what I was trying to do is simply not possible.