Étiquette : Ableton Live

  • ROLI Airwave: another journey of technical issues

    I purchased this new Airwave device from ROLI on November 2024. I knew it would take a couple of months to get the device, similar to my RISE 2, but didn’t think it would take more than a year. It took more time than expected to fully test the device and there were some manufacturing hurdles throughout the process. At least, ROLI provided regular updates to customers and finally shipped the units.

    Friday, November 28th 2025, I finally got the device. Given the time it took to get this device ready, I was hoping for a flawless setup and use. I was deeply mistaken. It took my whole Friday evening to make this work very partially, only with the standalone player, no recording possible unless I switch to the two-computer setup I don’t have room to put up and I want to avoid for years. The next day, I found a solution to make the VST work. Nevertheless, the calibration never completes and the device is pretty limited in the end, although working from an hardware point of view. It is however perfectly possible the Airwave Player software will evolve into a full synth and calibration bugs will get fixed officially eventually.

    What is the ROLI Airwave supposed to do?

    The Airwave tracks hand movements using a camera and translates them into MIDI signals. This adds to the 5 dimensions of air on top of the dimensions of touch. The device detects when hands are raised, bent, moved left or right or twisted. A dedicated software synthesizer, Airwave Player, takes into account the new 5 dimensions of air and the existing 5 dimensions of touch, adding more richness and variations to sound. The Airwave Player has a fixed number of presents, no editor. However, the Airwave produces MIDI CC. With a bit of work, these CC could be mapped to parameters in any other software synthesizers.

    The device looks like on the following picture:

    The ROLI Airwave device sitting on my desk, with my ROLI Seaboard Block M in front of it.

    The Airwave is plugged to computer using its USB C port, with the provided C to C cable or an C to A cable. There is another USB C port to power the device.

    Connectors at the back of the ROLI Airwave. From left to right, minijack audio connector for earphones, jack connector for an expression pedal and two used USB C ports.

    There is a connector for an expression pedal as well as an audio jack, not sure what the jack is used for.

    A MIDI controller, preferably from ROLI, e.g., a Seaboard Block, can be either connected independently to the computer through another USB port, or plugged in one of the front ports of the Airwave using the provided magnetic connectors.

    ROLI Seaboard Block M with the magnetic USB C connector plugged in, ready to be plugged into the Airwave's front port.

    A difficult setup

    When I plugged my new Airwave device, ROLI Connect could not see it, making it impossible to register it. Registration is necessary to get access, from ROLI Connect, to the ROLI Airwave Control and ROLI Airwave Player software. After I passed this hurdle, I was not getting any hand tracking from Airwave Player because I had to create the virtual MIDI port I didn’t know about. This second road block behind, hand tracking was working but I faced issues with calibration; either it is broken, either Airwave Player just doesn’t report calibration is done, letting the user guess it is completed or not. After all these efforts, a wasted Friday evening with a lot of frustration, I was able to try my new device with standalone ROLI Airwave Player, but when trying the VST in my DAW, no hand tracking occurred. I had to find another trick, requiring a basic understanding on how the device works, to get past this.

    Device registration not working

    When I connected my new ROLI Airwave, I heard the usual sound showing Windows detected the device, but it was invisible from ROLI Connect. I tried both USB ports, tried with a USB A to C cable instead of the provided C to C cable, to no avail. I started to think the device was dead on arrival but at least I got confirmation from Device Manager that the device was detected:

    The ROLI Airwave showing up in Windows Device Manager

    The Ultraleap device is the Airwave’s camera. The ROLI Airwave Pedal is a MIDI source mapped with the pedal connector on the device. The presence of the Seaboard Block shows that USB was properly passing from my Seaboard Block M through my Airwave. Despite all this, nothing in ROLI Connect!

    After a while, I found that once again, ROLI Dashboard was broken! Pretty much each time ROLI Connect auto-updates, it kills the ROLI Hardware Driver service instead of leaving it alone or updating it properly. It’s been more than a year this bug exists, I’m not getting why it hasn’t been fixed and how non-techical users are able to deal with the issue. Once again, I had to manually reinstall the ROLI Hardware Driver so ROLI Dashboard started to recognize my devices again.

    After this step, ROLI Connect was able to see and register my new Airwave device. This unlocked ROLI Airwave Control and ROLI Airwave Player which I installed.

    No hand tracking

    After I installed ROLI Airwave Player, I started it. I was able to play notes and experience the 5 dimensions of touch. However, moving my hands in front of the camera had no effect. Searching the Web uncovered the possibility of a broken camera. I started to think I would need to return the device to the manufacturer, which annoyed me a lot.

    The problem was missing virtual MIDI port named ROLI Airwave Expression. I already had loopMIDI installed. I started the tool and created the port.

    I was puzzled about how this works. The ROLI Airwave Service, which I checked was running, is hard-coded to write to that MIDI port. It doesn’t create it, assuming it’s already there. The user has to install some tool like loopMIDI and create the port.

    After that, I was able to try calibrating the device. This is done by starting Airwave Control and clicking on Recalibrate.

    Main window of Airwave Control

    This starts the Airwave Player.

    Airwave Player in calibration mode, asking which device to use.

    I clicked on my Seaboard Block M device and was asked to press on the highlighted keys to calibrate.

    Broken calibration screen asking to hold both keys while three keys (C, F, G) are lit.

    The instructions are quite misleading, asking to press both keys with my index fingers, while three keys are lit up: the C, the F and the G! After I pressed the leftmost C key and the rightmost F, tried G, tried F and G, the screen changed to the following.

    Calibration is "finished" or stuck, asking to try pressing keys closer to the middle of the keyboard.

    Trying to press keys closer to the middle gives no result. Calibration never completes. Fortunately, the device reacts to hand movement, so at least its camera is not broken.

    Some research shows that there was a bug with calibration in prior versions of Airwave Player. I double checked (checked multiple times in fact) I was running latest version, to no avail. Some users contacted ROLI and got special limited availability betas of Airwave Player for which calibration works.

    This process is totally inefficient, for both users and ROLI staff. Users will try calibrating, fail, some will just return the device thinking it is defective, others will report the issue and get the special beta then go on. ROLI staff, on the other hand, will bef flooded with the same request, for multiple users, to get the special beta.

    Question: why not release that beta? If calibration doesn’t complete out of the box, this will confuse many users and could cause unnecessary returns.

    Another possibility is that calibration never completes by design and the user has to guess this is calibrated. This is in my opinion as poor as having users request a special beta individually.

    I hope this issue will get fixed over time or the UI will be clarified. This device has potential, but the shortcomings need to be addressed first.

    At least, I was able to start playing with my new device. It was not just dead on arrival at this point.

    However, I don’t want to just play with the device. I want to record myself. Then enters the DAW: Ableton Live.

    As I was expecting, ROLI provided a VST for Airwave.

    I added the VST to a MIDI track and configured my input as the Seaboard. I tried with the ROLI Airwave Pedal and ROLI Airwave Expression inputs to no avail. Only the Seaboard MIDI input was flowing MIDI into the VST, generating sound.

    As soon as the VST produces sound, it is possible to create an audio track and configure the input of the track to be the output of the MIDI track+VST. This technique records the audio of the VST as is and can reproduce the audio reliably.

    Why not just record the MIDI notes? This is because the VST has a state, i.e., the current preset being selected. If you record just the MIDI, you have to take note of which preset is selected and make sure that preset is the same when you replay your track, otherwise you get different audio.

    All of this worked, same way as with any other VST such as ROLI Studio Player, Arturia’s Analog Lab V, Sampleson Scaper, etc. However, no hand tracking worked!

    Out of the box, this only works with the standalone Airwave Player, not the VST. Solution? Once again, have a two computer setup. I don’t have enough room on my desk to put these two computers and I find such a setup cumbersome.

    So back to square 1, RMA it would be!

    The two computer setup I don’t want

    It’s been several times I’m wondering about that, mainly because of VST instability. If a VST has a bug, it can easily crash the whole DAW, completely ruining recording sessions. For example, Scaper from Sampleson crashes the whole DAW if I change preset too often or too quickly. ROLI Studio Player has a sad history of crashes. Some DAWs like Reaper sandbox VSTs, most don’t. Implementing VST sandboxing would be a major change requiring a lot of refactoring. If VSTs are too unstable and I don’t want to switch DAW, the only remaining solution is to record with one computer and run the plugin on another machine.

    flowchart
       Controller[MIDI Controller]
       Computer1[Computer with player]
       DAC[Digital to analog interface]
       ADC[Analog to digital interface]
       Computer2[Computer with DAW]
       
    
       Controller --> Computer1
       Computer1 --> DAC
       DAC -->|Jack cable|ADC
       ADC --> Computer2

    This setup, while shielding the DAW from VST crashes and working around when only standalone player is available, is quite cumbersome. Having to turn digital audio to analog and back to digital can cause quality reduction unless high end audio interfaces are used. It would be far better to move audio digitally from the two computers, S/PDIF may allow this, but this is not fully reliable.

    The single computer recording trick

    I fortunately found a way to record with hand tracking. I needed to come up with an understanding of how the Airwave works (see next section) to figure this out. Web search or AI would give false information, including the VST cannot play audio, only Airwave Player can track hand movement, etc.

    Main idea is to have two MIDI tracks: the main track taking MIDI from Seaboard device and outputting to Airwave VST, a secondary MIDI track taking MIDI from ROLI Airwave Expression (yes, the virtual MIDI device we created with loopMIDI) and outputting to the primary track. In other words, we need to combine MIDI from two different sources and feed that combined MIDI into the VST.

    More specifically, you first need to ensure MPE is enabled for both MIDI ports and the VST. For this, go to Live’s Preferences, MIDI section, and enable MPE for the MIDI inputs.

    Then create a new MIDI track, adding the Airwave VST to it. Click on the … icon of the VST and turn on MPE.

    Set the MIDI device and do one of the following: arm the track or set monitoring to In. If you arm the track, you will be able to record the MIDI, but if you play a lot with the dimensions of touch and air, this generates over-cluttered MIDI tracks that have a tendency to slow down and even crash Live. Not arming the track is a workaround but you then need to turn on monitoring so MIDI flows through.

    Now create a second MIDI track. Set the input to Airwave Expression and output MIDI to the first track. This time, just set the monitoring to In. All MIDI will land in first track so if you want to capture it, just arm the first track.

    Almost there! Now create the audio track. Set its input as the output of the VST, and arm it.

    You can validate the setup by checking the gauges besides All Channels. If you press keys on your Seaboard, you get activity on first MIDI track. If you move your hands in front of the camera, you get activity in the second MIDI track. If audio works, you get activity in first track and the audio track. Now you can record!

    You should save this non-trivial setup in a template for future use otherwise you’ll fight with Live each time you start a new session.

    Voila. This is how I record at the moment.

    How does it work?

    Following diagram shows the architecture as far as I could guess it. The presence of all these moving parts explains why issues like the ones I experienced can arise.

    flowchart LR
       subgraph ROLI Airwave
          Camera
          MIDI[MIDI interface]
          AirwaveUSB[USB interface]
       end
       AirwaveService[ROLI Airwave Service]
       HardwareDriver[ROLI Hardware Driver]
       VirtualMIDIPort["ROLI Airwave Expression (loopMIDI)"]
       VirtualMIDIPort2["Virtual MIDI port (multi client)"]
       AirwavePlayer[ROLI Airwave Player]
       Dashboard[ROLI Dashboard]
       Control[ROLI Airwave Control]
    
       MIDI --> HardwareDriver
       HardwareDriver --> VirtualMIDIPort2
       Camera & MIDI --> AirwaveUSB
       Camera --> AirwaveService
       AirwaveService --> VirtualMIDIPort
       VirtualMIDIPort & VirtualMIDIPort2 --> AirwavePlayer
       VirtualMIDIPort --> Control
       VirtualMIDIPort2 --> Dashboard
    

    The ROLI Airwave device interacts with a computer using a USB C port. The device has two ports: one used for power through a provided adapter, another used for data. The USB data interface exposes at least two components: a webcam-style camera and a MIDI interface. MIDI can come from an expression pedal that can be plugged onto the device and from Seaboard if plugged to one of the front ports.

    A new system service called ROLI Airwave Service reads from the camera and turns image into MIDI CC, most probably using some form of neural network. The fact that CPU fan runs all the time when device is plugged in lets me believe the processing is CPU-based, while it could make use of my NVIDIA RTX GPU to reduce CPU usage. The MIDI CC from hand tracking is sent into a virtual MIDI port named ROLI Airwave Expression. ROLI doesn’t provide its own MIDI driver for this, rather letting the user install loopMIDI himself and create the port.

    On the other hand, MIDI from the BLOCK devices (Seaboard, Lightpad, etc.) is processed by another service called ROLI Hardware Driver. The driver sends the MIDI data to another virtual MIDI port created by a proprietary multi-client driver.

    This complexity is the result of a limitation in Windows, where any MIDI connection is exclusive. If a DAW reads from a MIDI device, another DAW or dashboard software cannot read at the same time. The ROLI Airwave Expression virtual port is read by both ROLI Airwave Player (or a DAW+VST setup) and the ROLI Airwave Control supposed to participate in the calibration process. The BLOCK virtual MIDI port is read from players (Airwave Player, Studio Player, DAW+VST) and ROLI Dashboard needed to perform settings and firmware updates on the devices. The architecture also allows to consolidate BLOCK devices into one virtual device used by Studio Player.

  • Bumpy Ableton Live session

    Yesterday, I tried upgrading to latest Ableton’s Live, the 9.7.1 version. Everything went well, but I got other issues, not related to Live, that made my work session quite bad and frustrating.

    S/PDIF not working great

    A month ago, I got a new audio interface: the Focusrite’s Scarlett 18i20. This amazing device provides eight analog audio inputs and 10 outputs. This is far from the advertised 18 inputs and 20 outputs, but these include S/PDIF and an add-on card that plugs into the optical ports of the interface. Anyway, 8 inputs is more than enough for my needs. I have difficulty playing one instrument reliably, so I won’t start playing multiple instruments at the same time, at least not now!

    I didn’t have enough long audio jack cables to plug my Novation’s Ultranova (two channels), my Korg’s EMX (two channels) and my Nord’s Drum (1 one channel), so I decided to try hooking my Ultranova through S/PDIF instead. For this, I used a RCA cable I had got somewhere I don’t remember. I plugged the S/PDIF coaxial output of the synthesizer to the appropriate input of the audio interface, then fiddled with MixControl to figure out HOW to enable S/PDIF. Easy, I thought: just set up one entry in the Mix 1 to route S/PDIF L to left channel and S/PDIF R to right channel. The Mix 1 mix was already routed to the two monitor outputs of the interface. With that, I should have obtained sound from my Ultranova into my audio monitors. No, nothing! I verified that the S/PDIF output was enabled from my Ultranova: it was.

    I tried, checked many times, searched on the Web, ok, set the sync source to S/PDIF instead of Internal, from MixControl. Did it, no result. I spent at least half an hour trying, checking, trying again, to find that the volume of my Ultranova was turned all the way to minimum. Turning up the volume solved it!

    BUT I started to hear cracking sounds from time to time. This happens especially when playing long notes with pad-style sounds. That means S/PDIF doesn’t work well out of my Ultranova, in my audio interface, or that requires a special cable I don’t have. But then WHY is the S/PDIF the exact same shape as an RCA connector?

    There is no solution for the moment, except using the analog jacks and not being able to plug my EMX, Ultranova and Drum at the same time.

    Jumpy mouse

    While trying to work with Ableton’s Live and the MixControl, I had to cope with too small fonts all the times. I ended up using Windows zoom (Windows key plus +). But regularly, the zoom was jumping all around. I figured out that this was the mouse pointer that was regularly moving around without obvious reason. Ah, this is why I am now literally constantly loosing the pointer, forced to bring it back at upper left corner of the screen almost each time I want to click on something! The pointer is really jumping around, I’m not getting crazy! This made working with the mouse a real pain, similar to what I experienced with the old Mac my brother’s wife gave me a year ago. I thought about running Live on that Mac, because many people pretend that Mac’s are more stable for music production, but the machine is way way way too slow for that, I just forgot and never tried!

    I ended up trying with another mouse, that seemed to be a bit better, but I realized that the right button was completely non-working!!! Why the hell did I keep this stupid mouse then? I threw it in the thrash can and put back the first one. Then I figured out that putting the mouse on a piece of white paper helped, making it a lot less jumpy.

    Windows update restarting computer while I’m using it

    Windows 10 sometimes automatically restarts the computer to apply some updates. Up to now, this only happened while the machine was idle. Well yesterday, it happened right in my face, while I was working with Live! I got so pissed off by this that I tried to disable this really bad functionality. I fortunately figured out a way to disable these forced updates. It was relatively easy, although it caused me trouble because my Windows is in French and the procedure was in English. If this procedure doesn’t work and spurious reboots happen too often, this may force me to downgrade to Windows 8 or Windows 7, or switch to Mac and have constant trouble with too small fonts. This could be a dead end case leading me to stop using my computer, at least stop trying to make music with this.

    Slower and slower machine

    My main computer is on a desk while my music gears are on a table on the opposite wall. I tried to link them together using a long USB cable and a hub, but that failed with crashes from Ableton’s Live. However, my attempts were with the audio interface built into my Ultranova. Maybe I’ll have more luck with my Focusrite, if the cable and hub are stable enough. Why an hub? Well, this is to get a keyboard and mouse next to my music table. I will also transport video through an HDMI cable and get a screen nearby as well.

    But for now, I ended up having to use my Lenovo’s IdeaPad Yoga 13 ultrabook for attempts at music production. This worked relatively well, but the machine is starting to be slow since I updated it to Windows 10. Searching on forums gives no result, except other people are experiencing performance problems, sometimes on Windows 10, sometimes on Windows 8.1. Starting Live is now taking almost 45 seconds on this machine. Fortunately, the program is responding correctly for now, until of course I add enough tracks and effects to my Live set to make it choke up like crazy. I guess this will happen if I go far enough in music production.

    Difficulties with music production itself

    Creating the track I had in mind caused me great trouble. While not super complex, it is not a trivial repeat drum beat. I managed to play it a couple of times, started the recording on my EMX and messed it up completely. I tried again, messed it up again. I cannot play it reliably unless I try 25 times and more. The workaround is to correct notes, but this is quite tedious on the EMX. Tired of this, I tried to record MIDI using my Ultranova as a source and Live as a sequencer. But even from Live, fixing the incorrect notes was a real pain. I experimented with the quantization which also didn’t work correctly.

    There is no well-defined workflows and no comprehensive tutorials about music production. All I can find is case-specific pro tips, sometimes involving plugins I don’t want to install yet. I’m just overwhelmed with Live itself, having to constantly check and redo what I am doing, this is not a great time to complicate stuff with plugins.

    Conclusion

    Although I am having less and less fun with all this for the moment, I feel I can manage to get something good out of it. If I gave up because of difficulties, I would not have been able to get a Ph.D, to keep my job for more than seven years and to create a modded Minecraft map.

  • An intricate audio puzzle

    Since I moved to Windows 8, I am having multiple and increasingly annoying issues with my audio setup for computer-assisted music creation. I am slowly reaching a dead end that will force me to give up on creating music. At best, I will only be able to play some beats for fun with hardware synthesizers: no way to record, mix, apply effects etc., no way to ever come up with a full end-to-end song, just repeated audio patterns.

    Initial setup

    Here is my configuration:

    • Intel Core i7
    • 16Gb of RAM
    • 240Gb SSD
    • 1Tb HDD
    • M-Audio’s Fast Track Pro
    • (About to become infamous) Ableton’s Live 9.1
    • Infamous Windows 8.1

    The M-Audio interface is accepting input from two TRS jacks. I was usually plugging the output of my Korg’s EMX+Kaoss Pad during session recording. The interface also has S/PDIF input that I was using to feed in audio from my Novation’s UltraNova hardware synthesizer. This trick allowed me to record four separate tracks with that otherwise stereo-only interface. Sound is output to two KRK audio monitors.

    During a few months, this configuration worked correctly. However, from October 2014, things started to misbehave in multiple random ways. I initially thought this was because of my UltraNova, but problems persist even if I uninstall UltraNova’s drivers and unplug it from USB.

    Here are the issues I am facing with the setup:

    • Some recording sessions go well, but after I close Ableton’s Live, turn off my devices and shut down my computer, Windows is stuck in a loop, incapable of completely turning off the machine. Screen remains black, computer fan continues spinning. Problem can happen if I leave the audio interface plugged and turned on, or if I turn it off.
    • Sometimes, sound has an incorrect pitch. There seems to be a mismatch between audio frequencies: Ableton’s Live sends 44.1kHz while audio interface plays at 48kHz. There is no solution, except repeatedly unplugging and plugging the audio interface from a USB port, try in another port, until it works.
    • Sometimes the M-Audio driver goes corrupt and cannot play sound anymore except through ASIO using Live. When this happens, I have to completely uninstall and reinstall the driver.
    • A few weeks ago, my UltraNova started to sound awfully distorted when sound was going through S/PDIF. Worried, I tried hooking up the synthesizer to my home theater AV receiver, through S/PDIF of course, and sound was super clean. Problem is thus caused by the M-Audio interface.
    • The behavior is different but incorrect on Linux: S/PDIF sound goes out distorted unless I lower my UltraNova’s volume to more than the half. Under Windows+Live, distortion happens at that volume level as well. As a result, it seems that some software component is involved in S/PDIF handling, and that component now misbehaves differently on Windows and Linux.

    After I started getting distortion through S/PDIF, I felt it was too much for me and tried to change my configuration.

    Second setup: another audio interface

    My UltraNova offers an onboard audio interface. In order to isolate the M-Audio interface from the overwhelmingly complex equation, I decided to give it a shot. That resulted in the second setup described below.

    • Audio input is now plugged to my UltraNova’s jacks. I ended up plugging a mixer in order to get signals from my EMX+Kaoss Pad as well as a Nord Drum module I recently acquired.
    • My UltraNova sends audio to my computer through USB. As a result, sound from the synthesizer is transferred digitally while sound from my EMX and Nord is sampled by the UltraNova’s onboard chip.

    I don’t like this configuration very much because my mixer has an annoying tendency to clip and I end up with a stereo mix of my recording, making it impossible to separate the tracks. I will thus be unable to experiment with mixing using this setup, unless I manually sample each track separately.

    But this is not the main issue. Here are the problems:

    • I was able to record a couple of sessions of improvisation using the above configuration. However, a week ago, recorded sound started to be distorted. Even Live’s test tone, played through ASIO, then passing into UltraNova, started to sound distorted!
    • Not only playback is distorted but also recordings are not clean anymore, dirty of distortion. A promising session that could almost have been used as is for a sound track in a future Minecraft video got screwed up by this and is good for throwaway!
    • I got fed up and tried to disable ASIO, using DirectSound instead. That worked, no distortion, but more latency. I can even hear the latency when playing through Live with a MIDI keyboard.
    • Thinking it could be UltraNova’s ASIO driver, I tested with ASIO4ALL instead and got similar issues.
    • Yesterday, Live suddenly died and could not start anymore. For no obvious reasons, I had to reinstall it completely. After that, sound with ASIO worked without distortion, but playback and recording were frequently cutting.

    Contradictions, no gos, no solutions!

    • My best friend thinks the issue is caused by Windows 8 and that I should downgrade to Windows 7. However, my machine takes forever, at least one hour, to install Windows, excluding drivers and applications, installation destroys Linux boot loader and it takes me at least half an hour to find out how to restore it because there is no builtin ways in Ubuntu to do so simply. Activation of Windows 7 is likely to fail because I upgraded my license to Windows 8, and I will be left with no solution if that happens, other than trying one crack after the other or installing some piece of crap that would make sure my system’s date is set to something that won’t go past the activation grace period. I just cannot accept to have all messed up file date/times because of a single piece of software.
    • I thought about purchasing a new computer, that would have only Windows 7 and be dedicated to music creation. However, there is no Windows 7 machine anymore; every new system comes with Windows 8. I could try, maybe I would be lucky and the new Windows 8 configuration would work better, but that is a hit or miss without any way to increase chances of success! Probably my best guess would be a custom-made machine with a Windows 7 license for it, if this can at all still be purchased.
    • Some forum posts pretend that Ableton’s Live will work fine on Windows 8 and 8.1, others not, others pretend it worked on Windows 8 and not well on Windows 8.1. Downgrading to Windows 8 is just a non-sense for me, better downgrade to Windows 7 instead. I’m likely to experiment the same activation issues and will loose the same amount of time reinstalling everything and repairing my Ubuntu configuration.
    • Some forum posts suggest that it will never work well on a PC and that I should try with a Mac. Well, I tried on a Mac, and that was the most awful, most frustrating experience through my whole life. The machine was awfully slow and keyboard was not responding in a deterministic way. From this experience, I had to conclude with concerns that the Mac will work well only when used with the mouse, keyboard is just for typing text in fields and emails!!! My visual impairment makes using the mouse a pain for me. Does that mean I am excluded from computer-assisted music creation, unless somebody helps me out all the time? I am slowly but surely reaching that very frustrating conclusion.

    For now it somewhat works with non-ASIO configuration and stereo recording, but I know a lot more can be done. Does the problem come from Live, Windows, my motherboard’s USB ports? I just cannot figure out.

    I started to investigate about ASIO itself, to try understand how and why it could misbehave. I may have to dig straight into ASIO SDK for that. I investigated about using ASIO with Audacity, because that could help me test without Ableton’s Live and eliminate it from the equation. Even that promises to be major hassle, forcing me to install Visual Studio, SDKs and compile the whole planet to get ASIO support into Audacity!

    Each new issue is decreasing my motivation to persist. I have less and less fun playing with that music creation setup and I am often thinking about putting it aside. I’m not to the point of selling the components yet, but if I cannot find out something to unblock the computer part of it, I may come to that. I will at least wait for Windows 10 to come out and give it a shot before selling anything.

    I hope some people will read that post and start thinking about concrete solutions, not just « it works for me, so no problem », « buy a Mac », « reinstall », « try on your friend’s computer ». Maybe a Linux-based music creation platform could help, maybe a Linux distribution dedicated to music and providing just the needed components, nothing that can interfere, or something that would make Mac platform faster and more usable.

    I am a software developer so I could help in developing the platform, but because Live is closed source, I cannot take what exists and improve over it, I would have to start from something inferior such as Ardour or Audacity, and rebuild/reinvent/rewrite on top of it. This would be a very time consuming experience, and without Ableton’s expertise, I would certainly do it wrong. If all Mac OS X was open source, if it could be compiled from streamlined autoconf-based build processes rather than XCode where small-sized fonts are king, I would be able to open the hood, examine the code and improve the GUI. No, I would have to start from scratch, using just the BSD kernel, and reinvent the WHOLE GUI. Without Apple’s experience, I would certainly do it wrong and messy!

  • KeePass and user interface problems

    This morning, I tried to install Ableton‘s Live on my Mac and got an endless sequence of issues. First, I needed to log in to my Ableton Live account in order to get the Mac OS X binaries. Unfortunately, the machine-generated password for that account is stored in a KeePass keyring, so I had to install KeePass 2 on my Mac to get access to the keyring and find the password. In order to install KeePass 2, I needed to install Mono.

    After I installed Mono, I was able to unpack the KeePass ZIP and got an executable that I copied in my Applications folder. However, KeePass never showed up in the Launchpad; I had to open up the Finder, browse to Applications, then double-click on the KeePass icon there. Startup of KeePass took from thirty seconds to five minutes. After that, the menus were unresponsive, taking from five to ten seconds to open up the File menu, from five to ten seconds to find and expand the Open item, then was able to open my password file. The upper KeePass menu was unresponsive; I had to use menus from within the KeePass window, which not the Mac way. Keyboard shortcuts like Command-Q were failing. But at least I got the GUI working.

    However, no matter how many times I tried, my master password started to suddenly fail. I ended up making the password visible and found out that everything was typed in upper case. CAPS LOCK AGAIN! This is so frustrating, so annoying, that this Razer keyboard is causing me to make repeat mistakes, inserting all sorts of junk through anything I write, then the CAPS LOCK that triggers all the times.  I had less issues with my Logitech non-mechanical keyboard, which is by itself an incredible non-sense for me. A mechanical keyboard should work better, be more reliable, but it is almost ending up to be the opposite for me! I just cannot give up and put back the old Logitech keyboard.

    However, sorting out the CAPS LOCK issue wasn’t sufficient. Master password was failing AGAIN! I then noticed that EVERYTHING I was typing was upper-cased! I tried to repeatedly press caps lock, I tried with the Mac’s internal keyboard rather than external one, it was even WORSE! The internal keyboard is now spitting out numbers when I press letters and most keys do nothing! This is a total non-sense for me. I tried to switch keyboard layout with Windows+Space, without success. I ended up trying to log off, but I couldn’t log back in: the system was entering upper-case letters even for password input. I thus had to reboot, then that came back to normal.

    After all these hurdles, I was able to connect to my KeePass keystore. However, when I right-click on the entry for Ableton’s Live, NOTHING happens. I tried right-clicking multiple times without any success. If I try enough times, KeePass shuts itself down at me.

    I then tried with a command-line KeePass tool, KPCLI. However, it was totally impossible to install it. The tool requires an endless number of Perl dependencies. The KPCLI website indicates nothing about how to get these dependencies. Following another web site, I tried to install them using CPAN, but despite the effort, I am still getting error messages about missing Clone.pm. Moveover, the above blog post refers to a broken Gettext that needs to be manually fixed, again! Moreover, KeePass home page refers to a bug in Mono that needs to be worked around.

    Bottom line, most open-source libraries are bugged and needs manual recompilation/patching! I also experienced this issue when trying to build Extempore a few days before. This is becoming a quite concerning trend. I cannot believe the libraries are all low-quality pieces of software. I rather think developers keep patching the libraries rather than trying to use them as they are and library owners cannot keep up pulling and integrating the patches. Even if the library owners integrate patches, the integration sometimes isn’t what the patcher exactly intended, so the code relying on the original patch needs to be adapted for the revised patch. This trend is concerning, because if it continues like that, we will end up to need a virtual machine for each and every open-source application we install. Docker can be of some help there, but it doesn’t work so well for applications with graphical user interfaces. Docker is nevertheless a good tool for running services in isolation, with each service having its own funky dependencies.

    For my Perl/KPCLI issue, I probably need to recompile/reinstall Perl itself, because I am using a too old Mac OS X version! Homebrew can be used to perform such tasks, but often, it starts failing, because the installation recipes are not correct and requires tweaking for the local Mac OS X! This is non-sense, all Mac’s should be equal, but this is not the case as far as I can see. Only newer 2015 Mac’s will work, so this is pointless!

    For example, I tried to use Homebrew to install Extempore. The program ran for almost one hour just to compile pcre, then it tried to install a patched LLVM package. Download happened, but install failed, because the SHA1 key mismatched. The download TAR archive can be checked with tar -ztf without issues, so it doesn’t seem corrupt, but SHA1 mismatches, so I would need to copy/paste blobs of text from a web site just to tweak the Homebrew recipes, which are non-senselessly named « formulas ». Why use a non-standard terminology at first? This is not a « formula », we are not dealing with chemistry, mathematics, even less with magic! This should be called a « package ». Anyway, it doesn’t work, so it doesn’t really matter.

    Maybe I would have more luck with a Mac-friendlier password manager such as 1Password (don’t know, never tried), but that would require me to copy/paste all my KeePass passwords into the new tool, one entry at a time, and more than that, again, 1Password is just a trial! I don’t want a temporary solution that works just for 15 or 30 days, unless I toss my full name and address with credit card to somebody that can as well sell it to non-profit organizations that will then start calling me weekly for donations. I am already starting to have this issue, so just don’t want to make things worse. I want something that will solve password management once and for all! In addition, 1Password works just for Windows and Mac, so again, Linux is left out.

    The only thing I could do is to download the binaries from my main computer and copy them over to my Mac, or reset my Ableton account’s password to something I can remember and just type it, as before I discovered KeePass. I just gave up because this is too much work and just too slow. Live is likely just to fail starting on this old MacCrapPro.

    These are not the only issues I ran into this morning. Firefox now takes thirty seconds to one minute to start. Scrolling with the mouse wheel is unreliable. I have to give the mouse wheel a big swing for the scrolling just to start, then it is not smooth, rather choppy. Even scrolling with the arrow keys is choppy.

    I just cannot get used to the funky Mac keyboard shortcuts. For me, switching applications is done with Alt-Tab, not Windows-Tab, but the Mac way is Windows-Tab. Yes, technically, it is Command-Tab, but that’s not what I have on my keyboard, and the internal keyboard just doesn’t work, missing critical keys such as Option and Fn. I always end up pressing Alt-Tab, then Windows-Tab. I always end up pressing Ctrl-K to put the search area in focus, then have to press Windows-K because Ctrl-K fails. Sometimes Windows-W will not close Firefox tab while Ctrl-W does. Sometimes, Ctrl-W won’t close the tab while Windows-W does. Sometimes, Windows-Q will close currently running applications, sometimes not, then I have to switch to the mouse, trying to find out the really small Red circle and click, oups the mouse just slipped while clicking because the screen elements are too small, try again, works. Even the builtin terminal suffers from this issue: Ctrl-+ to zoom in, oups, Windows-+! Ok, home to move at the beginning of current line, oups that moves at beginning of the whole command line history and nothing can go back except the mouse again! Moving at beginning of the line is done with Ctrl-A, not Windows-A. All is about inconsistency, making the keyboard almost useless.

    Bottom line, each and every operation requires multiple attempts, making me nervous and mad each time I am using the Mac.