Re: [linux-audio-dev] Re: [linux-audio-user] Audio routing issues for linux..

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] Re: [linux-audio-user] Audio routing issues for linux..
From: Paul Davis (pbd_AT_op.net)
Date: Mon Jun 10 2002 - 16:24:20 EEST


>1-It's not a standard. ALSA/OSS are. If i want to write a driver, i
>will do for those.

JACK has nothing to do with device drivers. Its a layer that hides
even the existence of physical audio interfaces from
applications. Right now, there is a dynamically loaded client/clock
client that uses ALSA and another that uses the Solaris audio API. If
you're going to criticize JACK, you could do us the honor of at least
understanding how it works first, and if you can't do that, limit your
discussion to the example clients which present the only part of JACK
that an application author generally needs to know about.

>2-If i need low latency, i'm perfect with SCHED_FIFO and low
>fragmentsize in eithe alsa/oss.

This is not enough to provide you with low latency multi-application
setups, which is what you said you wanted.

>3-Device sharing is pointless for me if most other programs dont
>support JACK.

Your point is?

>4-There's not really any useful reason I can think for my app sharing
>data with JACK apps, and i'm not going to write eveything
>jack-oriented for an API that's not really popular.

You're making a mistake thinking of it as "jack-oriented". The application
design that JACK needs is the same design your application would need
under MacOS X, or if it was to work with ReWire or DirectConnect, or
if you wrote it as a VST/MAS/VST/DirectX plugin. Its true that for
JACK itself you might have to have 10 or 20 lines of code that look
different than the version for OS X, but the basic app design is the
same. The problem is not JACK, is thats OSS and ALSA continue to
present an API that is totally different from that used by every other
system that allows the kind of functionality that you are asking for.

>5-As I described in my previus mail, Most apps that i'd find cool that
>would support jack, just dont do.

Maybe you could write to their authors instead of trying to come up
with yet another API.

>6-If dozens of users mail me per month with problems compiling
>Cheesetracker because of misconfigured GTK installs, think of the hell
>it would be if they had to compile jack.

What are you talking about? JACK takes 2 minute to compile and
install, has nothing to do with GTK or any GUI library unless you want
the sample clients. JACK is also available as both RPM and deb
packages, removing any need to compile it at all.

>7-I cant use other apps transparently with JACK to alter their sound
>and re-route it.

No, because they've been written with an API that is fundamentally
unsuitable for the purpose. You don't seem to be able to accept this.

>8-I dislike the design, I really do. I think the functionality of
>audio routing must be withing alsa-lib. This makes things harder and
>more confusing for end users. Esound and arts are confusing enough,
>and adding an extra layer is worse.

How can we get you to accept that alsa-lib can't do this in the way
that most of us want it done?

>For these reasons, I will not support or use JACK until something like
>it becomes part of alsa. Why? because I think jack is a mere hack to
>go around alsa/linux limitations instead of contributing to them or
>improving them. Sorry about my "rant" on JACK, I am not a driver/alsa
>programmer, I am an application programmer and I want to make things
>easy for users and for myself.

You're shooting yourself in the foot. JACK makes your audio programs
vastly easier to write. You don't have to do any device configuration,
sample format issues, or many other things that a Hardware Abstraction
Layer (HAL) API like ALSA forces you to deal with. The most complex
issue you have to face as the author of the typical audio application
is how to de-interleave stereo samples.

Your problem seems only to be that not enough other apps use
JACK. Thats not the problem of the people who wrote JACK, its caused
by programmers like yourself who won't accept that we spent two years
talking about this issue and that JACK is the current outcome of those
discussions. You show up late for the party, then claim that you don't
like the food or the music, and that other people who we've never met
wouldn't like it either. Find a different party or try to enjoy ours.

--p


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Jun 10 2002 - 16:27:38 EEST