dimanche 10 janvier 2010

Geek Trick : Making music in the Cloud with VMware View ...

Update 2 (Reply for a mail) : When i talk about audio it's about audio acquisition on thin client send to the sequencer on the VM and finally return on thin client speakers.
Update (for Sylvain) : The Usb to Midi interface i use is a M-AUDIO Midiman USB Uno. I had the question if it's possible to listen remotely audio track too. Unfortunatly no, the bandwith is too small to do that. and only Midi messages may transit.

Midiman USB Uno connected inside View USB redirector.
I'm driving here an emulation of the famous Yamaha CS-80

As you probably know it's because of electronic instruments i'm fond of computers and since few years virtualization ... I'm very often on the road and i recently had some discussions with Sylvain Siou and Pascal Bony about the flexibility offering the cloud computing to use my personnal home studio with virtuals and physicals synthesizers from anywhere. I made many unsuccessful tries with Microsoft TSE and Citrix. I was sure the last release of VMware View would be the right solution to do that. So, i spend some money into a X8DTN+ SuperMicro Motherboard with PCI-x & PCI Express expension slots, Nehalem processors and SSD3 memories to build a test drive. I plugged an old Sound Blaster Live! card with Midi port inside a PCI expansion slot.

Oups, the SB Live! is a full height card ...
Regarding software, i builded a vCenter and a Broker onto a vSphere 4.01 and published a XPSP2 VM with the SB Live! mapped with VM Direct Path I/O even VMware says it's not supported ... VMDirect Path I/O is a great feature implemented inside vSphere which permit a direct access for a Virtualized OS to a physical device such as an expansion card or an USB device.

VMDirect Path pannel : the gameport is also the external midi port.

How SB Live! is mapped inside the VM properties

Finally, it's directly support inside Win XP ...

From the View Client, you may drive all the music machines from the Sequencer or from an external Keyboard connected with an USB to Midi cable. The audio is redirect through the RDP audio driver that must be choose into the music softwares otherwise, the sound will be heard directly on the SB Live! back to the vSphere host.

The Cubase panel from View 4 Client with PCoIP

Today i tried some Virtual Synths from Korg and the SonicProjects OPX, a replica of the great Oberheim OBX-A ... The redirect sound is quite good and the response time correct. Now, i will implement all the drivers for few physical synths inside Cubase and Ableton Live in order to drive them from the Wyse P20.

2 commentaires:

thomas a dit…

could you tell more about audio/midi latency?
Do you use the soundblaster only for midi?
With this setup, can you play for example a guitar plugged in the thin client and hear it back trough an effect on the server?

Merci pour cet excellent blog!

dunestudio45 - DS45 a dit…

Midi Latency is acceptable (tuned around 80-100ms) in my case, but it depends of the ADSL Bandwith (6 Megs ADSL@home, much more SDLS @work ...)

Regarding Audio, what i need is to drive and hear remotely my synths. I think it would make too long time to capture audio on thin client mix it inside remote sequencer and finally listen it on thin client with amp effect ...

I use my remote uno to catch midi messages from my keyboard plug on my thin client and my remote sequencer route them into the MPU-401 like embbeded inside my Sound Blaster to drive my synths.