A short while back I floated some experimental notions involving ZynAddSubFX on LAU. That was useful, especially Paul D's comments (they always are). I subsequently posted a patch on the project's Tracker on sourceforge, which naturally caught the attention of Mark McCurry, currently running the ZynAddSubFX project.
As far as Zyn is concerned, I do so wish for good things to happen to it in the future. I suspect there's both lurkers and devs on this list with some interest in zyn, so with the indulgence of everyone concerned I'm presenting a thread from Zynaddsubfx-user. I hope Mark doesn't mind, but airing this here might somehow prove helpful. Hope so. -------- Original Message -------- Subject: Re: [Zynaddsubfx-user] more on improved jack io Date: Thu, 13 Aug 2009 19:09:41 +1000 From: cal <[email protected]> To: Mark McCurry <[email protected]> CC: zynaddsubfx-user <[email protected]> References: <[email protected]> <[email protected]> Mark McCurry wrote: > Cal, > > I would like to integrate in your patch into the main branch, as better > jack and alsa audio are something that is desired, but it does look like > it currently needs some extra work. > For the previous patches, they did get out of date before I had too much > of a chance to integrate them. > For the previous iteration of this patch, I do believe that I asked > Harald Hvaal to attempt to integrate some of your work after contacting you. > He told me that he did email you, but he did not get a response. > > In the diff, it looks like you took the changes that you made to an > earlier version and just diffed it with current code. > This generates an unreasonable amount of noise to hide the signal. > There are also a good number of stylistic/superficial differences > (REALTYPE -> zynsample_t , whitespace differences, Master -> zynMaster , > etc) (in my opinion). > > If the diff was readable, then it would have a good chance to get into > the main git branch, but for now it is illegible. > I apologize for letting it balloon to this size and I am still > interested in integrating parts into the git code, but it needs to have > the fat trimmed before that can happen. > > --Mark McCurry > (If you prefer that this discussion occurs on the mailing list, then > that is fine with me) > hi Mark, As patch reviews go, that one's probably about as naive and shallow as they come. I do appreciate your mail though, and I've cc'd the user list as suggested - perhaps a wider audience might help the discussion. In dismissing "stylistic/superficial differences", I suspect you have no clue as to why I considered those changes desirable and/or necessary from a software engineering perspective, as distinct from merely stylistic. From your review, I also suspect there's been little or no analysis of what it might take to improve the structure of the audio and midi drivers, and to have zyn use jack's reported samplerate and buffer size. And no comment whatsoever on how well or badly I've achieved those goals. Naive in the extreme. On the subject of whitespace - the complete absence of whitespace and rational indentation in the official code is one of the main reasons (but not the only one) why zyn is in danger of bit-rotting its way to oblivion. Code like that was normal in 2002, but you'd be hard pressed to get any serious coder to even look at it today. In my humble opinion, the whole codebase needs the whitespace issue addressed if the code's to have any future. I started looking into the zyn code because I needed it to work well and reliably, which the official codebase does not do. What I've actually attempted is to take what I consider the latest interesting version of the code (2.4.0, released by paulnasca) and fix those broken elements that were causing me grief. I needed jack audio/midi to work well, so I fixed it. I saw alsa audio out as potentially useful for simple performance, so I added it. My patch is clearly labeled "experimental", so if anyone else finds it interesting or useful, then that's cool too. I'm pretty comfortable with what I've achieved so far. Jack audio is better, jack midi works well although the structure is far from ideal, or even good practice. I'm surprised you didn't notice that in your review of the patch. I know how to resolve that, but it's going to take even more serious restructuring to accommodate it properly. If and when I manage to get that together, I predict that that too will be summarily dismissed as just more fat to be trimmed. I'm also quite comfortable with the fact that my personal goals are way out of alignment with those of the "official" project. Over some months I've watched the changes going into git, and I'm less than enamoured with the changes since paulnasca's active involvement. In moments of melancholy, I do fear the official codebase is devolving ever so slowly toward becoming just a sad undergraduate fantasy. Naively sprinkling esoteric abstractions through the code while blissfully ignoring significant shortcomings in the code isn't likely to produce anything of value. Merging my audio/midi driver changes into git wouldn't be a trivial exercise, but really not all that hard. No offense, but I suspect neither you or Harald have the necessary skills (yet) to achieve that effectively. I don't see the current direction of the "official" development effort as interesting, hence I'm reluctant to engage in any serious fashion. cheers, Cal ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Zynaddsubfx-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/zynaddsubfx-user _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
