Topic: Pianoteq Stage 6.1 on Raspberry 3 => xruns

Hi,

I tried about a month with PT-Stage-6.0 on a Raspberry 3 (with Hifiberry-DAC+) - really nice that MODARTT decided to release an ARM version!!! I had to set the internal sample-rate to 22050Hz and the number of voices to 32. After the changes PT runs nicely - I was excited. I wrote some code around the binary for using PT-Stage-6.0 inside our Raspi-based Synth plattform Zynthian (we are using Zynthian on stage).

But after the update to 6.1 I am getting much problems with xruns (drops). Only setting the number of voices to 24 and the internal sample-rate to 11025 does work without xruns. But with such a low internal sample-rate the sound is very bad. Also there seems to be problems with the MKII (perhaps also other instruments?), because some keys are sounding very hushed and thin (especially the upper registers). As Julien told me via email, for the update to 6.1 more CPU cycles are needed for better algorithms.

Currently PT-Stage-6.1 is not really usable for Raspberry 3. So my questions are:
- Is there a chance to get this fixed (better optimization, ...) - perhaps in further versions?
- If not: is there a way for RPi users to get the old versions (try and licensed)?
- Is the support for ARM only an addition of the main path to show that is posssible, but perhaps not usable? For me this would be a very important information, because I would drop my efforts to use PT on an RPi3 without the perspective of creating instruments for live playing.

Thanks && best regards, Holger

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

You can always download one previous version here:

https://www.pianoteq.com/user_area?s=downloads


(You can also download other previous versions by modifying the version number in the link itself, btw.)


The new spatialization model introduced in 6.1 seems to need more CPU.

Last edited by EvilDragon (06-03-2018 12:54)
Hard work and guts!

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

Thanks @EvilDragon!

I have downloaded the older version, too. I made some further tests with 6.1.1 and much more optimizing and got it running. The first thing: I am using the newest release of Pianoteq. Also I am using only 22050 Hz internal sample-rate and 24 voices. I also used CPU isolation (cgroups) on the Raspi so I am running the audio related processes on 3 CPUs and the rest on one CPU. This seems to work well.

Regards, Holger

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

My first tests with the ASUS Tinkerboard and 6.1.1 showed no performance problems.

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

eriks wrote:

My first tests with the ASUS Tinkerboard and 6.1.1 showed no performance problems.

Can you post your performance index and your settings (samplerate, polyphony etc)?

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

MrRoland wrote:
eriks wrote:

My first tests with the ASUS Tinkerboard and 6.1.1 showed no performance problems.

Can you post your performance index and your settings (samplerate, polyphony etc)?

Pianoteq 6.1.1
Internal and host sample rate: 44100 Hz
Buffer size: 128 samples (2.9 ms)
Bit depth: 24 bits
Max polyphony: Auto (Optimistic)
Output: Direct hardware (either onboard headphone jack or Hifiberry AMP2)*

The headphone jack output of the Tinkerboard is quite a difference compared to the Raspi3, BTW.

* The AMP2 currently produces no sound, but this is unrelated to Pianoteq. Last week it was working perfectly, must be some Tinkerboard software problem.

I prefer to play dry, without any effects applied, though yesterday I had a small reverb running (Jazz studio).

Performance index is difficult to tell, as I'm running headlessly. I remember to have seen a 22 yesterday when playing while configuring. I have no GUI at all running at it consumes a lot of the processor cycles. I'm only booting into systemd multi-user.target. To configure Pianoteq I use ssh X-Forwarding (see below), but for playing I start Pianoteq from the command line directly in a tmux session.

ssh -XC -c aes128-ctr tinkerboard bin/start-pianoteq611-gui

Performance was great with 6.0.3, I played many many hours without dropouts, with 6.1.1 only some hours yet, so maybe I will report back later. I tried to play some heavy-usage patterns like chromatically ascending arpeggios with sustain pedal, but couldn't hear any issues. Pianoteq seems to very good in distributing the possible polyphony to all the notes currently playing, as the (first played) very lower notes still play when moving upwards.

The new engine feels like flying, the realism is stunning, but I'm not yet convinced by some sound qualities, with my Sony MDR-7506 headphones at least. Sounds a bit muffled.

This is the start-script:
#!/bin/bash --

sudo cpufreq-set -c 0 -g performance
sudo cpufreq-set -c 1 -g performance
sudo cpufreq-set -c 2 -g performance
sudo cpufreq-set -c 3 -g performance

/home/linaro/bin/pianoteq611 --headless --multicore max $@

sudo cpufreq-set -c 0 -g ondemand
sudo cpufreq-set -c 1 -g ondemand
sudo cpufreq-set -c 2 -g ondemand
sudo cpufreq-set -c 3 -g ondemand

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

Thanks for your explanation.
I'm playing on a mini pc right now, but I want to switch to a arm board later. Since there seem to be some performance issues with the raspberry pi I was surprised you had no problems.
So my choice might be the thinker board, but I'm also checking out some octacore boards.

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

Hi Holger,
Now I got my Zynthian, which I mainly want to use for running PTQ.  I installed the latest (6.3.0), using the automated procedure via the web interface.  I can run it, but with a lot of crackles.  However (in between these crackles), the sound is really beautiful, much better than that of my Mac mini (2012 model), which I run currently.  BTW, there are occasional cracks there as well.

So I would like to ask you a few questions about configuring the device, since I am an absolute NOOB with the Zynthian (I am OK with general Linux/Debian/Ubuntu admin).

C0d3man wrote:

I have downloaded the older version, too. I made some further tests with 6.1.1 and much more optimizing and got it running. The first thing: I am using the newest release of Pianoteq. Also I am using only 22050 Hz internal sample-rate and 24 voices. I also used CPU isolation (cgroups) on the Raspi so I am running the audio related processes on 3 CPUs and the rest on one CPU. This seems to work well.

Regards, Holger

Could you explain where to change these settings?  I searched for some documentation, but could not find any. I also noted the my Raspi 3 B+ has a 64bit architecture, but PTQ says its running the 32 bit version.  I guess it would be an improvement to run a 64 bit version, but again have no idea how to achieve this. 

Any help would be appreciated!  I'd really love to use my Zynthian for PTQ!!

All the best,

Chris

Re: Pianoteq Stage 6.1 on Raspberry 3 => xruns

Hi Chris,

KyotoMe wrote:

Hi Holger,
Now I got my Zynthian, which I mainly want to use for running PTQ.  I installed the latest (6.3.0), using the automated procedure via the web interface.  I can run it, but with a lot of crackles.  However (in between these crackles), the sound is really beautiful, much better than that of my Mac mini (2012 model), which I run currently.  BTW, there are occasional cracks there as well.

So I would like to ask you a few questions about configuring the device, since I am an absolute NOOB with the Zynthian (I am OK with general Linux/Debian/Ubuntu admin).

C0d3man wrote:

I have downloaded the older version, too. I made some further tests with 6.1.1 and much more optimizing and got it running. The first thing: I am using the newest release of Pianoteq. Also I am using only 22050 Hz internal sample-rate and 24 voices. I also used CPU isolation (cgroups) on the Raspi so I am running the audio related processes on 3 CPUs and the rest on one CPU. This seems to work well.

Regards, Holger

Could you explain where to change these settings?  I searched for some documentation, but could not find any. I also noted the my Raspi 3 B+ has a 64bit architecture, but PTQ says its running the 32 bit version.  I guess it would be an improvement to run a 64 bit version, but again have no idea how to achieve this. 

Any help would be appreciated!  I'd really love to use my Zynthian for PTQ!!

All the best,

Chris

The only way to change the default settings is to login via "ssh -X zynthian.local" and after that start the Pianoteq engine on Zynthian. You should get the Pianoteq window via ssh-X11-forwarding (after a few seconds). From there you can register and change the parameters for jack.

It is a little bit strange that the default parameters are making problems. On my RPi-3B it works  out of the box.

Zynthian is based on a 32bit distribution, so there is the 32bit binary of PTQ installed. Changing to 64bit is a problem for Raspi-2 users and IMHO does not improve power.

If it's ok for you we should better change further communication into the Zynthian forum at https://discourse.zynthian.org/, because the problems are more Zynthian related than PTQ.

Regards, Holger