Old 09-21-2019, 02:44 PM   #1
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default Bela Board

Reaper running on this ....

https://bela.io/about
-Michael
mschnell is offline   Reply With Quote
Old 09-21-2019, 04:11 PM   #2
Glennbo
Human being with feelings
 
Glennbo's Avatar
 
Join Date: Mar 2008
Location: Planet Earth
Posts: 4,060
Default

Quote:
Originally Posted by mschnell View Post
Reaper running on this ....

https://bela.io/about
-Michael
So you are running REAPER on one of these?

Pretty impressive array of stuff squeezed onto those boards.
__________________
Glennbo
Hear My Music - Click Me!!!
--
Glennbo is offline   Reply With Quote
Old 09-21-2019, 10:04 PM   #3
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

That indeed would be nice But no(t yet).

I just wanted to trigger a discussion of the device here, and on the viability and on ways to run Reaper on this device you introduced to us in the other thread.

Thoughts to be discussed:

I suppose that the reduced latency is not the result of certain hardware features, but due to using appropriate (more "embedded"/"realtime") software: Kernel distribution, drivers, ..., and appropriate settings in the software configuration.

The critical hardware supposedly is just a standard the Beagle Bone, the new Realtime enabled Kernel distribution has already been discussed here.

Thence Regarding Reaper what would be necessary i just a "BealeBone" Reaper distribution and not a dedicated "Bela" distribnution

-Michael

Last edited by mschnell; 09-21-2019 at 10:11 PM.
mschnell is offline   Reply With Quote
Old 09-22-2019, 03:50 AM   #4
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Comparing boards with similar (low) price,I feel that the RasPi series is more optimized for performance - especially the newer ones seem to fly, while the BeagleBone series - and hence the Bela - is more optimizes for accessing hardware. The "PRU" coprocessor provided by these chips (running independently from the main OS) can create and decode very fast non-standard protocols. Hence it's easy to do DMX with a BeagleBone but supposedly not reliably possible with a Pi.

-Michael

Last edited by mschnell; 09-22-2019 at 04:38 PM.
mschnell is offline   Reply With Quote
Old 09-22-2019, 11:31 AM   #5
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 4,630
Default

If you're talking about general computing, the RPi is much more performant.

But that ends when you want to do multi-channel audio IO. The best a Raspberry can do, is about 8 in, 8 out simultaneously. It's 1 internal USB port that (until the Pi4) also handled Ethernet is just too restrictive.

Bela has the Beast. Stackable audio IO boards, each offering 8 in, 16 out. And these are coupled to a specialised processor. I know next to nothing about this processor, but for the time being, I'm willing to accept their word for the possibilities.

Then I see an open source replacement for a Behringer X32, or a UAD DSP box. Or even both.

I've been trying to formulate a hardware platform for audio. Basic demands: route anything to anything with low latency. Apply some processing on these. Multi-channel, of course. Like 32 in, 32 out.

I'm doin' that. With a Mac, a FF400, TotalMix and a few ADAT boxes. Like a digital EQ over ADAT. It works.

When it comes to moving the software to another computer, I'm lost. Even moving to another Mac isn't really straightforward, because of software not included in the OS. TotalMix, for starters, but also some libraries. Setting these up required a day of work in rare cases.

I'm not even looking at MIDI. I've avoided MIDI at all cost. Every time I tried it, it required days, weeks of work to get it to use some hardware completely. And when it worked, it failed miserably cause something, somewhere, arrived late. Latency...

OSC seemed like a better solution. Ir's networkable out of the box. So I tried it. But the first time another user tried to use the box, it failed too. Because users aren't network engineers. At least, this one wasn't.

With Bela, the hardware is so cheap it goes another way. No computer needed for what I'd like to do. Just a Bela. And, yes, with a Beast cape, it runs 300 £. Seems pretty expensive, until you realise you get 8 in, 16 out with it. Or even 10 in, 18 out.

If (and that's a very big IF) Reaper would run on it, it could be a dream. Reapers's performance is fine on an old 1 GHZ Intel with 1 GB ram. As long as it doesn't has to drive a big screen, it screams. No problem with 36 I/O.

But even without Reaper, it could do about 95% of what I'm looking for.

Now if anyone has real experience with it, I'd like to hear from you. The good, the Bad and certainly the Ugly.

Until then, I'll be on the hunt for specs of that specialised chip. Haven't found anything yet, but I keep getting distracted by other bits of interesting reading...
__________________
“It has become appallingly obvious that our technology has exceeded our humanity” Albert Einstein

Last edited by cyrano; 09-22-2019 at 11:55 AM.
cyrano is offline   Reply With Quote
Old 09-22-2019, 12:12 PM   #6
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 4,630
Default

This is the chip we're talking about:

https://hr.mouser.com/new/Texas-Instruments/ti-am335x/

Quote:
The PRU performs only the I/O from and to the audio ADC and DAC (over I2S), the analog ADC and DAC (over SPI), the digital I/O (these are just GPIOs of the SoC). All the I/O operations on the PRU are timed by the audio clock. The data are transmitted from ARM to PRU and from PRU to ARM by using a shared memory buffer. The PRU signals an RTDM driver (Real-time device model, a Xenomai-compliant real-time driver) that runs on ARM, when a buffer is ready. The C++ code you write in the IDE runs in user-space on the ARM CPU within a Xenomai thread.
I read that as "the audio interface is even closer to the CPU than with PCI...

It also means any effect is added on the ARM CPU. Maybe a VST host, maybe Reaper?
__________________
“It has become appallingly obvious that our technology has exceeded our humanity” Albert Einstein
cyrano is offline   Reply With Quote
Old 09-22-2019, 04:37 PM   #7
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Quote:
Originally Posted by cyrano View Post
And these are coupled to a specialised processor. I know next to nothing about this processor, but for the time being, I'm willing to accept their word for the possibilities.
Yep this is the "PRU" I mentioned above. I don't know which kind of protocol they use between the PRUS and the audio board. Supposedly something similar to ADAT.

This in fact is a great idea !
-Michael
mschnell is offline   Reply With Quote
Old 09-22-2019, 04:44 PM   #8
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Quote:
Originally Posted by cyrano View Post
It also means any effect is added on the ARM CPU. Maybe a VST host, maybe Reaper?
The PRU-<>Audio thingy will be accessed by the Linux system by a dedicated Linux audio device driver. Of course Reaper will be able to access it.

As there is a VST specification for Linux, there can be VST plugins running on ARM / BeagleBone. But I doubt they will come "out of the box", but you will need to compile them for the system.

AFAIK, Reaper /Linux/Arm currently only is specified for Pi, but a BeagleBone system should nt be very different in user space.

-Michael
mschnell is offline   Reply With Quote
Old 09-23-2019, 07:23 AM   #9
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 4,630
Default

I'm still confused...

The PRU is part of the Beaglebone, not the Bela cape, I think? So any Beaglebone should have that afvantage, even without a Bela?

Of course, you'd still need some hardware for audio I/O.

Anyhow, we'll see how it evolves. Bela existed for years before I discovered it. And some remarkable stuff has been made with it. I'm playing with pure data for now. Remarkable software...
__________________
“It has become appallingly obvious that our technology has exceeded our humanity” Albert Einstein
cyrano is offline   Reply With Quote
Old 09-23-2019, 08:13 AM   #10
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Quote:
Originally Posted by mschnell View Post
The PRU<->Audio thingy will be accessed by the Linux system by a dedicated Linux audio device driver. Of course Reaper will be able to access it.
After reading their scientific paper, I'm not sure about that any more. They seem to suggest to use the PRU-based Audio interface for software dedicatedly using realtime OS threads and not for standard Linux userland software.

But as such realtime software can call any linux API (loosing the realtime priority while doing so) there might be a chance to interface this with Reaper.

-Michael

Last edited by mschnell; 09-23-2019 at 08:20 AM.
mschnell is offline   Reply With Quote
Old 09-23-2019, 08:18 AM   #11
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Quote:
Originally Posted by cyrano View Post
The PRU is part of the Beaglebone, not the Bela cape.
The PRU on the TI chip on the BeagleBone seems to be used to manage a I²S (and a very high speed SPI) interface towards the cape. (But I seem to remember that the TI chip does feature I²S in hardwate so the PRU should not even be necessary for two channel audio).

The Bela cape provides the I²S analog audio converter and the 8 channel SPI A/D D/A converter.

The Software that comes with the Bela provides the Linux Realtime Linux extension and drivers for the hardware (PRU, I²S, SPI A/D-D/A).

-Michael
mschnell is offline   Reply With Quote
Old 09-23-2019, 09:41 AM   #12
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 4,630
Default

The hardware part I get, more or less.

It's the software that has me wondering...

Like, is there one CPU, or two? And what's the second one running?

There are no ALSA drivers in the main CPU's OS. What are the implications? Can Reaper access the audio I/O without ALSA? What about Jack?
__________________
“It has become appallingly obvious that our technology has exceeded our humanity” Albert Einstein
cyrano is offline   Reply With Quote
Old 09-23-2019, 01:27 PM   #13
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,066
Default

Quote:
Originally Posted by cyrano View Post
is there one CPU, or two? And what's the second one running?
The chip actually features (at least) four CPUs:

- The main ARM processor usually running Linux
- two PRU processors

- a small processor for power managing

Quote:
Originally Posted by cyrano View Post
There are no ALSA drivers in the main CPU's OS. What are the implications? Can Reaper access the audio I/O without ALSA? What about Jack?
I suppose to use Reaper with the Bela A/D D/A system, some kind of ALSA or similar driver needs to be done. Same needs to work together with the realtime part of the OS.
But with that the promised low latency will not be accomplished.

-Michael
mschnell is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 07:11 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.