I just received two raspberry pis, haven't even plugged them in yet but I was wondering if anyone had tried running pyo on it and would have tips or a stripped down distribution optimized for pyo?
Otherwise I'll go google hunting for more info, and try to get this to run this winter.
Also I'll want to hook up some sensors to an adc chip connected to the gpio of the pi, have pyo process the acquired data and send it via osc. Anyone know if I can feed the adc's signal coming in via i2c or spy directly into pyo? would I have to create a custom driver for this?
Ps: olivier si tu veux experimenter avec le pi j'en ai deux je peux t'en prêter un.
Ok so for anyone interested, I found this nice library https://projects.drogon.net/raspberry-pi/wiringpi/ that allows you to use the pi like an arduino, so I could write a pyo object in C to receive the SPI ADC data and stream it. There's even a python wrapper for this library which would be nice if creating low rate control, like lcd + encoder + button interface.
I'd love to hear about someone porting Pyo to the Raspberry Pie, but haven't heard anything yet. I hope to eventually bring my Pyo project to a portable device, and the Raspberry seemed like a great base for hobby-level embedded applications. The Raspberry is inexpensive and powerful, particularly given the small cost. I haven't started any work on a port, but have looked in to it at a high level. I'll share what I've learned. I hope that it will help you.
FOr those that don't know, the Raspberry Pie is an extremely inexpensive (less than $40) computer on a motherboard that is the size of a typical credit card. The board includes a processor and GPU, 256MB memory, SD card slot for permanent storage, 10/100 ethernet, and USB. Important to us, it has built-in audio
http://en.wikipedia.org/wiki/Raspberry_Pi
The design and distribution of the computer are a non-profit effort. It is meant to be a tool for learning programming and for creating small embedded solutions.
The Linux distros available for the Raspberry already include Python.
The C portions of Pyo might need a little help to get working on the Raspberry. The processor is an ARM11, and, as far as I know, no one has compiled Pyo yet for that.
If you get Pyo running, you may find that Pyo is slow. The processor has a clock speed of 700Mhz, but performance will be quite a bit worse than a desktop processor of the same clock speed, of course.
The ARM11 supports SIMD extensions. With the right implementation, these could give a big boost to some typical audio processing operations. I don't know if the C portions of Pyo are already optimized for this, or could be optimized without a huge effort, but it is a possibility if you find that the performance isn't sufficient.
The Raspberry has audio output, but not audio input. The Linux distros support generic USB audio class devices, and you can find many simple dongle and headset style sound devices that will interface this way. If the device is recognized by Linux, and is available through JACK, then Pyo can use it as an input stream.
With Pyo on a device like this, a little scripting could turn a $25 circuit board and a $20 USB audio interface into a digital effects unit, a tiny synthesizer/sampler, a signal analysis device, and all sorts of other useful tools.
Bryan
On Aug 19, 2012, at 12:44 PM, lucasparis <lucasparismu...@gmail.com<mailto:lucasparismu...@gmail.com>> wrote:
Hi,
I just received two raspberry pis, haven't even plugged them in yet but I was wondering if anyone had tried running pyo on it and would have tips or a stripped down distribution optimized for pyo?
Otherwise I'll go google hunting for more info, and try to get this to run this winter.
Also I'll want to hook up some sensors to an adc chip connected to the gpio of the pi, have pyo process the acquired data and send it via osc. Anyone know if I can feed the adc's signal coming in via i2c or spy directly into pyo? would I have to create a custom driver for this?
Ps: olivier si tu veux experimenter avec le pi j'en ai deux je peux t'en prêter un.
On Mon, Aug 20, 2012 at 06:20:33PM -0400, Bryan Smart wrote:
> Hi.
> I'd love to hear about someone porting Pyo to the Raspberry Pie, but haven't heard anything yet. I hope to eventually bring my Pyo project to a portable device, and the Raspberry seemed like a great base for hobby-level embedded applications. The Raspberry is inexpensive and powerful, particularly given the small cost. I haven't started any work on a port, but have looked in to it at a high level. I'll share what I've learned. I hope that it will help you.
Pyo seems to be successful built in Debian for both armv6 (armel) and v7 (armhf):
Unfortunately the Debian hardfloat port doesn't run in Raspberry Pi because it
uses some v7 processor features not supported in v6. However, I noticed it has
been v6hf-compatible built by raspbian folks:
Maybe Olivier can comment about optimizations for SIMD. I don't know what is required of an implementation to take advantage of it. I'm pretty sure that good use of it goes well beyond simple automatic compiler optimizations, though.
Bryan
On Aug 21, 2012, at 7:16 AM, Tiago Bortoletto Vaz <ti...@debian.org<mailto:ti...@debian.org>> wrote:
Hi,
On Mon, Aug 20, 2012 at 06:20:33PM -0400, Bryan Smart wrote:
Hi.
I'd love to hear about someone porting Pyo to the Raspberry Pie, but haven't heard anything yet. I hope to eventually bring my Pyo project to a portable device, and the Raspberry seemed like a great base for hobby-level embedded applications. The Raspberry is inexpensive and powerful, particularly given the small cost. I haven't started any work on a port, but have looked in to it at a high level. I'll share what I've learned. I hope that it will help you.
Pyo seems to be successful built in Debian for both armv6 (armel) and v7 (armhf):
Unfortunately the Debian hardfloat port doesn't run in Raspberry Pi because it
uses some v7 processor features not supported in v6. However, I noticed it has
been v6hf-compatible built by raspbian folks:
You guys lost me a little, my computer science knowledge isn't holding up ^^ I'll tinker with this as soon as I get the accessories (usb power cable, ethernet and mouse keyboard) and post back here for updates. I want to build a OSC controller with the pi like this http://madronalabs.com/DIY using some external DAC and ADC chips connected to the gpio (going to make a pyo object for this when I learn how to program them) then do the fft analysis stuff in pyo to get the usable control data and send it to my main computer via OSC. So should I use a debian distribution?
After reading this thread, I think this is the summary:
1. Pyo isn't yet running on the specific processor in the Raspberry (ARM11 family). Pyo runs on the older ARM processors, though, and some people are working on getting it to run on the newer ones. Unless I misunderstood, though, it isn't available yet.
2. For an ADC, all you need is any generic USB headset, sound card, microphone, etc that supports the generic USB audio class mode. Linux distributions have support for these built-in. If someone gets Pyo running on a Linux distribution that will run on the Raspberry, you'll just plug in one of the USB sound devices, and you'll be ready to go. Pyo can receive input from the device if Linux can recognize/use it, and Linux will recognize/use most of the generic USB audio devices.
Hope that helps.
Bryan
On Aug 22, 2012, at 3:27 PM, lucasparis <lucasparismu...@gmail.com<mailto:lucasparismu...@gmail.com>> wrote:
You guys lost me a little, my computer science knowledge isn't holding up ^^ I'll tinker with this as soon as I get the accessories (usb power cable, ethernet and mouse keyboard) and post back here for updates.
I want to build a OSC controller with the pi like this http://madronalabs.com/DIY using some external DAC and ADC chips connected to the gpio (going to make a pyo object for this when I learn how to program them) then do the fft analysis stuff in pyo to get the usable control data and send it to my main computer via OSC.
So should I use a debian distribution?
I have just run pyo on my raspberry pi with debian wheezy. It built out
of the box using the ubuntu 10.10 instructions on the installation
page. Unfortunately the audio output quality is not good (periodic breaks).
This happens even if I play a single sinewave so I don't think it is due
to CPU overload although the breakup is worse for more complex examples. It
is also worth mentioning that to get any output I
had to set the python game audio output option to force headphones. I am a
bit out of my depth here but if anyone has got any suggestions I will try
them out.
Paul.
On 22 August 2012 08:27, Bryan Smart <bryansm...@bryansmart.com> wrote:
> Maybe Olivier can comment about optimizations for SIMD. I don't know what
> is required of an implementation to take advantage of it. I'm pretty sure
> that good use of it goes well beyond simple automatic compiler
> optimizations, though.
> Bryan
> On Aug 21, 2012, at 7:16 AM, Tiago Bortoletto Vaz <ti...@debian.org>
> wrote:
> Hi,
> On Mon, Aug 20, 2012 at 06:20:33PM -0400, Bryan Smart wrote:
> Hi.
> I'd love to hear about someone porting Pyo to the Raspberry Pie, but
> haven't heard anything yet. I hope to eventually bring my Pyo project to a
> portable device, and the Raspberry seemed like a great base for hobby-level
> embedded applications. The Raspberry is inexpensive and powerful,
> particularly given the small cost. I haven't started any work on a port,
> but have looked in to it at a high level. I'll share what I've learned. I
> hope that it will help you.
> Pyo seems to be successful built in Debian for both armv6 (armel) and v7
> (armhf):
> Unfortunately the Debian hardfloat port doesn't run in Raspberry Pi
> because it
> uses some v7 processor features not supported in v6. However, I noticed it
> has
> been v6hf-compatible built by raspbian folks:
Yes nice I'm currently in class with olivier i'll take about it at the end of class, I also lent him a raspberry pi so he may be able to test it, I may also start experimenting with it next week.
Have you checked the cpu usage in the terminal with the command top ?
This did not report any underruns but I have periodic glitches
Running more complex examples results in CPU > 50 % and lots of underruns
which increase the X CPU usage as the terminal scolls.
I simple example just to test the portaudio would be useful.
best Paul.
On 6 September 2012 16:43, lucasparis <lucasparismu...@gmail.com> wrote:
> Yes nice I'm currently in class with olivier i'll take about it at the end
> of class, I also lent him a raspberry pi so he may be able to test it, I
> may also start experimenting with it next week.
> Have you checked the cpu usage in the terminal with the command top ?
Forcing the output to headphones shouldn't be a problem. You're probably using HDMI output to drive a display, and, without the manual adjustment, audio will be sent over HDMI, also.
Regarding the breaks in audio, how often do they happen? If the time between breaks is a second or less, then the glitch might be related to the buffer used by the sound device. Not sure if Pyo's buffer size control for the Server has any control over that, or just Pyo's internal mixing buffer.
Try using buffer_size=1024 or buffer_size=2048 when you create the Pyo Server. That is too large for normal operation, but might get rid of the breaks. It could also provide clues, if it works.
I'd also be interested to know what Top says regarding CPU load. The load could be abnormally high due to a processor limitation. For example, I don't think those ARM processors handle floating point calculations very well, or, at least, not like an X86 processor would. Remember we were talking about the ARM extensions for SIMD/vector processing? It may be that Pyo is performing mathematical operations with no native CPU support/must be emulated. My knowledge about the guts of ARM CPUs is extremely limited, but these are some of the pitfalls that can come up when porting code. We should be able to overcome them, if we can figure out what isn't working.
I'm a little out of date with my knowledge about Linux audio, also. Do you know if you're using ALSA directly, or are you going through JACK? Would be worth trying different APIs to see if there is any change.
Bryan
On Sep 6, 2012, at 10:50 AM, PJ leonard <pauljohnleon...@gmail.com<mailto:pauljohnleon...@gmail.com>> wrote:
Hi,
I have just run pyo on my raspberry pi with debian wheezy. It built out of the box using the ubuntu 10.10 instructions on the installation page. Unfortunately the audio output quality is not good (periodic breaks). This happens even if I play a single sinewave so I don't think it is due to CPU overload although the breakup is worse for more complex examples. It is also worth mentioning that to get any output I
had to set the python game audio output option to force headphones. I am a bit out of my depth here but if anyone has got any suggestions I will try them out.
Paul.
On 22 August 2012 08:27, Bryan Smart <bryansm...@bryansmart.com<mailto:bryansm...@bryansmart.com>> wrote:
That's great.
Maybe Olivier can comment about optimizations for SIMD. I don't know what is required of an implementation to take advantage of it. I'm pretty sure that good use of it goes well beyond simple automatic compiler optimizations, though.
Bryan
On Aug 21, 2012, at 7:16 AM, Tiago Bortoletto Vaz <ti...@debian.org<mailto:ti...@debian.org>> wrote:
Hi,
On Mon, Aug 20, 2012 at 06:20:33PM -0400, Bryan Smart wrote:
Hi.
I'd love to hear about someone porting Pyo to the Raspberry Pie, but haven't heard anything yet. I hope to eventually bring my Pyo project to a portable device, and the Raspberry seemed like a great base for hobby-level embedded applications. The Raspberry is inexpensive and powerful, particularly given the small cost. I haven't started any work on a port, but have looked in to it at a high level. I'll share what I've learned. I hope that it will help you.
Pyo seems to be successful built in Debian for both armv6 (armel) and v7 (armhf):
Unfortunately the Debian hardfloat port doesn't run in Raspberry Pi because it
uses some v7 processor features not supported in v6. However, I noticed it has
been v6hf-compatible built by raspbian folks:
On 6 September 2012 17:32, Bryan Smart <bryansm...@bryansmart.com> wrote:
> Forcing the output to headphones shouldn't be a problem. You're probably
> using HDMI output to drive a display, and, without the manual adjustment,
> audio will be sent over HDMI, also.
Stangely I have not heard any sound via the HDMI using pyo or python games
(I know this works for other things because I tried xbmc which was very
smooth).
> Regarding the breaks in audio, how often do they happen? If the time
> between breaks is a second or less, then the glitch might be related to the
> buffer used by the sound device. Not sure if Pyo's buffer size control for
> the Server has any control over that, or just Pyo's internal mixing buffer.
Breaks are about 0.5-1sec with some faster bursts.
> Try using buffer_size=1024 or buffer_size=2048 when you create the Pyo
> Server. That is too large for normal operation, but might get rid of the
> breaks. It could also provide clues, if it works.
I am pretty sure this buffer is only for pyo. I did try 2048 with no change.
> I'd also be interested to know what Top says regarding CPU load. The load
> could be abnormally high due to a processor limitation. For example, I
> don't think those ARM processors handle floating point calculations very
> well, or, at least, not like an X86 processor would. Remember we were
> talking about the ARM extensions for SIMD/vector processing? It may be that
> Pyo is performing mathematical operations with no native CPU support/must
> be emulated. My knowledge about the guts of ARM CPUs is extremely limited,
> but these are some of the pitfalls that can come up when porting code. We
> should be able to overcome them, if we can figure out what isn't working.
See my previous e-mail for CPU. I also tried installed the raspbian
package
apt-get install python-pyo
Does the above really remove all my manually installed pyo stuff ?
> I'm a little out of date with my knowledge about Linux audio, also. Do you
> know if you're using ALSA directly, or are you going through JACK? Would be
> worth trying different APIs to see if there is any change.
I have just done all the default things so I think that means portaudio
using using ALSA directly.
> On Sep 6, 2012, at 10:50 AM, PJ leonard <pauljohnleon...@gmail.com> wrote:
> Hi,
> I have just run pyo on my raspberry pi with debian wheezy. It built out
> of the box using the ubuntu 10.10 instructions on the installation
> page. Unfortunately the audio output quality is not good (periodic breaks).
> This happens even if I play a single sinewave so I don't think it is due
> to CPU overload although the breakup is worse for more complex examples. It
> is also worth mentioning that to get any output I
> had to set the python game audio output option to force headphones. I am a
> bit out of my depth here but if anyone has got any suggestions I will try
> them out.
> Paul.
> On 22 August 2012 08:27, Bryan Smart <bryansm...@bryansmart.com> wrote:
>> That's great.
>> Maybe Olivier can comment about optimizations for SIMD. I don't know what
>> is required of an implementation to take advantage of it. I'm pretty sure
>> that good use of it goes well beyond simple automatic compiler
>> optimizations, though.
>> Bryan
>> On Aug 21, 2012, at 7:16 AM, Tiago Bortoletto Vaz <ti...@debian.org>
>> wrote:
>> Hi,
>> On Mon, Aug 20, 2012 at 06:20:33PM -0400, Bryan Smart wrote:
>> Hi.
>> I'd love to hear about someone porting Pyo to the Raspberry Pie, but
>> haven't heard anything yet. I hope to eventually bring my Pyo project to a
>> portable device, and the Raspberry seemed like a great base for hobby-level
>> embedded applications. The Raspberry is inexpensive and powerful,
>> particularly given the small cost. I haven't started any work on a port,
>> but have looked in to it at a high level. I'll share what I've learned. I
>> hope that it will help you.
>> Pyo seems to be successful built in Debian for both armv6 (armel) and v7
>> (armhf):
>> Unfortunately the Debian hardfloat port doesn't run in Raspberry Pi
>> because it
>> uses some v7 processor features not supported in v6. However, I noticed
>> it has
>> been v6hf-compatible built by raspbian folks:
Currently it works but is glitchy. I have had a little look at the code.
When I get time I will try and increase the portaudio output latency.
I think this can be done by modifying servermodule.c in the routine
Server_pa_init. I think Olivier is setting the latency to
> Currently it works but is glitchy. I have had a little look at the code.
> When I get time I will try and increase the portaudio output latency.
> I think this can be done by modifying servermodule.c in the routine
> Server_pa_init. I think Olivier is setting the latency to
I just tried to get the simple sinewave example (part of portaudio distribution) to play using portaudio. Using defaultLowOutputlatency is very bad defaultHighOutputLatency is better but still not good. I tried defaultHighOutputLatency*2 but this did not improve things.
Anything else I could try to get portaudio working on the PI? I have not tried a USB card yet.
On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
> Hi,
> I didn't have time to try... It will not be possible for me before January > (and maybe lucas will need his raspberry pi before that!).
> Is someone tried to use Jack instead of Portaudio on it? I think it should > be more efficient...
> Olivier
> 2012/11/18 PJ leonard <pauljoh...@gmail.com <javascript:>>
>> Hi Nat,
>> Currently it works but is glitchy. I have had a little look at the code. >> When I get time I will try and increase the portaudio output latency. >> I think this can be done by modifying servermodule.c in the routine >> Server_pa_init. I think Olivier is setting the latency to
> I just tried to get the simple sinewave example (part of portaudio
> distribution) to play using portaudio.
> Using defaultLowOutputlatency is very bad defaultHighOutputLatency is
> better but still not good. I tried
> defaultHighOutputLatency*2 but this did not improve things.
> Anything else I could try to get portaudio working on the PI? I have not
> tried a USB card yet.
>>> Currently it works but is glitchy. I have had a little look at the code.
>>> When I get time I will try and increase the portaudio output latency.
>>> I think this can be done by modifying servermodule.c in the routine
>>> Server_pa_init. I think Olivier is setting the latency to
> I'm pretty sure Jack is the best solution. It should be straightforward to
> compile pyo with jack on the PI...
> Olivier
> 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>> Hi,
>> I just tried to get the simple sinewave example (part of portaudio
>> distribution) to play using portaudio.
>> Using defaultLowOutputlatency is very bad defaultHighOutputLatency is
>> better but still not good. I tried
>> defaultHighOutputLatency*2 but this did not improve things.
>> Anything else I could try to get portaudio working on the PI? I have
not
>> tried a USB card yet.
>>>> Currently it works but is glitchy. I have had a little look at the
code.
>>>> When I get time I will try and increase the portaudio output latency.
>>>> I think this can be done by modifying servermodule.c in the routine
>>>> Server_pa_init. I think Olivier is setting the latency to
> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com> wrote:
> > I'm pretty sure Jack is the best solution. It should be straightforward
> to
> > compile pyo with jack on the PI...
> > Olivier
> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
> >> Hi,
> >> I just tried to get the simple sinewave example (part of portaudio
> >> distribution) to play using portaudio.
> >> Using defaultLowOutputlatency is very bad defaultHighOutputLatency is
> >> better but still not good. I tried
> >> defaultHighOutputLatency*2 but this did not improve things.
> >> Anything else I could try to get portaudio working on the PI? I have
> not
> >> tried a USB card yet.
> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
> >>> Hi,
> >>> I didn't have time to try... It will not be possible for me before
> >>> January (and maybe lucas will need his raspberry pi before that!).
> >>> Is someone tried to use Jack instead of Portaudio on it? I think it
> >>> should be more efficient...
> >>> Olivier
> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
> >>>> Hi Nat,
> >>>> Currently it works but is glitchy. I have had a little look at the
> code.
> >>>> When I get time I will try and increase the portaudio output latency.
> >>>> I think this can be done by modifying servermodule.c in the routine
> >>>> Server_pa_init. I think Olivier is setting the latency to
OK I have installed jack2 but it removed portaudio.
If I try to reinstall portaudio19-dev it tries to get rid of jack2.
pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
mtools
Use 'apt-get autoremove' to remove it.
The following extra packages will be installed:
jackd1 libjack-dev libjack0
Suggested packages:
jack-tools meterbridge
The following packages will be REMOVED:
jackd jackd2 libjack-jackd2-0 qjackctl
The following NEW packages will be installed:
jackd1 libjack-dev libjack0 portaudio19-dev
0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
Need to get 305 kB/839 kB of archives.
After this operation, 1,275 kB disk space will be freed.
Do you want to continue [Y/n]? NO I DON'T
I can install libportaudio-dev but then I can not compile pyo.
.... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
-Wno-strict-prototypes -O3
src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
src/engine/pyomodule.c:65:9: warning: implicit declaration of function
‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
Is there a flag to switch off the portaudio dependencies in pyo ?
Suggestions ?
On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com> wrote:
>> > I'm pretty sure Jack is the best solution. It should be straightforward
>> to
>> > compile pyo with jack on the PI...
>> > Olivier
>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>> >> Hi,
>> >> I just tried to get the simple sinewave example (part of portaudio
>> >> distribution) to play using portaudio.
>> >> Using defaultLowOutputlatency is very bad defaultHighOutputLatency is
>> >> better but still not good. I tried
>> >> defaultHighOutputLatency*2 but this did not improve things.
>> >> Anything else I could try to get portaudio working on the PI? I have
>> not
>> >> tried a USB card yet.
>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
>> >>> Hi,
>> >>> I didn't have time to try... It will not be possible for me before
>> >>> January (and maybe lucas will need his raspberry pi before that!).
>> >>> Is someone tried to use Jack instead of Portaudio on it? I think it
>> >>> should be more efficient...
>> >>> Olivier
>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>> >>>> Hi Nat,
>> >>>> Currently it works but is glitchy. I have had a little look at the
>> code.
>> >>>> When I get time I will try and increase the portaudio output latency.
>> >>>> I think this can be done by modifying servermodule.c in the routine
>> >>>> Server_pa_init. I think Olivier is setting the latency to
portaudio19-dev depends on libjack-dev which indirectly suggest
installation of jackd1. By installing libkjack-jackd2-dev before installing
portaudio19-dev this dependency will already be met, and you can install it
without having to downgrade jackd.
> OK I have installed jack2 but it removed portaudio.
> If I try to reinstall portaudio19-dev it tries to get rid of jack2.
> pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> The following package was automatically installed and is no longer
> required:
> mtools
> Use 'apt-get autoremove' to remove it.
> The following extra packages will be installed:
> jackd1 libjack-dev libjack0
> Suggested packages:
> jack-tools meterbridge
> The following packages will be REMOVED:
> jackd jackd2 libjack-jackd2-0 qjackctl
> The following NEW packages will be installed:
> jackd1 libjack-dev libjack0 portaudio19-dev
> 0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
> Need to get 305 kB/839 kB of archives.
> After this operation, 1,275 kB disk space will be freed.
> Do you want to continue [Y/n]? NO I DON'T
> I can install libportaudio-dev but then I can not compile pyo.
> .... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
> -Wno-strict-prototypes -O3
> src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
> src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
> src/engine/pyomodule.c:65:9: warning: implicit declaration of function
> ‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
> src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
> Is there a flag to switch off the portaudio dependencies in pyo ?
> Suggestions ?
> On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>> Yes, I already used pyo with jack2.
>> Olivier
>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>> I keep getting jack2 replacing jack1 when I install packages like
>>> qjackctrl.
>>> Does pyo work with jack2 ? This seems to imply it might . . .
>>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com> wrote:
>>> > I'm pretty sure Jack is the best solution. It should be
>>> straightforward to
>>> > compile pyo with jack on the PI...
>>> > Olivier
>>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>>> >> Hi,
>>> >> I just tried to get the simple sinewave example (part of portaudio
>>> >> distribution) to play using portaudio.
>>> >> Using defaultLowOutputlatency is very bad defaultHighOutputLatency is
>>> >> better but still not good. I tried
>>> >> defaultHighOutputLatency*2 but this did not improve things.
>>> >> Anything else I could try to get portaudio working on the PI? I
>>> have not
>>> >> tried a USB card yet.
>>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
>>> >>> Hi,
>>> >>> I didn't have time to try... It will not be possible for me before
>>> >>> January (and maybe lucas will need his raspberry pi before that!).
>>> >>> Is someone tried to use Jack instead of Portaudio on it? I think it
>>> >>> should be more efficient...
>>> >>> Olivier
>>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>>> >>>> Hi Nat,
>>> >>>> Currently it works but is glitchy. I have had a little look at the
>>> code.
>>> >>>> When I get time I will try and increase the portaudio output
>>> latency.
>>> >>>> I think this can be done by modifying servermodule.c in the routine
>>> >>>> Server_pa_init. I think Olivier is setting the latency to
> portaudio19 can be installed with jack2, but there is a specific order
> with which dependencies must be installed. I had this working some time
> ago...
> portaudio19-dev depends on libjack-dev which indirectly suggest
> installation of jackd1. By installing libkjack-jackd2-dev before installing
> portaudio19-dev this dependency will already be met, and you can install it
> without having to downgrade jackd.
> Olivier
> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>> OK I have installed jack2 but it removed portaudio.
>> If I try to reinstall portaudio19-dev it tries to get rid of jack2.
>> pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
>> Reading package lists... Done
>> Building dependency tree
>> Reading state information... Done
>> The following package was automatically installed and is no longer
>> required:
>> mtools
>> Use 'apt-get autoremove' to remove it.
>> The following extra packages will be installed:
>> jackd1 libjack-dev libjack0
>> Suggested packages:
>> jack-tools meterbridge
>> The following packages will be REMOVED:
>> jackd jackd2 libjack-jackd2-0 qjackctl
>> The following NEW packages will be installed:
>> jackd1 libjack-dev libjack0 portaudio19-dev
>> 0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
>> Need to get 305 kB/839 kB of archives.
>> After this operation, 1,275 kB disk space will be freed.
>> Do you want to continue [Y/n]? NO I DON'T
>> I can install libportaudio-dev but then I can not compile pyo.
>> .... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
>> -Wno-strict-prototypes -O3
>> src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
>> src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
>> src/engine/pyomodule.c:65:9: warning: implicit declaration of function
>> ‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
>> src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
>> Is there a flag to switch off the portaudio dependencies in pyo ?
>> Suggestions ?
>> On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>>> Yes, I already used pyo with jack2.
>>> Olivier
>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>> I keep getting jack2 replacing jack1 when I install packages like
>>>> qjackctrl.
>>>> Does pyo work with jack2 ? This seems to imply it might . . .
>>>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com> wrote:
>>>> > I'm pretty sure Jack is the best solution. It should be
>>>> straightforward to
>>>> > compile pyo with jack on the PI...
>>>> > Olivier
>>>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>>>> >> Hi,
>>>> >> I just tried to get the simple sinewave example (part of portaudio
>>>> >> distribution) to play using portaudio.
>>>> >> Using defaultLowOutputlatency is very bad defaultHighOutputLatency
>>>> is
>>>> >> better but still not good. I tried
>>>> >> defaultHighOutputLatency*2 but this did not improve things.
>>>> >> Anything else I could try to get portaudio working on the PI? I
>>>> have not
>>>> >> tried a USB card yet.
>>>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
>>>> >>> Hi,
>>>> >>> I didn't have time to try... It will not be possible for me before
>>>> >>> January (and maybe lucas will need his raspberry pi before that!).
>>>> >>> Is someone tried to use Jack instead of Portaudio on it? I think it
>>>> >>> should be more efficient...
>>>> >>> Olivier
>>>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>>>> >>>> Hi Nat,
>>>> >>>> Currently it works but is glitchy. I have had a little look at the
>>>> code.
>>>> >>>> When I get time I will try and increase the portaudio output
>>>> latency.
>>>> >>>> I think this can be done by modifying servermodule.c in the routine
>>>> >>>> Server_pa_init. I think Olivier is setting the latency to
Yes, pyo should be able to work like this. Just be sure that pyo found Jack
headers at the compilation. You'll probably have to modify the setup.py
file to add the path of Jack include folder...
> Should pyo work like this? e.g. will I be able to make the connections.
> Paul.
> On 5 December 2012 23:38, Olivier Bélanger <belan...@gmail.com> wrote:
>> portaudio19 can be installed with jack2, but there is a specific order
>> with which dependencies must be installed. I had this working some time
>> ago...
>> portaudio19-dev depends on libjack-dev which indirectly suggest
>> installation of jackd1. By installing libkjack-jackd2-dev before installing
>> portaudio19-dev this dependency will already be met, and you can install it
>> without having to downgrade jackd.
>> Olivier
>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>> OK I have installed jack2 but it removed portaudio.
>>> If I try to reinstall portaudio19-dev it tries to get rid of jack2.
>>> pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
>>> Reading package lists... Done
>>> Building dependency tree
>>> Reading state information... Done
>>> The following package was automatically installed and is no longer
>>> required:
>>> mtools
>>> Use 'apt-get autoremove' to remove it.
>>> The following extra packages will be installed:
>>> jackd1 libjack-dev libjack0
>>> Suggested packages:
>>> jack-tools meterbridge
>>> The following packages will be REMOVED:
>>> jackd jackd2 libjack-jackd2-0 qjackctl
>>> The following NEW packages will be installed:
>>> jackd1 libjack-dev libjack0 portaudio19-dev
>>> 0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
>>> Need to get 305 kB/839 kB of archives.
>>> After this operation, 1,275 kB disk space will be freed.
>>> Do you want to continue [Y/n]? NO I DON'T
>>> I can install libportaudio-dev but then I can not compile pyo.
>>> .... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
>>> -Wno-strict-prototypes -O3
>>> src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
>>> src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
>>> src/engine/pyomodule.c:65:9: warning: implicit declaration of function
>>> ‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
>>> src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
>>> Is there a flag to switch off the portaudio dependencies in pyo ?
>>> Suggestions ?
>>> On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>>>> Yes, I already used pyo with jack2.
>>>> Olivier
>>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>>> I keep getting jack2 replacing jack1 when I install packages like
>>>>> qjackctrl.
>>>>> Does pyo work with jack2 ? This seems to imply it might . . .
>>>>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com> wrote:
>>>>> > I'm pretty sure Jack is the best solution. It should be
>>>>> straightforward to
>>>>> > compile pyo with jack on the PI...
>>>>> > Olivier
>>>>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>>>>> >> Hi,
>>>>> >> I just tried to get the simple sinewave example (part of portaudio
>>>>> >> distribution) to play using portaudio.
>>>>> >> Using defaultLowOutputlatency is very bad defaultHighOutputLatency
>>>>> is
>>>>> >> better but still not good. I tried
>>>>> >> defaultHighOutputLatency*2 but this did not improve things.
>>>>> >> Anything else I could try to get portaudio working on the PI? I
>>>>> have not
>>>>> >> tried a USB card yet.
>>>>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
>>>>> >>> Hi,
>>>>> >>> I didn't have time to try... It will not be possible for me before
>>>>> >>> January (and maybe lucas will need his raspberry pi before that!).
>>>>> >>> Is someone tried to use Jack instead of Portaudio on it? I think it
>>>>> >>> should be more efficient...
>>>>> >>> Olivier
>>>>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>>>>> >>>> Hi Nat,
>>>>> >>>> Currently it works but is glitchy. I have had a little look at
>>>>> the code.
>>>>> >>>> When I get time I will try and increase the portaudio output
>>>>> latency.
>>>>> >>>> I think this can be done by modifying servermodule.c in the
>>>>> routine
>>>>> >>>> Server_pa_init. I think Olivier is setting the latency to
pyo does not connect to jack it gives an error messages
when I boot the server (some about incorrect protocol).
SO do I need to build pyo with the jack1.9.8?
I am havingto fight to get the prerequisites in place because of the
mixture of manual installations and apt-gets. Looks like I need the broken
jackd installed to be able to install portaudio.
I guess I need to know how to tell pyo to link with the 1.9.8 libraries ?
On 6 December 2012 18:00, Olivier Bélanger <belan...@gmail.com> wrote:
> Yes, pyo should be able to work like this. Just be sure that pyo found
> Jack headers at the compilation. You'll probably have to modify the
> setup.py file to add the path of Jack include folder...
> The default jackname for the pyo server is "pyo".
> Olivier
> 2012/12/6 PJ leonard <pauljohnleon...@gmail.com>
>> OK I have discovered that the latest versions of jackd don't work.
>> Should pyo work like this? e.g. will I be able to make the connections.
>> Paul.
>> On 5 December 2012 23:38, Olivier Bélanger <belan...@gmail.com> wrote:
>>> portaudio19 can be installed with jack2, but there is a specific order
>>> with which dependencies must be installed. I had this working some time
>>> ago...
>>> portaudio19-dev depends on libjack-dev which indirectly suggest
>>> installation of jackd1. By installing libkjack-jackd2-dev before installing
>>> portaudio19-dev this dependency will already be met, and you can install it
>>> without having to downgrade jackd.
>>> Olivier
>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>> OK I have installed jack2 but it removed portaudio.
>>>> If I try to reinstall portaudio19-dev it tries to get rid of jack2.
>>>> pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
>>>> Reading package lists... Done
>>>> Building dependency tree
>>>> Reading state information... Done
>>>> The following package was automatically installed and is no longer
>>>> required:
>>>> mtools
>>>> Use 'apt-get autoremove' to remove it.
>>>> The following extra packages will be installed:
>>>> jackd1 libjack-dev libjack0
>>>> Suggested packages:
>>>> jack-tools meterbridge
>>>> The following packages will be REMOVED:
>>>> jackd jackd2 libjack-jackd2-0 qjackctl
>>>> The following NEW packages will be installed:
>>>> jackd1 libjack-dev libjack0 portaudio19-dev
>>>> 0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
>>>> Need to get 305 kB/839 kB of archives.
>>>> After this operation, 1,275 kB disk space will be freed.
>>>> Do you want to continue [Y/n]? NO I DON'T
>>>> I can install libportaudio-dev but then I can not compile pyo.
>>>> .... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
>>>> -Wno-strict-prototypes -O3
>>>> src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
>>>> src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
>>>> src/engine/pyomodule.c:65:9: warning: implicit declaration of function
>>>> ‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
>>>> src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
>>>> Is there a flag to switch off the portaudio dependencies in pyo ?
>>>> Suggestions ?
>>>> On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>>>>> Yes, I already used pyo with jack2.
>>>>> Olivier
>>>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>>>> I keep getting jack2 replacing jack1 when I install packages like
>>>>>> qjackctrl.
>>>>>> Does pyo work with jack2 ? This seems to imply it might . . .
>>>>>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com>
>>>>>> wrote:
>>>>>> > I'm pretty sure Jack is the best solution. It should be
>>>>>> straightforward to
>>>>>> > compile pyo with jack on the PI...
>>>>>> > Olivier
>>>>>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>>>>>> >> Hi,
>>>>>> >> I just tried to get the simple sinewave example (part of portaudio
>>>>>> >> distribution) to play using portaudio.
>>>>>> >> Using defaultLowOutputlatency is very bad
>>>>>> defaultHighOutputLatency is
>>>>>> >> better but still not good. I tried
>>>>>> >> defaultHighOutputLatency*2 but this did not improve things.
>>>>>> >> Anything else I could try to get portaudio working on the PI? I
>>>>>> have not
>>>>>> >> tried a USB card yet.
>>>>>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.com wrote:
>>>>>> >>> Hi,
>>>>>> >>> I didn't have time to try... It will not be possible for me before
>>>>>> >>> January (and maybe lucas will need his raspberry pi before that!).
>>>>>> >>> Is someone tried to use Jack instead of Portaudio on it? I think
>>>>>> it
>>>>>> >>> should be more efficient...
>>>>>> >>> Olivier
>>>>>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>>>>>> >>>> Hi Nat,
>>>>>> >>>> Currently it works but is glitchy. I have had a little look at
>>>>>> the code.
>>>>>> >>>> When I get time I will try and increase the portaudio output
>>>>>> latency.
>>>>>> >>>> I think this can be done by modifying servermodule.c in the
>>>>>> routine
>>>>>> >>>> Server_pa_init. I think Olivier is setting the latency to
Seem to be nearly there but l am still having trouble connecting.
If I try to connect (after server.boot()) I get
$ jack_connect pyo:output_2 alsa_out:playback_2
Cannot connect ports owned by inactive clients: "pyo" is not active
cannot connect client, already connected?
JackEngine::XRun: client = pyo was not run: state = 2
JackAudioDriver::ProcessGraphAsyncMaster: Process error
JackEngine::XRun: client = pyo was not run: state = 1
JackAudioDriver::ProcessGraphAsyncMaster: Process error
> pyo built with jack1.9.9
> but the jackd is 1.9.8.
> pyo does not connect to jack it gives an error messages
> when I boot the server (some about incorrect protocol).
> SO do I need to build pyo with the jack1.9.8?
> I am havingto fight to get the prerequisites in place because of the
> mixture of manual installations and apt-gets. Looks like I need the broken
> jackd installed to be able to install portaudio.
> I guess I need to know how to tell pyo to link with the 1.9.8 libraries ?
> On 6 December 2012 18:00, Olivier Bélanger <belan...@gmail.com> wrote:
>> Yes, pyo should be able to work like this. Just be sure that pyo found
>> Jack headers at the compilation. You'll probably have to modify the
>> setup.py file to add the path of Jack include folder...
>> The default jackname for the pyo server is "pyo".
>> Olivier
>> 2012/12/6 PJ leonard <pauljohnleon...@gmail.com>
>>> OK I have discovered that the latest versions of jackd don't work.
>>> Should pyo work like this? e.g. will I be able to make the connections.
>>> Paul.
>>> On 5 December 2012 23:38, Olivier Bélanger <belan...@gmail.com> wrote:
>>>> portaudio19 can be installed with jack2, but there is a specific order
>>>> with which dependencies must be installed. I had this working some time
>>>> ago...
>>>> portaudio19-dev depends on libjack-dev which indirectly suggest
>>>> installation of jackd1. By installing libkjack-jackd2-dev before installing
>>>> portaudio19-dev this dependency will already be met, and you can install it
>>>> without having to downgrade jackd.
>>>> Olivier
>>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>>> OK I have installed jack2 but it removed portaudio.
>>>>> If I try to reinstall portaudio19-dev it tries to get rid of jack2.
>>>>> pi@raspberrypi ~ $ sudo apt-get install portaudio19-dev
>>>>> Reading package lists... Done
>>>>> Building dependency tree
>>>>> Reading state information... Done
>>>>> The following package was automatically installed and is no longer
>>>>> required:
>>>>> mtools
>>>>> Use 'apt-get autoremove' to remove it.
>>>>> The following extra packages will be installed:
>>>>> jackd1 libjack-dev libjack0
>>>>> Suggested packages:
>>>>> jack-tools meterbridge
>>>>> The following packages will be REMOVED:
>>>>> jackd jackd2 libjack-jackd2-0 qjackctl
>>>>> The following NEW packages will be installed:
>>>>> jackd1 libjack-dev libjack0 portaudio19-dev
>>>>> 0 upgraded, 4 newly installed, 4 to remove and 21 not upgraded.
>>>>> Need to get 305 kB/839 kB of archives.
>>>>> After this operation, 1,275 kB disk space will be freed.
>>>>> Do you want to continue [Y/n]? NO I DON'T
>>>>> I can install libportaudio-dev but then I can not compile pyo.
>>>>> .... ule.c -o build/temp.linux-armv6l-2.7/src/engine/pyomodule.o
>>>>> -Wno-strict-prototypes -O3
>>>>> src/engine/pyomodule.c: In function ‘portaudio_count_host_apis’:
>>>>> src/engine/pyomodule.c:57:5: error: unknown type name ‘PaHostApiIndex’
>>>>> src/engine/pyomodule.c:65:9: warning: implicit declaration of function
>>>>> ‘Pa_GetHostApiCount’ [-Wimplicit-function-declaration]
>>>>> src/engine/pyomodule.c: In function ‘portaudio_list_host_apis’:
>>>>> Is there a flag to switch off the portaudio dependencies in pyo ?
>>>>> Suggestions ?
>>>>> On 5 December 2012 22:13, Olivier Bélanger <belan...@gmail.com> wrote:
>>>>>> Yes, I already used pyo with jack2.
>>>>>> Olivier
>>>>>> 2012/12/5 PJ leonard <pauljohnleon...@gmail.com>
>>>>>>> I keep getting jack2 replacing jack1 when I install packages like
>>>>>>> qjackctrl.
>>>>>>> Does pyo work with jack2 ? This seems to imply it might . . .
>>>>>>> On 5 December 2012 14:29, Olivier Bélanger <belan...@gmail.com>
>>>>>>> wrote:
>>>>>>> > I'm pretty sure Jack is the best solution. It should be
>>>>>>> straightforward to
>>>>>>> > compile pyo with jack on the PI...
>>>>>>> > Olivier
>>>>>>> > 2012/12/5 paul leonard <pauljohnleon...@gmail.com>
>>>>>>> >> Hi,
>>>>>>> >> I just tried to get the simple sinewave example (part of
>>>>>>> portaudio
>>>>>>> >> distribution) to play using portaudio.
>>>>>>> >> Using defaultLowOutputlatency is very bad
>>>>>>> defaultHighOutputLatency is
>>>>>>> >> better but still not good. I tried
>>>>>>> >> defaultHighOutputLatency*2 but this did not improve things.
>>>>>>> >> Anything else I could try to get portaudio working on the PI? I
>>>>>>> have not
>>>>>>> >> tried a USB card yet.
>>>>>>> >> On Sunday, 18 November 2012 23:24:04 UTC, bela...@gmail.comwrote:
>>>>>>> >>> Hi,
>>>>>>> >>> I didn't have time to try... It will not be possible for me
>>>>>>> before
>>>>>>> >>> January (and maybe lucas will need his raspberry pi before
>>>>>>> that!).
>>>>>>> >>> Is someone tried to use Jack instead of Portaudio on it? I think
>>>>>>> it
>>>>>>> >>> should be more efficient...
>>>>>>> >>> Olivier
>>>>>>> >>> 2012/11/18 PJ leonard <pauljoh...@gmail.com>
>>>>>>> >>>> Hi Nat,
>>>>>>> >>>> Currently it works but is glitchy. I have had a little look at
>>>>>>> the code.
>>>>>>> >>>> When I get time I will try and increase the portaudio output
>>>>>>> latency.
>>>>>>> >>>> I think this can be done by modifying servermodule.c in the
>>>>>>> routine
>>>>>>> >>>> Server_pa_init. I think Olivier is setting the latency to