Re: [Jack-Devel] RFC: jackd portnames

PrevNext  Index
DateThu, 03 Nov 2011 22:05:54 -0400
From Paul Davis <[hidden] at linuxaudiosystems dot com>
ToFons Adriaensen <[hidden] at linuxaudio dot org>
Cc[hidden] at lists dot jackaudio dot org
In-Reply-ToFons Adriaensen Re: [Jack-Devel] RFC: jackd portnames
Follow-UpNedko Arnaudov [Jack-Devel] JACK "community" (Was: Re: RFC: jackd portnames)
Follow-UpFons Adriaensen Re: [Jack-Devel] RFC: jackd portnames
On Thu, Nov 3, 2011 at 6:08 PM, Fons Adriaensen <[hidden]> wrote:
> On Thu, Nov 03, 2011 at 05:41:15PM -0400, Paul Davis wrote:
>
> To make this a bit more clear, we could have had
>
>
>> typedef enum  {
>>   BufferSizeChange,
>>   SampleRateChange,
>>   AttachPortSegment,
>>   PortConnected,
>>   PortDisconnected,
>>   GraphReordered,
>>   PortRegistered,
>>   PortUnregistered,
>>   XRun,
>>   StartFreewheel,
>>   StopFreewheel,
>>   ClientRegistered,
>>   ClientUnregistered,
>>   GenericMessage         <<<<<<<<
>>   LatencyCallback
>> } JackEventType
>
> with 'GenericMessage' having its own type field, and then
> defining some types to implement a session management system,
> or other useful extensions. And none of those would then
> require any changes to Jack's code.

as usual recently, you sit on the sidelines bitching about what we
have and haven't done, pontificating about what would have been
possible and what would all have made everything so much easier. which
of course is absolutely fucking awesome because you're just
relentlessly brilliant, never wrong, always carrying insights that
nobody else has, and always willing to tell other people how badly
they've fucked up. it just cheers up my endlessly morose heart to hear
once again how the development of JACK is so screwed up that you need
to and are willing to fork it, and how every problem that the JACK API
has can be solved with one wave from your magical wand that will
impart clarity and incisive vision to all that it manages to reach.

the protocol in question is a two way protocol that connects the jack
server to jack clients. it was designed to be fast, efficient and to
get provide the communications channel required by the server and its
clients. it was not designed to pass arbitrary sized messages back and
forth (which is why it uses a fixed size data structure/packet). it
also doesn't come with any mechanism that allows anything except the
server to send a message, which means that of necessity, sending
something other than one of the messages enumerated above means
changing code in at least the server, and depending on the semantics,
in libjack also (see the way that the "SaveSession" message gets
handled if the client hasn't bothered to register any interest in such
messages).

so yes, once again it is easy to say "oh, you should have changed it
all so that the messages sent between the server and client had a
fixed sized and then an optional variable size component, and you
should have defined the semantics so that no message could be sent
that required a response from every client". every since nedko
informed me in no uncertain terms that the design of JACK has been
"fucked up from the beginning" i've ignored him on IRC and almost
completely in email. there's no justification for a person who
believes that hanging around in the JACK community and trying to
convince other people about their ideas. you're a lot smarter than
nedko, and some of your insights into what JACK should do have been
really invaluable. but this sort of "could of, should of" BS that
glibly ignores the actual cost (personal, and development-wise) of
subtly but distinctly modifying the implementation and semantics ...
well, it brings me close to the same kinds of feelings.

you're busy with other projects, and so am i and so is torben and so
is stephane. things get done with JACK because someone feels motivated
enough to do them. the way you dismiss what is there, and more
pointedly the way you always have a mean spirited comment about how it
could be done better but you almost never actually do the work
accomplishes nothing except to dissuade people (me, in particular)
from bothering to try to make changes to JACK.

i could possibly find the time to do the work on port meta data.
what's the point when it will just result in another one of your posts
about how fucked up it all is because it didn't meet your standards,
expectations or needs, all of which will be described in the broadest
possible terms and only post facto. i mean, seriously, why bother?
PrevNext  Index

1320372397.7465_0.ltw:2,a <CAFa_cK=JsfrG1vEGc5UqKVZe5Us4vpXqRp-pZzrxfCed2w=gTQ at mail dot gmail dot com>