Topic: How I got Pianoteq to work on a Chromebook

Hello:

A new Pianoteq user here. After some tinkering, I got it to work on a Chromebook. I am sharing some info about the process, as it seems it may be useful to others.

So I was considering Pianoteq, and I had an idle Acer Chromebook with a Celeron N3160 cpu. As a Linux user, I decided to try it to put it to good use.

My initial attempt was with the "native" Linux provided by Google. However, it quickly became apparent that this works like a container that does not support direct hardware access as required. For example, I did not get a response from cpufreq-info and apparently was not able to set the real-time priority and performance settings as indicated in the Linux README. So this was a dead end.

Therefore, I went back to the "old" approach with crouton. I was happy to read in its documentation that this does provide direct hardware access in contrast to the native approach. So I followed the instructions to install it - a smooth process. And indeed, now I was able to set the required settings and notice their effect.

The remaining issue was to avoid PulseAudio, the default sound control layer, and the corresponding latency. One has to select direct soundcard access under Devices. However, avoiding PulseAudio is not that straightforward, and as soon as one uses it, for example to control headphone volume, it blocks soundcard access. So then one has to kill its processes - all a bit messy. To avoid this I used alsamixer instead for sound control, but that is not very user-friendly.

To avoid these issues, I decided to purchase an external soundcard - Focusrite 2i2 (and a usb hub to have more inputs). After hooking everything up, it worked like a charm.

Voilà :-)

Jan

Roland FP-30X -> usb -> Chromebook / crouton Pianoteq 7.5 <-> usb <-> Focusrite 2i2 -> AKG k240 headphone

Re: How I got Pianoteq to work on a Chromebook

I was inspired by your post to get Pianoteq running my Toshiba Chromebook 2 (2014 version, with the Celeron N2840), with success.

The impetus was that Google had stopped providing updates to the ChromeOS, and I like tinkering. 
I chose GalliumOS (a derivative of Xubuntu because it is lightweight and optimized for ChromeOS devices, and because I found detailed instructions for exactly what I need to to do make this work (https://roytanck.com/2021/03/13/upgradi...-run-linux).

The biggest hurdle was needing to replace the stock firmware, which was an absolute requirement for performing a full linux installed.  I choose "Full Firmware [UEFI]" which completely replaces the ChromeOS (no dual-boot).  Replacing the firmware required removing the back and disabling the write-protect jumper, which was surprisingly easy. 

I had zero expectations of success with the built-in sound, so I used a USB audio interface, and JACK.

Pianoteq works like a charm.  I am able to get very low latency (2.9 msec) and no audible dropouts at 48 note polyphony.  The performance index is between 14 and 20.  For comparison:
- I saw a performance index of around 17 using a Raspberry Pi 4B without overclocking and with the 32-bit Raspberry Pi OS.
- This improved to about 20 with overclocking to 2 GHz
- This improved to about 30 with the 64-bit Operating system
- I saw about 75 on a 2015 MacBook Pro

But these all "feel" about the same in terms of performance - which is to say that performance is not an issue.  I'm frankly amazed. 

I know, this feels like a stunt. But I will actually use this, at least for rehearsals and travel. 


jandecaluwe wrote:

Hello:

A new Pianoteq user here. After some tinkering, I got it to work on a Chromebook. I am sharing some info about the process, as it seems it may be useful to others.

So I was considering Pianoteq, and I had an idle Acer Chromebook with a Celeron N3160 cpu. As a Linux user, I decided to try it to put it to good use.

My initial attempt was with the "native" Linux provided by Google. However, it quickly became apparent that this works like a container that does not support direct hardware access as required. For example, I did not get a response from cpufreq-info and apparently was not able to set the real-time priority and performance settings as indicated in the Linux README. So this was a dead end.

Therefore, I went back to the "old" approach with crouton. I was happy to read in its documentation that this does provide direct hardware access in contrast to the native approach. So I followed the instructions to install it - a smooth process. And indeed, now I was able to set the required settings and notice their effect.

The remaining issue was to avoid PulseAudio, the default sound control layer, and the corresponding latency. One has to select direct soundcard access under Devices. However, avoiding PulseAudio is not that straightforward, and as soon as one uses it, for example to control headphone volume, it blocks soundcard access. So then one has to kill its processes - all a bit messy. To avoid this I used alsamixer instead for sound control, but that is not very user-friendly.

To avoid these issues, I decided to purchase an external soundcard - Focusrite 2i2 (and a usb hub to have more inputs). After hooking everything up, it worked like a charm.

Voilà :-)

Jan

Roland FP-30X -> usb -> Chromebook / crouton Pianoteq 7.5 <-> usb <-> Focusrite 2i2 -> AKG k240 headphone

Re: How I got Pianoteq to work on a Chromebook

very cool hacking here!  incredible that one can get good performance on hardware like this (and Raspberry PIs too).

Re: How I got Pianoteq to work on a Chromebook

I'm glad somebody has done this!  I tried and failed.  Bought a Lenovo Windows device instead; same price but you can upgrade to the full operasting system for free, and it doesn't affect the performance.  Nor do the updates clutter it up; it sorts itself out, getting rid of unwanted clutter, and works great on PTq.
These little machines are so handy!

I'm playing all the right notes but not necessarily in the right order

Re: How I got Pianoteq to work on a Chromebook

Recently I had to redo the crouton installation, and I realized some more information is needed to get things to work. Basically, one has to disable CRAS and access the audio hardware directly. The process is described clearly here:

    https://github.com/dnschneid/crouton/wi...2C-JACK%29

Jan

Roland FP-30X -> usb -> Chromebook / crouton Pianoteq 7.5 <-> usb <-> Focusrite 2i2 -> AKG k240 headphone

Last edited by jandecaluwe (06-04-2022 09:19)

Re: How I got Pianoteq to work on a Chromebook

Thanks a lot for this information. I may want to go for a full Linux install at some point also. The hardware intervention seems a bit scary, but perhaps it will be relatively easy also on my Acer14 Chromebook.

Pete the Greek wrote:

I was inspired by your post to get Pianoteq running my Toshiba Chromebook 2 (2014 version, with the Celeron N2840), with success.

The impetus was that Google had stopped providing updates to the ChromeOS, and I like tinkering. 
I chose GalliumOS (a derivative of Xubuntu because it is lightweight and optimized for ChromeOS devices, and because I found detailed instructions for exactly what I need to to do make this work (https://roytanck.com/2021/03/13/upgradi...-run-linux).

The biggest hurdle was needing to replace the stock firmware, which was an absolute requirement for performing a full linux installed.  I choose "Full Firmware [UEFI]" which completely replaces the ChromeOS (no dual-boot).  Replacing the firmware required removing the back and disabling the write-protect jumper, which was surprisingly easy. 

I had zero expectations of success with the built-in sound, so I used a USB audio interface, and JACK.

Pianoteq works like a charm.  I am able to get very low latency (2.9 msec) and no audible dropouts at 48 note polyphony.  The performance index is between 14 and 20.  For comparison:
- I saw a performance index of around 17 using a Raspberry Pi 4B without overclocking and with the 32-bit Raspberry Pi OS.
- This improved to about 20 with overclocking to 2 GHz
- This improved to about 30 with the 64-bit Operating system
- I saw about 75 on a 2015 MacBook Pro

But these all "feel" about the same in terms of performance - which is to say that performance is not an issue.  I'm frankly amazed. 

I know, this feels like a stunt. But I will actually use this, at least for rehearsals and travel. 


jandecaluwe wrote:

Hello:

A new Pianoteq user here. After some tinkering, I got it to work on a Chromebook. I am sharing some info about the process, as it seems it may be useful to others.

So I was considering Pianoteq, and I had an idle Acer Chromebook with a Celeron N3160 cpu. As a Linux user, I decided to try it to put it to good use.

My initial attempt was with the "native" Linux provided by Google. However, it quickly became apparent that this works like a container that does not support direct hardware access as required. For example, I did not get a response from cpufreq-info and apparently was not able to set the real-time priority and performance settings as indicated in the Linux README. So this was a dead end.

Therefore, I went back to the "old" approach with crouton. I was happy to read in its documentation that this does provide direct hardware access in contrast to the native approach. So I followed the instructions to install it - a smooth process. And indeed, now I was able to set the required settings and notice their effect.

The remaining issue was to avoid PulseAudio, the default sound control layer, and the corresponding latency. One has to select direct soundcard access under Devices. However, avoiding PulseAudio is not that straightforward, and as soon as one uses it, for example to control headphone volume, it blocks soundcard access. So then one has to kill its processes - all a bit messy. To avoid this I used alsamixer instead for sound control, but that is not very user-friendly.

To avoid these issues, I decided to purchase an external soundcard - Focusrite 2i2 (and a usb hub to have more inputs). After hooking everything up, it worked like a charm.

Voilà :-)

Jan

Roland FP-30X -> usb -> Chromebook / crouton Pianoteq 7.5 <-> usb <-> Focusrite 2i2 -> AKG k240 headphone

Re: How I got Pianoteq to work on a Chromebook

Thanks for sharing the details of your process and the hardware you used to get it working smoothly.

Re: How I got Pianoteq to work on a Chromebook

patsy3523 wrote:

Thanks for sharing the details of your process and the hardware you used to get it working smoothly.

For more information on using Linux on Chromebooks or other tech-related topics, I recommend checking out https://multitechverse.com/. They have some great articles that can help you stay up to date and get the most out of your devices. Keep on tinkering and creating beautiful music!