On Mon, Jan 17, 2011 at 01:52:07AM +0100, fons(a)kokkinizita.net wrote:
On Mon, Jan 17, 2011 at 12:10:20AM +0000, allcoms
wrote:
You can't carry on slagging off Jamin like
this. Yes, you are renowned as
being the most knowledgeable person on the list when it comes to DSP but
constantly berating the poor Jamin guys isn't doing anyone any favours.
I'm not 'slagging off' anyone. All it takes to correct this bug is to
change one '+' into a '-'. Something like changing
out = low + mid + high;
into
out = low - mid + high;
This is an error that any DSP student is allowed to make once, during
his first exercise on xover filters. It's not one that should remain
undetected for six years or so. Not if you test your code, or just
listen to its output. Not if you claim to be 'experts' as the only
response to legitimate criticism.
Please, either fork and fix Jamin, write a
kick-ass alternative that works
how you think Jamin should work or just ignore its shortcomings and leave
the poor devs alone! (I'm def. rooting for the second of these options btw)
I'm not really motivated to provide an alternative for the simple
reason that I don't really like music recordings to be processed
the way Jamin or most mastering tools do it.
OTOH I had the same opinion on voice auto-retuning, but that didn't
stop me writing the only usable open source retuner. The difference
is that zita-at1 was an interesting exercise, while providing an
alternative to Jamin isn't.
IIRC, Julien and some other folks were involved in writing an alternative to Jamin, called
NAMA, and it runs using ecasound and Perl. ISTR also that Fons offered them some advice on
how to do the xover filter correctly, and they accepted it and made use of it.
I'm looking forward to trying it out for the next Better Than Lahar album. The
mastering was the weak link in the first album, and I don't wish to repeat the same
mistake.
As for patching JAMIN, the offending code appears to be in process.c, around line #452 or
so, in the process_signal() jack callback function. But I don't understand what that
code is doing well enough to actually produce a patch, and I'm not going to use JAMIN
anymore anyway.
-ken