Sample compression is a bit of a hot topic among tech heads on the PSR Tutorial Forum and the YamahaSynth.com Forum.
Yamaha recently pre-announced the Yamaha Genos V2.0 update. Features will include:
- Increased expansion memory from 1.8GBytes to 3.0GBytes
- Genos V2.0 Superior Pack (50 styles, more than 25 voices including SuperArticulation 2)
- Chord Looper
- Style Section Reset
- Scale Tune Separation
The update will be available during Winter 2019. The scope of the update has caused much excitement as well as a lot of good feeling because Yamaha views Genos as an update-able platform, not a one off. I’m looking forward to the Genos update and the upcoming MODX update, too.
The Superior Pack likely will be an expansion pack containing new styles and voices. Putting the new content in an expansion pack is the easiest way to distribute the content. A user simply puts the expansion pack installation file on a USB drive, inserts the drive into Genos, and runs the on-board Genos installation procedure. The installation process is tried, true and mature.
Of course, this raises the question of expansion memory space and how to make best use of it. Would or should someone install the Superior Pack and always keep it around? Will there be enough space for other packs? Some people are pack rats (pun intended) and want to keep everything loaded. Increasing the expansion memory from 1.8GBytes to 3.0GBytes takes a little pressure off the pack rats.
Naturally, the increase in expansion memory piques the tech heads. How did Yamaha increase the expansion memory space? One cannot snap fingers and add physical memory to Genos. This is a software update, after all.
One theory has to do with sample compression. Yamaha’s expansion packs typically use two sample formats: LINEAR16_FRAME and WXC. WXC is Yamaha’s proprietary sample compression format. WXC is treated like a closely guarded secret. WXC is the way to pack voice waveforms as tightly as possible within the limited physical capacity of wave memory. It’s part of Yamaha’s secret AWM2 sauce.
User samples, on the other hand, are not compressed and are stored in LINEAR16 format. Currently, when Yamaha specifies the size of Genos expansion memory, they mean the ability to store approximately 1.8GBytes of uncompressed user samples in expansion memory. Since users can’t compress their samples via YEM (or whatever), Yamaha doesn’t want to disappoint them by overstating expansion memory capacity and then underdeliver on their spec.
So, is the increase achieved through sample compression, i.e., restating the capacity as 3.0GBytes using the well-known qualifier “when converted to 16 bit linear format?” WXC compression can easily squish 3.0GBytes of samples into 1.8GBytes. Or, have Yamaha found and allocated extra space to user samples? In the latter case, the extra space must be in the NAND flash memory which holds the factory waveforms. This is left-over space and assumes that Yamaha left quite a bit of slack in the 4GBytes holding the factory waveforms.
Now we get to the point of contention among Montage/MODX tech heads. If Yamaha have found a way to support compressed user samples on Genos, can the same technology be ported to Montage and MODX?
The answer partly depends upon the means by which Yamaha provide sample compression itself. (Remember, sample decompression is built into the SWP70 AWM2 hardware.) YEM is an established application in the Genos software eco-system. Yamaha could add the compression algorithm to YEM. In the case of Genos, a user would compress user samples into WXC format when creating a new voice in YEM. The WXC format samples within Yamaha expansion packs would remain untouched by YEM in WXC format and users wouldn’t see any benefits there.
The closest thing to YEM in the Montage (MODX) eco-system is the John Melas tool suite. Perhaps Yamaha will partner with John Melas, who will add sample compression to the tool suite. That’s one possibility. Another possibility is to add WXC compression to SKYLIFE SampleRobot.
If Yamaha wants to protect its secret sauce, they could provide a Web-based service to compress user samples into WXC format. In that case, Yamaha could keep the WXC algorithm hidden from prying eyes (i.e., reverse engineering). The compression service could compress samples for both Genos and Montage voice developers.
A third alternative approach adds the compression capability into the Montage/MODX keyboard firmware. Embedding the algorithm would provide the best security although Linux experts have already plumbed the depths of Montage/MODX update files. Further, Yamaha has shown a reluctance to add low-want or esoteric features to firmware.
Well, this is all quite interesting and highly speculative. We’ll know more when the Genos 2.0 update is released. In the meantime, wadda think?
Copyright © 2019 Paul J. Drongowski