Csound Csound-dev Csound-tekno Search About

[Csnd] Csound performance on Raspberry Pi

Date2013-07-04 08:41
FromDavid Banks
Subject[Csnd] Csound performance on Raspberry Pi
Hi csound list,

It's been a while since I've played with Csound and I was hoping to
build a simple synthesizer using a Raspberry Pi, Csound 6 and my USB
MIDI keyboard.  Is the Pi Model B powerful enough to provide reasonable
realtime performance with this setup?  I have previously run into
dropout / distortion problems with heavy polyphony and lots of effects
when using similarly specced laptops for this purpose.

This project would be slightly less demanding than that, as I plan to
purchase an external effects unit to use with the Pi.  However I would
need at least 3-oscillator polyphony plus resonant lowpass filter and
ADSR envelope.  (Anything more is a large bonus but that's the minimum
that I need to be useful.)

Just asking so that I can avoid buying a Pi if it turns out to be
useless for this purpose.  I am willing to use an external sound card if
that will help? Alternatively (and I suppose this is getting off topic)
would it be possible to work around performance issues by manually
writing synth code in C?

Cheers,
Dave

Date2013-07-04 17:09
FromPaul Batchelor
SubjectRe: [Csnd] Csound performance on Raspberry Pi
This is definitely possible on a Pi. You really just need to be smart on how you optimize your instrument. 

There are also ways of optimizing the Pi itself for audio output. 

Do get an external sound card! The soundcard on the Pi is 11-bit and sounds quite noisy with quieter signals like reverb tails. 

Best of Luck,

Paul


On Thu, Jul 4, 2013 at 3:41 AM, David Banks <amoebae@gmail.com> wrote:
Hi csound list,

It's been a while since I've played with Csound and I was hoping to
build a simple synthesizer using a Raspberry Pi, Csound 6 and my USB
MIDI keyboard.  Is the Pi Model B powerful enough to provide reasonable
realtime performance with this setup?  I have previously run into
dropout / distortion problems with heavy polyphony and lots of effects
when using similarly specced laptops for this purpose.

This project would be slightly less demanding than that, as I plan to
purchase an external effects unit to use with the Pi.  However I would
need at least 3-oscillator polyphony plus resonant lowpass filter and
ADSR envelope.  (Anything more is a large bonus but that's the minimum
that I need to be useful.)

Just asking so that I can avoid buying a Pi if it turns out to be
useless for this purpose.  I am willing to use an external sound card if
that will help? Alternatively (and I suppose this is getting off topic)
would it be possible to work around performance issues by manually
writing synth code in C?

Cheers,
Dave


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2013-07-04 17:35
FromAnders Genell
SubjectRe: [Csnd] Csound performance on Raspberry Pi
I have been wondering; would there be any possibility to somehow tap into the relatively powerful GPU on the Pi for csound real time rendering? I know naught of how such things work, but I imagine a GPU does floating point operations one way or another and that would be useful for csound, no?
Is the GPU multi core btw? That could perhaps be useful for polyphony?

Regards,
Anders

4 jul 2013 kl. 18:09 skrev Paul Batchelor <pbatchelor@berklee.edu>:

This is definitely possible on a Pi. You really just need to be smart on how you optimize your instrument. 

There are also ways of optimizing the Pi itself for audio output. 

Do get an external sound card! The soundcard on the Pi is 11-bit and sounds quite noisy with quieter signals like reverb tails. 

Best of Luck,

Paul


On Thu, Jul 4, 2013 at 3:41 AM, David Banks <amoebae@gmail.com> wrote:
Hi csound list,

It's been a while since I've played with Csound and I was hoping to
build a simple synthesizer using a Raspberry Pi, Csound 6 and my USB
MIDI keyboard.  Is the Pi Model B powerful enough to provide reasonable
realtime performance with this setup?  I have previously run into
dropout / distortion problems with heavy polyphony and lots of effects
when using similarly specced laptops for this purpose.

This project would be slightly less demanding than that, as I plan to
purchase an external effects unit to use with the Pi.  However I would
need at least 3-oscillator polyphony plus resonant lowpass filter and
ADSR envelope.  (Anything more is a large bonus but that's the minimum
that I need to be useful.)

Just asking so that I can avoid buying a Pi if it turns out to be
useless for this purpose.  I am willing to use an external sound card if
that will help? Alternatively (and I suppose this is getting off topic)
would it be possible to work around performance issues by manually
writing synth code in C?

Cheers,
Dave


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2013-07-04 17:41
Fromjpff@cs.bath.ac.uk
SubjectRe: [Csnd] Csound performance on Raspberry Pi
> I have been wondering; would there be any possibility to somehow tap into
> the relatively powerful GPU on the Pi for csound real time rendering? I
> know naught of how such things work, but I imagine a GPU does floating
> point operations one way or another and that would be useful for csound,
> no?
> Is the GPU multi core btw? That could perhaps be useful for polyphony?
>

One can do amazing things with a multicore GPU!  See our paper in ICMC
Huddersfield or our forthcoming presentation at DAFx all being well.

Richard Dobson has been looking at thr Pi I believe and may hasve more to
say.



Date2013-07-04 19:48
FromRichard Dobson
SubjectRe: [Csnd] Csound performance on Raspberry Pi
On 04/07/2013 17:41, jpff@cs.bath.ac.uk wrote:
>> I have been wondering; would there be any possibility to somehow tap into
>> the relatively powerful GPU on the Pi for csound real time rendering? I
>> know naught of how such things work, but I imagine a GPU does floating
>> point operations one way or another and that would be useful for csound,
>> no?
>> Is the GPU multi core btw? That could perhaps be useful for polyphony?
>>
>
> One can do amazing things with a multicore GPU!  See our paper in ICMC
> Huddersfield or our forthcoming presentation at DAFx all being well.
>
> Richard Dobson has been looking at thr Pi I believe and may hasve more to
> say.
>

Not much to say, though: as I understand things at present, it is not 
currently possible to use the R-Pi GPU as a general-purpose accelerator. 
There is support for the usual media stuff - openCL, Jpeg things. So if 
anything is possible, it will only be through horrible hacking.

Richard Dobson


Date2013-07-05 06:08
Fromhugo.haesaert@skynet.be
SubjectRe: [Csnd] Csound performance on Raspberry Pi
Hi All !

this is possibly my first mail to this list, don't remember, but i've been lurking here 
for many years .  And finally i can add something :)

I have been using my Pi now for just over 13 months now, and it's a solid little 
performer .  My intention was to use it as an always on, low power, music 
player/server .  The lack of a decent audio out and usb problems put that project 
on the backburner since last november .  But with an uptime of 243 days it has 
served me well since, running Synergy, a keyboard/mouse sharing service for 
several of my other computers .

The usb problems seem to have been dealt with, but afaik usb still uses quite a 
bit of available resources .

The way to go for most efficiency would either be an HDMI SPDIF extractor or an 
I2S connected DAC (or in/out codec) .  The former uses little arm resources as 
the heavy lifting is done by the graphics engine, and the alsa driver was written by 
the blob team and is well debugged .  The latter ALSA driver is a recent user 
development,  not available in the kernel yet, and has to be diy-compiled for now 
(see the "I2S: Anyone got it running?" thread in the foundation's forum) .  Another 
thing is that the I2S connection is only available, without hardware hacking, on 
the, now current, second board revision .  That this later version has 512MB of 
ram makes it even better :)

Hope this helps a bit .

And some  day i'll dive into csound, not just yet, as my hardware synths keep me 
happy, analogues n all .

Keep 'em oscillating :)

Hugo
=