Hi All,
Say hello to everyone!
I'm a new member to learn how to write a ALSA application.
I analyze the source code of aplay and very confused on follow interfaces:
snd_pcm_playback_info()
snd_pcm_playback_format()
snd_pcm_playback_params()
The aplay is belongs to alsa-utils that also is a application.
It should be use interfaces of alsa-lib, but why i can't find these interfaces in alsa-lib ?
Could you tell me where can find out these interface?
Looking forward to your reply!
Best regards
Spring
Hi Harry,
Thanks for your reply!
I want to learn some Linux audio related technologies,
and going to start from ALSA.
But i find it is difficult to do that,hope to be able to get more help。
Best regards
Spring
------------------ 原始邮件 ------------------
发件人: "Harry van Haaren"<harryhaaren(a)gmail.com>;
发送时间: 2012年10月19日(星期五) 下午5:15
收件人: "新月如钩"<46620410(a)qq.com>;
抄送: "linux-audio-dev"<linux-audio-dev(a)lists.linuxaudio.org>;
主题: Re: [LAD] About some interface of aplay
On Fri, Oct 19, 2012 at 9:31 AM, 新月如钩 <46620410(a)qq.com> wrote:
Hi All,
Say hello to everyone!
Hi Spring!
I'm a new member to learn how to write a ALSA application.
Is there a reason that you want to learn ALSA specifically? Or do you want to start audio programming in general? I might advise writing a JACK client if its audio coding you want to get into :)
I analyze the source code of aplay and very confused on follow interfaces:
snd_pcm_playback_info()
snd_pcm_playback_format()
snd_pcm_playback_params()
Can't help there I'm afraid: I'm a JACK coder.. :) -Harry
sorry for >< please >> <<
We are happy to announce the next issue of the Linux Audio Conference (LAC), May 9-12, 2013 @ IEM, the Institute of Electronic Music and Acoustics, in Graz, Austria.
The Linux Audio Conference is an international conference that brings together musicians, sound artists, software developers and researchers, working with Linux as an open, stable, professional platform for audio and media research and music production. LAC includes paper sessions, workshops, and a diverse program of electronic music.
*Call for Papers, Workshops, Music and Installations*
We invite submissions of papers addressing all areas of audio processing and media creation based on Linux. Papers can focus on technical, artistic and scientific issues and should target developers or users. In our call for music, we are looking for works that have been produced or composed entirely/mostly using Linux.
The online submission of papers, workshops, music and installations is now open at
http://lac.iem.at/
The Deadline for all submissions is February 4th, 2013 (23:59 HAST)
You are invited to register for participation on our conference website. There you will find up-to-date instructions, as well as important information about dates, travel, lodging, and so on.
This year's conference is hosted by IEM, Graz, in cooperation with local artists and FLOSS enthusiasts.
The Institute of Electronic Music and Acoustics (IEM) at the University of Music and Performing Arts Graz is considered Austria's leading institution in computer music, acoustics and audio engineering and has gained international reputation for its research on spatial audio and its artistic production and research.
IEM has been embracing Linux audio as a production and research environment since the mid-1990s, and has contributed to FLOSS/Linux projects, amongst others by providing drivers for multichannel audio interfaces and hosting the Pure Data community portal and mailing lists.
http://iem.at/
We look forward to seeing you in Graz in May!
Sincerely,
The LAC 2013 Organizing Team
------- Forwarded message -------
From: "Uwaysi Bin Kareem" <uwaysi.bin.kareem(a)paradoxuncreated.com>
To: "Adrian Knoth" <adi(a)drcomp.erfurt.thur.de>
Cc:
Subject: Re: [LAD] [LAU] Linux Audio 2012: Is Linux Audio moving forward?
Date: Thu, 18 Oct 2012 10:06:45 +0200
On Wed, 17 Oct 2012 17:58:33 +0200, Adrian Knoth
<adi(a)drcomp.erfurt.thur.de> wrote:
> On Wed, Oct 17, 2012 at 05:07:20PM +0200, Uwaysi Bin Kareem wrote:
>
>> http://paradoxuncreated.com/Blog/wordpress/?p=2268
>
> The site mentions:
>
> --- quote ---
>> sudo schedtool -p 98 -n -20 -F `pgrep X`
> --- end quote ---
>
> Setting the X-server to FIFO/98 is just plain wrong, at least on an
> audio mailing list.
>
> And then:
>
> --- quotes ---
>> To go with this I also recommend, using the Ubuntu 2d desktop, as it has
>> low-jitter. Also the chromium-browser has low-jitter (better youtube).
> --- end quotes ---
>
> I have no idea what you're trying to prove here, but I'm pretty sure you
> have a general misunderstanding of jitter, thread wake-up latencies and
> proper scheduling priorities.
There seems to be a lot of misunderstandings about scheduling policies and
jitter out there. Howver if you want your desktop to slow down, simply by
moving another window, then leave it at normal. Jitter for audio seem
unaffected by this. The standard kernel seems to almost do 0.33 ms stable
on my HDA soundchip. A few clicks, and that is how it is with realtime X
aswell. So why not do it, even if audio is your main focus. X is
singlethreaded, so it needs to have data ready, for it`s windows or games.
Or else it becomes a bottleneck. Do whatever you want with this, but don`t
say it is wrong, or some kind of misunderstanding. I would not run a
desktop any other way.
Peace Be With You.
Hi Drew
[ Note: due to the way the LAD mailing list mail server and my mail account
interacts, this reply is unlikely to make it to the list. Feel free to
forward it to the list if that's the case. ]
> Let's say I want at least 24 ins. What do I get?
I assume you're referring to 24 analog ins. Within a single unit that may
be challenging.
> I have heard focusrite mentioned. Firewire. Fine, but a bit iffy considering
> reports of firewire being "put out to pasture" - is this something to worry
> about?
It depends on who you speak to. Certainly in the consumer realm it seems to
be going out of favour. For semi-pro and professional audio however it
appears to be carrying on for the moment (most likely because the bus
architecture is so much better than USB for things like AV transport). This
is evidenced by the manufacturers continuing to release new firewire-based
devices.
Over the next few years I expect thunderbolt interfaces to come to the fore
(assuming the interface is adopted widely and quickly). However, there
remains a huge number of very good firewire-based interfaces out there, and
people will continue to want to use them for a number of years yet. As a
result, I suspect that there won't be major issues attempting to obtain
firewire host cards for the foreseeable future.
> So, what focusrite firewire setup will get me 24 ins at once and be linux
> compatible? Go to ffado:
> :
> Focusrite Saffire PRO 40 Experimental
> Focusrite Liquid Saffire 56 Reported to work
This status is true, unfortunately. I should clarify that the
"experimental" tag for the Pro 40 come about because FFADO has not received
any information from the manufacturer about this device AFAIK. However, it
is proving to be similar to earlier devices (excepting the DSP, which isn't
relevant if all you're looking for is raw I/O) and it appears that progress
is being made. Ultimately the slow progress is mostly due to a lack of
manpower to work on the drivers. Admittedly this doesn't help your current
quest. Note that I am not overly familiar with the Focusrite interfaces or
the FFADO driver for them; to obtain more detailed information about them it
would be best to head to the ffado-user and/or ffado-devel mailing list and
post your queries there.
> I have seen talk of RME firewire stuff not being well supported. Is that still
> the case if it ever was?
Back a few years ago it was true; those working on FFADO were unable to get
in contact with the right people at RME to facilitate the work on a driver.
This changed a couple of years ago and as of FFADO 2.1.0 the Fireface-400
and Fireface-800 are almost fully supported (MIDI I/O and the FF800 TCO are
the most significant omissions). In terms of getting 24 analog channels
into the computer, you could use a FF800 with two 8-channel ADAT pre's of
your choice. Again, it's not a single box with 24 inputs and it's a costly
solution, but it should be workable.
The RME UCX and UFX devices are currently not supported by FFADO. Adding
the support for these is mostly dependent on getting physical access to
sample devices. This is still being worked on (financial issues are proving
to be a problem).
Disclaimer: I work on the FFADO RME driver.
Regards
jonathan
This is a maintenance release of guitarix2 with some minor fixes.
Guitarix is a mono tube amplifier simulation for jack, with additional
mono/stereo effect racks which can be filled with some in-build effects
as well as with external LADSPA plugins.
Things that changed in this release:
* fix In "organize" mod copying preset form one bank to the
same one corrupts the bank
* add sse4a (CPU optimization) to wscript
* add treble booster unit
* set osc buffer-size menu to sensitive false when jack buffer
is larger then 1023 to avoid X-runs
Please refer to our project page for more information:
http://guitarix.sourceforge.net/
download site:
http://sourceforge.net/projects/guitarix/
have fun
guitarix development team
_______________________________________________
So, now that this thread shifted into a hardware/driver discussion and the flood of answers has stopped:
Have we learned anything from it?
For my part the conclusion is
make more music
make it public
make other people want to use the same tools as you
Nils
It (see subject) is a good question. In general my answer would be
'yes', but maybe not at the speed one could hope for.
The following is just from my perspective, which is 'minority',
'very specialised', or just 'irrelevant', take your choice.
That perspective is:
* Classical (including contemporary 'classical') music recording.
* Spatial audio reproduction, in particular Ambisonics.
* Acoustics research.
* Audio forensics.
I agree that is all quite different from the average musician's
POV, so you will be forgiven for considering it irrelevant.
In all of those fields Linux audio has served me well, and in
particular Ardour has been a very dependable and flexible tool
during the past five years or so. If I go back a bit more, it
is very clear that things have improved immensely. I remember
the second (IIRC) LAC where Paul demoed Jack and Ardour and had
to use pkill every two minutes. Things have really gone forward
since then, and by quite a distance. But that doesn't mean all
is honey.
The HW situation has been mentioned. Honestly, I wouldn't know
where to go if RME went away. Almost everything I've been doing
the last years has not only used their HW, but depended on it -
no alternatives. That *is* scary. Things being like that may not
be just a Linux problem.
I agree with J. Liles that we should have the courage to review
Jack. It has done a very good job, but (at least in my world) it
is showing its limits, and I'm not at al convinced that these can
be removed by 'incremental' improvements. Maybe we need something
new and incompatible, with two systems existing during a transition
period which could take several years. In particular:
* It sould become a system level service, i.e. 'promiscuous'. I've
been running modified versions like that for some time. It's a
pain currently. Things will maybe improve once systemd becomes
universal.
* It should have 'persistent' ports or the equivalent. That is, you
can start an app, and tell Jack to remember it and its ports even
after the app is terminated. The point here is that others can
then connect to it even if it doesn't (yet) run. This would simplify
things like session management quite a lot. But it also requires
cooperation from the apps - one like Ardour that creates and removes
ports with arbitrary names at any time doesn't fit well into such a
scheme. The solution is to use Jack ports more like audio hardware
uses its interfaces: ports are a fixed set (as would be e.g. an ADAT
or MADI interface on a HW mixer), but are assignable to any function
*within the app*. Any notion of logical function can still be carried
as metadata of the port.
* All current hardware is SMP. If an audio app has a complex internal
processing graph it will implement its own multithreaded scheduling
system for audio processing units (as Ardour 3 does). But it's silly
to repeat this in every app, and even more silly to schedule apps
'per process', i.e. run them only if *all* of the internal graph can
run. This level of logic should move into Jack, or whatever replaces
it.
The plugin situation is deplorable. Let's face it, 90% of the available
ones just don't work, or work for some value of 'work' but are still crap.
LV2 has not delivered what was hoped for, IMHO as a result of focussing
on the wrong things. Given that things are what they are, any plugin
standard on Linux should have a documented and *stable* way to support
*any* X11 based GUI, including having a GUI embedded into an app, *and*
do that in a way that still works efficiently even if you have 100 plugins
in an single app and 500 in your system. Focussing on the right things also
means supporting developers who go for quality and are prepared for the
effort instead of trying to make things as easy a possible for beginners.
One of the reasons I'm not releasing anything as an LV2 plugin is that
LV2 doesn't impose any quality standards, and doesn't care about its
reputation. It's just bad company.
Finally, and on a very personal level, you may have noticed that my
output has decreased. But it hasn't. I've written more Linux audio SW
during the last years than at any time before. I'm just less inclined
to publish it. And I have been asking myself why that is so. One factor
may be that much of it is rather specialised. But that is in itself no
reason to keep it private, so that doesn't explain things. What has
certainly played a role is that fact that I'm tired of the mostly
useless discussions that arise whenever you propose something that
challenges the status quo, and the need to reach a 'consensus' before
anything happens. Which is more often that not just used to kill some
idea rather than towards any productive end.
--
FA
A world of exhaustive, reliable metadata would be an utopia.
It's also a pipe-dream, founded on self-delusion, nerd hubris
and hysterically inflated market opportunities. (Cory Doctorow)
On Thu, October 11, 2012 6:52 am, Louigi Verona wrote:
> @Folderol:
>
> "While it is nice to have lots of different apps, plugins, whatever, I
> think you
> find most musicians quickly settle on a very small range which they get to
> know
> extremely well."
>
> This is true. However, before you settle, you do need to have a choice.
> And
> there is
> very little right now.
>
> @Dan:
>
> "He made a number of valid points but I have to agree it was a bit overly
> negative. Linux audio has come a long way in the last few years- if still
> trailing some way behind commercial offerings in some areas but its
> unrealistic to expect otherwise when the big boys have large teams working
> full time on development plus some of the apps (Cubase etc.) effectively
> pre-date Linux back to the 80's."
>
> You point out the reason why things are as they are. I did not speak about
> the reasons, I tried to capture how I see the state of things, independent
> of the reasons. Noting that Linux has come a long way and that we cannot
> expect hobbyists to do as well as professionals has nothing to do with a
> completely independent statement that Linux has few plugins compared not
> even to Windows but to some musicians' needs. ;)
>
>
> I think sometimes it is useful to take such perhaps a slightly negative
> look. As long as it is not desperate, this kind of reflection can be
> useful
> to always be realistic about one's achievements or about state of things.
>
> Also, I have a hidden hope that someone disproves my view and shows that
> in
> reality everything is not so bad ;)
The problem with that approach is that it tends to feed the negative
attitude towards Linux and that is exactly what the "competition" want. So
by "trashing" the platform to gather informed responses it can do more
harm than good from a marketing and promotional angle. However that method
works very well for Fox and The Register so it's definitely a valid
approach.
After years of trash talk or being ignored what we really need is a
dedicated effort to "bigging up" all the things that can be done.
Which reminds me, if anyone has any tutorials they want to share on the
quicktoots website please send them my way. We get about 500 views a month
on that site at the moment and as it has been online for almost 10 years
that means almost 50,000 people have viewed tutorials on that site. The
toots don't have to be recent or cutting edge. Just useful and informative
:-)
BTW, for the professional companies out there that is 50,000 very
attractive sales prospects that you could have been marketing to for the
past 10 years. So if you are a company and want to increase your sales
potential it makes sense to be providing professional tutorials for
inclusion on the quicktoots site on a regular basis.
--
Patrick Shirkey
Boost Hardware Ltd