News:

Forum may be experiencing issues.

Main Menu

pt2399 noise. solution?!

Started by gtangas, March 28, 2013, 12:12:53 AM

Previous topic - Next topic

kothoma

#45
Maybe I've been looking at in the wrong places, but I don't find any reports on realtime audio with a BeagleBone.

I've spent the whole weekend on setting up the RasPi for realtime audio. I'm near but not really there yet.

RobA

There are some projects on the beagleboard.org site that do audio applications. How you go about doing it is going to depend on which OS you use. But the CPU certainly has the power and support to do it. It has various RT support peripherals and I2C, I2S, and SPI built in. There are even some small RTOSes that are available for it. So, I'm sure that it will take some work to get it set up for audio applications, but I'm confident that it can handle it.

I'm interested in hearing how what you are doing with the Raspberry Pi works. I've got one already, but it's actually dedicated to running my electronics software, but least they are easy to get hold of now.
Affiliations: Music Unfolding (musicunfolding.com), software based effects and Rock•it Frog (rock.it-frog.com), DIY effects (coming soon).

kothoma

#47
What initially appealed to me was the low power consumption of the Pi, which is ideal for running 365/24 servers (VPN, NAS, private cloud, mail server, DLNA/UPnP, you get the idea). Maybe I even get into some home automation sometime?

Only recently I considered using it for RT audio. So I started trying all my USB audio interfaces. And had an instant déjà vu. Not too much has improved here since my endeavors with UbuntuStudio five or six years ago. Plug and play? Dream on.
In addition there seems to be a serious problem with how USB 2.0 is implemented on the Pi, especially the USB 1.1 compatibility.
You either clock down to USB 1.1 or you have luck and get a USB 2.0 audio device working.
And as LAN is done via USB you better unplug here altogether once everything is set up.

On the software side you need to find out what of the OS to deactivate to get the most out of the CPU. Seems like one has to get rid of everything that has to do with the network to minimize hickups. For a start I would be glad to have a reliable software wire (copying input to output, no actual DSP). Next step would be delay and sampler/looper. But I almost got Guitarix working already. Convolution could be within reach. Now that would be something.

Haven't tried overclocking yet. Or building a cluster and going parallel (over GPIOs as LAN seems to be off-limits).

Edit: you really got me interested in the BeagleBone. Faster. More I/O pins, even analog ones. Nice.

kothoma

I know next to nothing about FPGAs. No idea where to start and what would be needed.

So would it (in the long run) be possible to (more or less automatically) translate a csound or pd/Max script directly into a piece of hardware? (Just dreaming?)

RobA

I've got my Pi overclocked to a mid level.  It helps a bit, but since each board can handle different levels, I don't think it's something that you can depend on to get algorithms running.

One of the appeals of the BeagleBone is that it's aimed at being kind of a super Arduino -- more project oriented. So, it's got more OS choices and a system of being able to configure the level of services in the OS that is relatively easy to work with. I've played a bit with the earlier BeagleBone and it is pretty easy. Now, there are things like FreeRTOS available and it gets even more interesting in that regard.

I'm really in the same situation with FPGA's. I've really only read about them. The initial appeal was being able to build my own SoC of a sorts with doing the AD/DA on the pins of the FPGA itself. So, simplifying the system. But, since the powerful FPGA's tend to have massive pin counts to begin with, I'm not sure that this is a better solution than just adding a good CODEC to the project. The bigger issue is the programming model is not as widely known and seems to me to be less well supported by open source programming tools. That's something that's important to me for the projects I have in mind.

That last point is probably relevant to your last question. I think it would be much easier to approach doing something like pD or Max on a Pi or BeagleBone than an FPGA based system. And that points to them more appropriate for the type of things I want to be able to do too. They also cost a lot less and that's important in this space too. 
Affiliations: Music Unfolding (musicunfolding.com), software based effects and Rock•it Frog (rock.it-frog.com), DIY effects (coming soon).