I'd like to announce that my LV2 port of the famous mda e-piano
plug-in is ready for download! 
When I was checking out the mda-lv2 ports, I noticed that the
instruments were not actually playable. I could not get them to work
in either lv2_jack_host or in Ardour2 or Ardour3.
So , here is the first and only (to my knowledge) native LV2 port of
the mda e-piano. There is no GUI yet, but once I figured out how to
add a GUI I'll be adding one.
I'd be very happy to receive comments and suggestions on the code.
My next target will be the mdaPiano plug-in---I might actually start
soon when the GUI stuff causes me too much of a headache...
Fallowing up the long discussion i'm trying to sort of give the
information you all seem to be missing.
there was a meantion of this, but not too many of you have paid any
here you can find an article about the current status of the protocol mess:
http://prosoundnewseurope.com/pdf/PSNLive/PSNLive_2009.pdf (page 28)
obviously eas50 is good to go, but Ethernet AVB is right thing really.
the only thing that it's still work in progress, but many of the
proprietary vendors, which already have their own networking solution
(like Harman with HiQ-net, the one i can name of top of my head)
are involved in AVB stadard deveelopment.
The idea of AVB is to bypass the IP layer, which is right thing really.
you don't need to assign IPs to your audio nodes, really!
in avb you'd just have to select channels that nodes whant to listen to.
there is a fair bit of documentation on the ietf.org AVB group's page.
but XMOS is looking to be the best point of refference:
is think we should forget everything else and crack on with the XS1 AVB
their XS1 chips seem to be really great,
their are basically every innovative and open-source minded.
the official toolchain is LLVM-GCC based.
you can use C, C++ or their own XC.
XC is basically C with some stuff omited (like goto and floats)
and XMOS IO stuff added, don't just say WTF, look at it first!
you should also watch the videos here:
especialy the two about the "XMOS Architecture" and the AVB
some dev-kits are quite expencive, but that's due to low-volume really
there is alos a nice USB Audio kit!
plus there is alittle board that is cheap and has two RJ45's on it
I'm myself studying the XC book at the moment. And geting familiar with
the tool set :)~~
looks very exciting, cause these are the invovative chips!
ok, may be an FPU is really missing on XCore, but how many DSPs have
it anyway? well quite a few, but there was no FPU on dsps for ages! :))
also XC or C/C++ are so much more obvious then the bloody "menthal american military engeneers non-sense" called HDL-whatever!
Hope you will appreciate my excitment :)~ (l0l)
For most of the last week I've been stuck trying to configure my
silicon peripheral to generate Normal I2S audio data to mostly _bad_,
results and had a couple of questions (below).
Briefly, my setup is as follows: SqueezeServer on a Windows host PC,
Squeezeslave on my embedded Linux device sending audio samples through
the kernel (2.6.28) down to my driver which lives in
sound/soc/pxa.I've been trying to configure my device for I2S format.
Outside the CPU, the I2S-formatted PCM data is sent to an external FM
transmitter chip so I should be able to hear the audio on my FM
receiver. Since the only "new" stuff here is my driver and the output
hardware, I've been focussing my attention on them until now, but
haven't had much success hearing anything.
I've actually heard _some_ recognizable audio - I could tell it was
the song I had selected, but it sounded very distorted (sounded
horrible) and I'm certain it wasn't because of a weak FM transmitter
signal. I'm guessing it was a mismatch in the formatting of the I2S
data between what I was sending and what the FM Tx chip was expecting
and that has formed the basis of my troubleshooting effort. I've run
out of ideas for things to try at the bottom end and now I want to
make sure my top-end components are working properly. This is weird
because I've stopped being able to hear anything lately, but a scope
confirms my I2S lines are all lit up.
Here are a couple of questions...
1) The CPU supports a packed mode write to the Synchronous Serial Port
(SSP) FIFO, meaning that two 16 bit samples (one left channel and one
right) can be written at the same time, both being packed into a
single 32 bit FIFO write. My driver enables this mode, but my question
is, where in the kernel would the samples be combined into a 32 bit
chunk for writing? I'm using Squeezeslave on my embedded device as the
player and I've checked the sources and it doesn't look like it's
happening in there. Makes more sense to be somewhere further down in
the stack so players don't have to care about the details of the
hardware they are running on. I was wondering if anyone knew where
this packing might take place.
2) Are their any useful tools out there for debugging/narrowing down
where problems in the audio path might lie? My player is an embedded
platform and I've only ported Squeezeslave to it, but for all I know
there could be a problem anywhere from SqueezeServer, through
Squeezeslave, down into the stack, my PCM driver or even the FM
transmitter. To eliminate the latter as a problem I'm looking for
another device that spits out known good I2S audio and I'll feed that
into the FM Tx and hopefully eliminate that. But there's a lot of code
from the SSP back and it would be great if I had some simple tone
generator application (for instance) that was easily portable to an
ARM9 platform (kernel 2.6.28) that I knew was sending correct data
down the stack.
3) My experience with Linux and audio is just beginning and so far
it's been right down at the driver level, so a question about audio
playing software: when a player produces a PCM stream from, say, an
MP3 file, does it automatically interleave the left channel and right
channel or does it produce two separate streams, one for left and one
for right? I can't tell from reading the Squeezeslave code, but it
looks like the audio data is sent in one continuous stream, so ...
4) For those of you experienced with I2S and other PCM formats, what
would a Normal I2S stream sound like on a DAC that thought it was
receiving Justified I2S? Would the audio still be intelligible or
would you hear nothing at all?
Thanks to all who read this post.
On Tue, Oct 26, 2010 at 10:05 AM, Robin Gareus <robin(a)gareus.org> wrote:
> http://gjacktransport.sourceforge.net/ is a tool that provides graphical
Thanks!! Works great and provides functionality I was looking for just recently.
One small nitpick is that when the transport is rolling, the area
displaying the rolling HH:MM:SS.mmm timecode jiggles around since the
font is proportionally spaced. (at least w/ my display and fonts and
setup). Monospaced fonts for such rolling values can prevent this
minor visual distraction.
Thanks for the suggestions everyone! I'll definitely start
familiarizing myself with the LADSPA API. LADISH looks really nifty
>My best advice is to pick up a project that you are objectively
>interested in completing. Pick a goal that you would be happy if
> *someone else* did. That way when the novelty wears off, you'll
>still have some motivation to keep working and keep learning when
>you otherwise might tire of it. So ask yourself: What's something
>that you think linux audio is lacking? Find something small, and
>something you care about.
that's exactly what I'm planning to do. That's a good way to put it,
Jeremy. I just gotta keep doing audio projects in Linux and find out
what tools would be useful to me as an end user.
Awesome. this is wonderful. This is information that will keep my busy for a while. thank you, Gabriel
--- On Tue, 26/10/10, Gabriel M. Beddingfield <gabrbedd(a)gmail.com> wrote:
> From: Gabriel M. Beddingfield <gabrbedd(a)gmail.com>
> Subject: Re: [LAD] Suggestion for diving into audio development?
> To: linux-audio-dev(a)lists.linuxaudio.org
> Cc: "Kris Calabio" <cpczk(a)yahoo.com>
> Date: Tuesday, 26 October, 2010, 8:46 PM
> Hi Kris,
> On Tuesday, October 26, 2010 05:24:59 pm Kris Calabio
> > I'm new to the Linux Audio community. Let me
> > Does anyone have suggestions for diving into the world
> > open source development? I've looked at some
> 1. Watch this movie:
> 2. You said you know C and C++... so, you're all
> set there. :-)
> 3. Read through jack docs and examples in the source
> code for jack.
> 4. Another good tutorial/resource is Paul Davis's tutorial
> on using the ALSA API:
> 5. Pick an app that you like, and start squashing bugs.
> It'll be slow and tedious and confusing
> at first.
> But that stuff pays off big-time
> later. Not only
> will you have massive debugging chops,
> but you'll
> have some good trial-and-error
> opportunities to
> learn what you do/don't like doing.
> Not everyone
> likes nasty DSP algorithms, but some guys
> get enough. Not everyone likes
> picking the perfect
> pixel size for a custom widget... but
> other guys
> really enjoy that.
> > code of applications I use but get pretty lost.
> > there any simple Jack applications that have easy to
> > read code? I'm all for taking baby steps.
> I'm also
> Gordon suggested playing with plugins... and I think that's
> an excellent suggestion.
> Fons Adriaensen writes very clean, well-designed code, with
> many small apps, plugins and libraries.
> Except for his DSP algorithms (which use terse mathematical
> notation), I find his code easy to follow.
I'm new to the Linux Audio community. Let me introduce myself:
(You can skip to "Ok getting to the point" if you like :P )
I'm primarily a rock musician and have a home recording setup with a Presonus Audiobox USB, Guitar Rig 3, and Reaper on a Windows system, and it works really well for me. I've been using Linux ever since I started studying computer science in college since 2006 and immediately recognized it as marginally better than Windows. I've considered switching my home system completely to Linux and free software (all knowledge must be free!), but I love Reaper too much.
So I decided to dual boot on my new laptop about a month ago. I still have Windows 7 to get stuff done in Reaper quickly and comfortably, and Ubuntu Studio to experiment with. I must say, this last month I've learned so, so much about Linux, DSP, and computers in general. The flexibility of Jack is awesome. I love how all my plugins don't have to be run all in one DAW application. Jack with Ardour and Guitarix rivals my Windows setup, though I still prefer Reaper.
Ok getting to the point:
Does anyone have suggestions for diving into the world of open source development? I've looked at some source code of applications I use but get pretty lost. Are there any simple Jack applications that have easy to read code? I'm all for taking baby steps. I'm also open to reading suggestions (online resources, books, anything really).
The lowest level of DSP programming I've ever done was with Pure Data. (I made a wavetable/FM synthesizer in pd that I could post if anyone's interested.) Are there other programming languages I should learn? I know C, C++, and Java. I understand that FAUST is a good DSP language. Are there others?
The Linux community is great and the free audio software is really powerful! It's definitely THE ideal alternative for musicians on a budget like myself. Unfortunately, you sort of have to be tech savvy to be a Linux musician. The average musician is not. I want to be part of the development of free audio software as my way of giving back to this wonderful community and helping the average musician.