ChucK on a Beaglebone Black
Hi, I managed to compile chuck on a beaglebone black (using Gentoo). Most of the example files play well, but there are some files, which produce a somehow interrupted sound. If this would be due to too less processing power of the CPU (ARMv7 Processor rev 2 (v7l) at 1GHz) -- how can I verify it? What else could produce this problem? Best regards, mcc
Hey, very cool! I have a Beaglebone Black sitting on my desk still in
the box for just this purpose.
There are a lot of things that might effect audio performance: what
kernel are you using? what audio card? what driver? is chuck
compiled for jack or alsa? what are your jackd settings? what are
your alsa settings in .asoundrc? etc.
I am planning to use mine with a USB audio card but wasn't sure which
linux distro to start with. I assume chuck is not available for
Angstrom?
michael
On Mon, Sep 30, 2013 at 11:44 PM,
Hi,
I managed to compile chuck on a beaglebone black (using Gentoo).
Most of the example files play well, but there are some files, which produce a somehow interrupted sound.
If this would be due to too less processing power of the CPU (ARMv7 Processor rev 2 (v7l) at 1GHz) -- how can I verify it?
What else could produce this problem?
Best regards, mcc
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Hi Michael,
what I will write here now is my personal opinion and based on my
personal experience and it will definitely not match the opinion and
or experience of others in any case... ;)
Angstrom is good for starting BBW and BBB.
I also started with Angstrom previously on my BBW but continously
updateing this distro screwed up the whole thing after a while.
You will find similiar posting on the beagleboard mailing list from
time to time.
Since I made good experience with Gentoo on my desktop PC I tried that
on my BBW and it works clean and consistantly...until I tried to
cross-compile the applications on my desktop PC. May be some leve
eight failures, which normally are located in front of monitors and
keyboards ;) some header settings from my PC were incorperated into
the BBW Linux and KABOOM!...64bit is a little different from 32bit...
As soon as I have confirmed that my new BBB is ok, I quit Angstrom
and the eMMC and installed Gentoo on a SD-card and used that instead.
I am really happy with that.
But be warned! :)
Gentoo is source-based. Means: Everything is compiled from ground up
on the BBB. THIS TAKES TIME! Compiling a kernel natively on the BBB
takes about eight houres. On the other side: The BBB consumes about
5W. Start the compile task before going to bed and the next morning
will start with a new kernel. ;)
The advantage of Gentoo is, that you will only compile applications,
you will want for your projects. Nothing else will bloat your Linux
system on the BBB -- something which is important especially on
embedded systems due to space limitations. Gentoo is very flexible,
too.
The precompiled rootfs (link to it) for Gentoo and further
instructions you will find here:
http://dev.gentoo.org/~armin76/arm/beagleboneblack/install.xml
The Gentoo documentation is a good source of information, too.
The kernel is the only thing which I still compile on my PC. At this
place a BIG THANK YOU will go to Robert Nelson, which sets up a really
easy and flexible kernel-building-suit for the BBB and BBW.
All you need kernelwise you will find here:
http://eewiki.net/display/linuxonarm/BeagleBone
He also gives instructions how to build "Das U-Boot", the bootloader.
This way (Gentoo+Robert Nelsons kernel+U-Boot) no part of the Linux
system will be out of your control. You will be able to modify
anything.
And: Since Gentoo is source based, the complete gcc-suite is already
there -- natively on your BBB.
You may need to dig a liitle deeper into the docs and manuals for
doing so, though. But, hey: UNIX is not Windows.
The kernel I am using is Robert Nelsons kernel version 3.8.13.
I am using the LCD7 (a2) cape and the AUDIO cape (A1) together with
my BBB, and it needs a little hacking the device tree and the kernel
sources to let play them all together. You will need to disable the
HDMI and the eMMC to be able to use this combo.
Chuck is compiled with alsa support. There is currently no X11
running. There is no .asoundrc.
Angstrom has a limited support of applications. Since it is binary
based, you will be out of luck, if the application you want is not
included.
Gentoo includes ChucK in its emerge/ebuild system.
If you need help to hack the kernel source and the devicetree to let
the AUDIO cape work for your BBB let me know. But I will take no
responsibility if it will not work, since my modifications are
only tested for a specific setup with specific versions of the board:
BB-BONE-AUDI-01 (Audio cape)
Beaglebone black A5C
BB-BONE-LCD7-01 (LCD cape)
If you dont want to use the LCD7 cape it is no problem to modify
the hack to only use the Audio Cape...
Best regards,
mcc
Michael Heuer
Hey, very cool! I have a Beaglebone Black sitting on my desk still in the box for just this purpose.
There are a lot of things that might effect audio performance: what kernel are you using? what audio card? what driver? is chuck compiled for jack or alsa? what are your jackd settings? what are your alsa settings in .asoundrc? etc.
I am planning to use mine with a USB audio card but wasn't sure which linux distro to start with. I assume chuck is not available for Angstrom?
michael
On Mon, Sep 30, 2013 at 11:44 PM,
wrote: Hi,
I managed to compile chuck on a beaglebone black (using Gentoo).
Most of the example files play well, but there are some files, which produce a somehow interrupted sound.
If this would be due to too less processing power of the CPU (ARMv7 Processor rev 2 (v7l) at 1GHz) -- how can I verify it?
What else could produce this problem?
Best regards, mcc
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Hello,
Thank you for the advice.
I have maintained gentoo-based systems in the past but gave up when
they broke udev once too many times. Looks like for crosscompiling
I'll need to set up two of them. :)
michael
On Tue, Oct 1, 2013 at 12:52 AM,
Hi Michael,
what I will write here now is my personal opinion and based on my personal experience and it will definitely not match the opinion and or experience of others in any case... ;)
Angstrom is good for starting BBW and BBB. I also started with Angstrom previously on my BBW but continously updateing this distro screwed up the whole thing after a while. You will find similiar posting on the beagleboard mailing list from time to time.
Since I made good experience with Gentoo on my desktop PC I tried that on my BBW and it works clean and consistantly...until I tried to cross-compile the applications on my desktop PC. May be some leve eight failures, which normally are located in front of monitors and keyboards ;) some header settings from my PC were incorperated into the BBW Linux and KABOOM!...64bit is a little different from 32bit...
As soon as I have confirmed that my new BBB is ok, I quit Angstrom and the eMMC and installed Gentoo on a SD-card and used that instead. I am really happy with that.
But be warned! :) Gentoo is source-based. Means: Everything is compiled from ground up on the BBB. THIS TAKES TIME! Compiling a kernel natively on the BBB takes about eight houres. On the other side: The BBB consumes about 5W. Start the compile task before going to bed and the next morning will start with a new kernel. ;)
The advantage of Gentoo is, that you will only compile applications, you will want for your projects. Nothing else will bloat your Linux system on the BBB -- something which is important especially on embedded systems due to space limitations. Gentoo is very flexible, too. The precompiled rootfs (link to it) for Gentoo and further instructions you will find here: http://dev.gentoo.org/~armin76/arm/beagleboneblack/install.xml The Gentoo documentation is a good source of information, too.
The kernel is the only thing which I still compile on my PC. At this place a BIG THANK YOU will go to Robert Nelson, which sets up a really easy and flexible kernel-building-suit for the BBB and BBW. All you need kernelwise you will find here: http://eewiki.net/display/linuxonarm/BeagleBone
He also gives instructions how to build "Das U-Boot", the bootloader. This way (Gentoo+Robert Nelsons kernel+U-Boot) no part of the Linux system will be out of your control. You will be able to modify anything. And: Since Gentoo is source based, the complete gcc-suite is already there -- natively on your BBB.
You may need to dig a liitle deeper into the docs and manuals for doing so, though. But, hey: UNIX is not Windows.
The kernel I am using is Robert Nelsons kernel version 3.8.13. I am using the LCD7 (a2) cape and the AUDIO cape (A1) together with my BBB, and it needs a little hacking the device tree and the kernel sources to let play them all together. You will need to disable the HDMI and the eMMC to be able to use this combo.
Chuck is compiled with alsa support. There is currently no X11 running. There is no .asoundrc.
Angstrom has a limited support of applications. Since it is binary based, you will be out of luck, if the application you want is not included.
Gentoo includes ChucK in its emerge/ebuild system.
If you need help to hack the kernel source and the devicetree to let the AUDIO cape work for your BBB let me know. But I will take no responsibility if it will not work, since my modifications are only tested for a specific setup with specific versions of the board: BB-BONE-AUDI-01 (Audio cape) Beaglebone black A5C BB-BONE-LCD7-01 (LCD cape)
If you dont want to use the LCD7 cape it is no problem to modify the hack to only use the Audio Cape...
Best regards, mcc
Michael Heuer
[13-10-01 07:00]: Hey, very cool! I have a Beaglebone Black sitting on my desk still in the box for just this purpose.
There are a lot of things that might effect audio performance: what kernel are you using? what audio card? what driver? is chuck compiled for jack or alsa? what are your jackd settings? what are your alsa settings in .asoundrc? etc.
I am planning to use mine with a USB audio card but wasn't sure which linux distro to start with. I assume chuck is not available for Angstrom?
michael
On Mon, Sep 30, 2013 at 11:44 PM,
wrote: Hi,
I managed to compile chuck on a beaglebone black (using Gentoo).
Most of the example files play well, but there are some files, which produce a somehow interrupted sound.
If this would be due to too less processing power of the CPU (ARMv7 Processor rev 2 (v7l) at 1GHz) -- how can I verify it?
What else could produce this problem?
Best regards, mcc
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Hello,
firstly, at least as important as the clock speed of your CPU for
audio-processing are its floating point capabilities.
ChucK like most audio-applications use floating point numbers to
represent audio samples and manipulate them with floating point
operations
You should check whether your ARM supports hard-floats and whether you
compiled ChucK with hard-floats and whether you have turned on all
possible compiler optimizations.
I also ported ChucK to my Ben Nanonote pocket computer at one point.
But it has a MIPS CPU without FPU, so it was compiled with
software-floats -- it couldn't even handle the most simple ChucK
patches.
Secondly, as the ARM v7 has FPU, it could well be that the CPU is
simply too slow for larger ChucK patches. I experienced that ChucK was
relatively slow on a 2Ghz dual-core system I was using; not to mention
my 1Ghz single-core Intel celeron workstation.
Best regards,
Robin
2013/10/1
Hi,
I managed to compile chuck on a beaglebone black (using Gentoo).
Most of the example files play well, but there are some files, which produce a somehow interrupted sound.
If this would be due to too less processing power of the CPU (ARMv7 Processor rev 2 (v7l) at 1GHz) -- how can I verify it?
What else could produce this problem?
Best regards, mcc
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
participants (3)
-
meino.cramer@gmx.de
-
Michael Heuer
-
Robin Haberkorn