Jump to content
IGNORED

'FeralA' decoder -- free-to-use


Recommended Posts

The release 2.2.1B has been uploaded to the same place.

Fixed the problems.  I have asked some people privately to give feedback on the bass and general sound.

Was going to defer this -- but, after quite a bit of checking & double-checking, the results are pretty good, and the only expected change (if no bugs) is slight adjustment to bass.

 

Snippets will happen (again) when they get rerun later today.

 

https://www.dropbox.com/sh/1srzzih0qoi1k4l/AAAMNIQ47AzBe1TubxJutJADa?dl=0

 

Believe it or not, I usually make SW mistakes LESS often than most, but this is so complicated that it is amazing that this thing works at all.

I made TWO simple errors, and a tester would have caught it and fed it back to me very quickly -- but I have NO TESTERS.  In much software,

two mistakes might not cause failure -- this program has few opportunities for minor mistakes -- the program mostly works, or not.

 

I sure wish that this would be simple, like a DAW. (without graphics, I don't do GUI, I don't do Android, and I don't do Windows :-)).  Even the

base FreeBSD kernel is conceptually MUCH more simple...

 

 

 

 

Link to comment

Planning on release tonight.   It is like a game of Tetris to find the correct combo for equalization, and been trying to maximize both clarity and clean bass.   Too often, more bass means the bass becomes muddy.   When the bass is muddy, that means that the EQ is wrong.

 

There should be NO muddiness, NO nasal sound, NO overly-close miced sound, etc....   On top of that, the sound should be clean, VERY clean.   I believe that this goal is met in my currently testing version,.

 

Also: Almost all recordings don't need '--coff=-2'.   The only settings that seem to needed very often are:  --fw=classical.   For old Carpenters or certain Linda Ronstadt, need --fa=I.   It appears that since everything just might be 100% accurately aligned, if the recording has not been normalized, now the ---coff no longer needs to be changed from default.


Once the best of all of those conditions are met, MOST LIKELY the bass EQ will be nearly flat, because that IS the goal.

 

Last night, I had a good prospective BASS EQ, but it bothered me a little bit, still too muddy.   So, I played some more tetris, moving the EQ blocks around, and found another VERY SIMPLE combination that produces more clean sound yet, and also increased the bass just a little (per request.)   This is very time consuming to do, because it isn't like trying to find the 'most bass'...   It is a combination of a LOT of conflicting choices.

 

I am trying to avoid pushing my own taste (I tend to like a more crisp, clean sound with super-tight bass.)   Most recordings do not naturallly sound like what I like, and I noticed that if I make the mistake to allow my taste to influence the results, then people do NOT like the sound.

 

Right now, I have more bass than the last announced release, more clean transients, MUCH more clean highs (they temporally match the lows much more closely), and have a very aggressive rolloff below 20Hz (still good response down to 20Hz.)

 

I am testing right now -- I could have released at 9:00AM and forgot it for now, but trying to eliminate an unnecessary iteration, and get the LF problems solved.

 

Once the LF problems are solved, I don't know what else is wrong!!!

I am planning for 9:00PM tonight.

 

John

 

Link to comment

Release V2.2.2J is working very nicely.  It is at the usual location, but only 1/2 way through the demos.   They will be uploaded when complete.

I am now offering the decoder at other sites, it is REALLY good now.

About the bass -- I pushed it as far as I can, but if I add too much 1st order bass, it muffles the vocals.  To get more bass, there must be some post decoding mastering.

 

Decoder location (been available for a while): https://www.dropbox.com/sh/1srzzih0qoi1k4l/AAAMNIQ47AzBe1TubxJutJADa?dl=0

 

Snippet Demos (about 1Hr away): https://www.dropbox.com/sh/tepjnd01xawzscv/AAB08KiAo8IRtYiUXSHRwLMla?dl=0

 

The *only* known caveat is noted in a message in the decoder download area.   it is about the de-emphasis, and which route to take.  I have chosen the most conservative (and probably most likely correct) choice for this release.

 

At this release, the new decoder development becomes my secondary project, but my primary project will help support the decoder.  I am writing a simple little set of subroutines that will automatically convert ANY Laplace domain filter spec to 'z' domain -- with NO limitations about order, etc.   I know how to do it, but will take a few days.

 

John

 

 

Link to comment
1 hour ago, John Dyson said:

Release V2.2.2J is working very nicely.  It is at the usual location, but only 1/2 way through the demos.   They will be uploaded when complete.

I am now offering the decoder at other sites, it is REALLY good now.

About the bass -- I pushed it as far as I can, but if I add too much 1st order bass, it muffles the vocals.  To get more bass, there must be some post decoding mastering.

 

Decoder location (been available for a while): https://www.dropbox.com/sh/1srzzih0qoi1k4l/AAAMNIQ47AzBe1TubxJutJADa?dl=0

 

Snippet Demos (about 1Hr away): https://www.dropbox.com/sh/tepjnd01xawzscv/AAB08KiAo8IRtYiUXSHRwLMla?dl=0

 

The *only* known caveat is noted in a message in the decoder download area.   it is about the de-emphasis, and which route to take.  I have chosen the most conservative (and probably most likely correct) choice for this release.

 

At this release, the new decoder development becomes my secondary project, but my primary project will help support the decoder.  I am writing a simple little set of subroutines that will automatically convert ANY Laplace domain filter spec to 'z' domain -- with NO limitations about order, etc.   I know how to do it, but will take a few days.

 

John

 

 

 

The snippets are ready.   I pushed the bass as far as I dare.   If enough people think that there should be less, I can trim off 3dB in the below 50Hz range immediately, still following the rules.

 

Link to comment
39 minutes ago, John Dyson said:

I can trim off 3dB in the below 50Hz range immediately, still following the rules.

 

image.png.e1acac1b60ab2b54f46d67ecb7da48b2.png

 

This is the close-miked bass response of my speaker (rated at +/- 0.5dB up to 19Hz @88dBSPL 1W/1m). Mind the smoothing of 1/12th oct.

This speaker is tuned to have inaudible THD at these rates, even up to all you see there - e.g. at 17Hz we're 3dB down, but THD is still inaudible. Meaning: You won't hear a thing from 20Hz and beyond at 88dBSPL (no harmonics audible).

 

I state the above, in order to explain that a bit more or less bass will not color the sound whatsoever, with the claim that any regular speaker will heavily color in the lower regions because "THD" was not taken into account as such, and especially at the lower registers nobody knows how the particular bass is to sound. Also: listening to such undistorted bass requires re-learning how to listen.

 

What is my message ?

You can't arbitrarily change a whopping 3dB down or up and think it is "OK". If I would trim this speaker only 0.5dB in any direction and in any smaller or larger frequency range in that region (like under 50Hz), the windows go out or there's virtually no bass left.

The story above is there to tell that this is not changing the bass, but making it way louder or way less (which is never what your notion of it will be). For louder, think of deep-down-earth sound emerging. Nice for 5 minutes and one track, but after that a sheer flavor you want to get rid of. Same with fewer bass. It readily will be observed as no bass at all. No color change (in my mere special case) - just SPL change.

 

If you mangle with this, all is in destruction right away. And this is not only theory because this speaker (and the tuning of it) exists for real - it is also emphasized by the Fleetwood Mac snippets from this week. What I get from that is inconsistency. No unision within even one voice (a voice is also an instrument). This with the side note that the "RAW" version as you present it, is already heavily mangled with. Still you present it (and use it yourself ??) as a reference for something that should have improved upon.

image.png.9d4405fc66eab067380ee344a84c248a.png

 

(those dates/times are from the moment I downloaded it)

 

John, I hope you can work with this and that it helps you.

Peter

 

Lush^3-e      Lush^2      Blaxius^2.5      Ethernet^3     HDMI^2     XLR^2

XXHighEnd (developer)

Phasure NOS1 24/768 Async USB DAC (manufacturer)

Phasure Mach III Audio PC with Linear PSU (manufacturer)

Orelino & Orelo MKII Speakers (designer/supplier)

Link to comment
9 minutes ago, PeterSt said:

 

image.png.e1acac1b60ab2b54f46d67ecb7da48b2.png

 

This is the close-miked bass response of my speaker (rated at +/- 0.5dB up to 19Hz @88dBSPL 1W/1m). Mind the smoothing of 1/12th oct.

This speaker is tuned to have inaudible THD at these rates, even up to all you see there - e.g. at 17Hz we're 3dB down, but THD is still inaudible. Meaning: You won't hear a thing from 20Hz and beyond at 88dBSPL (no harmonics audible).

 

I state the above, in order to explain that a bit more or less bass will not color the sound whatsoever, with the claim that any regular speaker will heavily color in the lower regions because "THD" was not taken into account as such, and especially at the lower registers nobody knows how the particular bass is to sound. Also: listening to such undistorted bass requires re-learning how to listen.

 

What is my message ?

You can't arbitrarily change a whopping 3dB down or up and think it is "OK". If I would trim this speaker only 0.5dB in any direction and in any smaller or larger frequency range in that region (like under 50Hz), the windows go out or there's virtually no bass left.

The story above is there to tell that this is not changing the bass, but making it way louder or way less (which is never what your notion of it will be). For louder, think of deep-down-earth sound emerging. Nice for 5 minutes and one track, but after that a sheer flavor you want to get rid of. Same with fewer bass. It readily will be observed as no bass at all. No color change (in my mere special case) - just SPL change.

 

If you mangle with this, all is in destruction right away. And this is not only theory because this speaker (and the tuning of it) exists for real - it is also emphasized by the Fleetwood Mac snippets from this week. What I get from that is inconsistency. No unision within even one voice (a voice is also an instrument). This with the side note that the "RAW" version as you present it, is already heavily mangled with. Still you present it (and use it yourself ??) as a reference for something that should have improved upon.

image.png.9d4405fc66eab067380ee344a84c248a.png

 

(those dates/times are from the moment I downloaded it)

 

John, I hope you can work with this and that it helps you.

Peter

 

 

 

 

 

STATUS:

 

READ THIS VERY CAREFULLY, then READ IT AGAIN:

 

Maybe you don't understand what I am dealing with...

The output from decoding is approx +30dB of single pole from 500Hz on down.


The exact frequencies are NOT known.   The exact shape of the curve (if there are bends) are NOT known.

 

There are no specs.   There are no useful TELLS that I can find.

 

It is nice that you try to provide 'helpful' details.

One   thing that might help is a clean, pre-encoding reference so that I can match the curve.

 

I have been successful using 'tells' until this LF EQ needed to be done....   Don't help with  theory of ANY kind or measuements of the results --

help with reference material.

 

My hearing varies by +-5dB within an hour.  (My BP is like that also -- totally unstable.)

 

 

===========================

 

If you REALLY want to help -- I can provide a raw decoder (no LF EQ), and make sure that you understand how to use the --pvdl commands that create 1st order EQ.

 

Please help create a flat decoder output based upon the output of the decoding iterations...

 

THAT WOULD HELP.   All of the theory is already known, and thee fact that there is a large variance is understood and WELL KNOWN.

 

Being blunt -- my hearing is berserk and trying to finish the project for people who are hearing CRAP instead of the recordings that they purchased.   Sometimes people don't even know that they are listening to crap, but the decoder -- WITH THIS ONE LAST STEP OF EQ - can  clean up the recordings.

 

I JUST CANNOT HEAR WELL (or reliably -- sometimes I can hear well, but don't know when.)


This is ALL BASED ON BUILDING BLOCKS, and I can give you an idea of some of the rules if you want to try!!!

 

 

 

 

 

 

Link to comment

Here is another challenge -- well meaning people suggesting that they want more bass here or there, but are using FeralA recordings as their listening reference.

 

Using subjective comparisons and subjective measurements SUCK BADLY, but that is all I have.   I strongly advise against depending on subjective measurements, because I am in subjectivity hell.

 

Are the audiophiles so blind about how bad the recordings sound?   Even with my bad hearing, I can hear it.   The decoder works almost perfectly at HF and matches recordings very well.

 

The LF, that is all needs help - below 1kHz.   Then YOU can have hiss free, clean recordings...   Apparently, it isn't within my body's ability to do reliable LF comparisons.


So be it -- I cannot hear LF reliably anyway -- it works well enough for me  -- got it?

 

Wallow in the hiss laden, swishy highs, calliope bass and enjoy it?   Sorry, I cannot let you do that to yourself.

 

I know about +-3dB is a lot, but the steps that I have are:  -1.5dB, -3dB, -6dB, -9dB, -10dB, -12dB.    These are the steps, the settings are NOT variable between these values.  The frequencies ARE variable.   THAT is where I get the '3dB' from.

 

I didn't realize, maybe you didn't understand that fact...

 

 

Link to comment

I am offering my ONLY A/B comparison that I JUST GOT several days ago.  Someone on Hoffman helped me...

 

One is old, pure vinyl (but ticks and pops).

The other is the decoder output...

 

Other than the bad surface effects, doesn't the decoder sound as good or better?

After some things that I have recently read - I wouldn't be surprised if many wouldn't prefer the VINYL version.

 

This is what makes me cry -- it is so obvious that the decoder IMPROVES the recordings, but perfectionism is delaying better/more clean/clear listening...

 

Just listen to these -- they are short, simple and obvious....

 

VINYL (non FA):

JustOneLook-vinyl-snip.flac

 

DECODER (from CD):

JustOneLook-dec-snip.flac

 

 

 

Link to comment
28 minutes ago, John Dyson said:

I am offering my ONLY A/B comparison that I JUST GOT several days ago.  Someone on Hoffman helped me...

 

One is old, pure vinyl (but ticks and pops).

The other is the decoder output...

 

Other than the bad surface effects, doesn't the decoder sound as good or better?

After some things that I have recently read - I wouldn't be surprised if many wouldn't prefer the VINYL version.

 

This is what makes me cry -- it is so obvious that the decoder IMPROVES the recordings, but perfectionism is delaying better/more clean/clear listening...

 

Just listen to these -- they are short, simple and obvious....

 

VINYL (non FA):

JustOneLook-vinyl-snip.flac 2.68 MB · 2 downloads

 

DECODER (from CD):

JustOneLook-dec-snip.flac 1.71 MB · 1 download

 

 

 

 

John, I'm very late to this, so forgive a stupid question - What does it matter what the decoder does to a needle drop (if I'm understanding correctly)? Are you saying this vinyl was recorded with "feral" A processing?

 

One other remark: I've listened to a few of the J version smippets.  The vocals are outright stunning.  I'm not sure about the midbass, though I'm listening on two little Pioneer desktop speakers (good enough to sound really good with good input, though), so that could be it.  What I mean is that I can hear the dB level of electric bass (for example on Here Comes the Sun) dropping as the frequency goes up.  It's not that I'm missing the old distorted bass, but rather that the level of the bass should be internally consistent over frequency within the same song.  This could be a problem with the crossover levels in my speakers - I'd have to listen on my main system to be more certain.

 

Are there test signals you can run through the decoder to see whether I'm off base here?

 

 

One never knows, do one? - Fats Waller

The fairest thing we can experience is the mysterious. It is the fundamental emotion which stands at the cradle of true art and true science. - Einstein

Computer, Audirvana -> optical Ethernet to Fitlet3 -> Fibbr Alpha Optical USB -> iFi NEO iDSD DAC -> Apollon Audio 1ET400A Mini (Purifi based) -> Vandersteen 3A Signature.

Link to comment
1 hour ago, Jud said:

 

John, I'm very late to this, so forgive a stupid question - What does it matter what the decoder does to a needle drop (if I'm understanding correctly)? Are you saying this vinyl was recorded with "feral" A processing?

 

One other remark: I've listened to a few of the J version smippets.  The vocals are outright stunning.  I'm not sure about the midbass, though I'm listening on two little Pioneer desktop speakers (good enough to sound really good with good input, though), so that could be it.  What I mean is that I can hear the dB level of electric bass (for example on Here Comes the Sun) dropping as the frequency goes up.  It's not that I'm missing the old distorted bass, but rather that the level of the bass should be internally consistent over frequency within the same song.  This could be a problem with the crossover levels in my speakers - I'd have to listen on my main system to be more certain.

 

Are there test signals you can run through the decoder to see whether I'm off base here?

 

 

With the 'vinyl' (needledrop) version, that is the ONLY reference that I have from elsewhere that I can use.

The 'decoded' version comes from a a typical FA CD.

 

I am NOT (never) been frustrated with you @Judbecause you have been fair, and asked questions before critiiczing (then being critical when knowing the situation is okay.)


At this point, the decoder IS working very well, but DOES have bass problems.   One (important) problem is that perhaps 1/2 of the people who are making criticism are using FA recordings as a basis -- terrible waste of time.   As you know, FA has somewhere between 0 and 20dB of bass boost at approx 80Hz depending on phase of the moon.

 

PS:  ADD-ON after reading al of below again -- I KNOW that increasing the 80Hz Q to 1.17 (DolbyA 80Hz band Q) WILL increase the 'boom' factor...  Still working on it.

 

Here are my constraints:   EQ starts at about +30dB (probably a little less) at about 500Hz, and diminishes to approx 0dB too much at about 20Hz.  (That is, the EQ needs to be like -30dB at 20Hz -- or something similar.)    There is a gain curve that makes a flat response.   Also, this gain curve was created with 1960's through 1980s' hardware, so I must assume that as few equalizers as possible were used.   Most likely 6dB, 9dB, 10dB and/or 12dB used when possible.   All of the dBS must add up to between 25 and 30dB.   There would be FEW EQs at -3dB -- those take just as much HW as -6 or -9dB.

 

For example, the current version of the decoder which gives the nice Linda R results has this EQ sequence (approx):  500Hz, -6dB; 250Hz, -9dB; 200Hz, -9dB; 100Hz; -6dB, plus a + approx 5dB at 80Hz/Q=1.0 boost.   (The boost is needed -- complicated, but did lots of reverse engineering on that one.)      This seems to give a balanced sound, vocals don't become woody/heavy, string orchestral instrumets sound normal (not too heavy, ,not too thin.)   It sometimes seems like it is underestimated how damned much testing that I do, I WISH, I BEG for some kind of spec, but none exists.

 

The current released V2.2.2J version has one more EQ -- that is, -3dB at 50Hz.   I removed it for my new testing, I keep vacillating.

 

Some my my tests include some selections from the Rumors album.   With or without the -3dB at50Hz, there is NO WAY to get the calliope-type bass that the FA version creates.   I just cannot do that.     If I let ANY MORE 1st order bass ANYWHERE through, the vocals get really ugly.   This isn't only about normal vocal freqs like 100Hz, but even 20Hz of 1st order EQ can screw-up vocals.  I hate to break-down and add another 2nd order EQ!!!

 

Right now, I am living 100% in the 1st order EQ world, except for the 80Hz boost (needed for DolbyA compensation.)   The boost is 0.75*7, or about 1/2 of the compression in the LF (80Hz) band.

 

I have pushed the LF as hard as it can be pushed without making everything sound muddy (but even 2.1.0F DID sound muddy.)   I really hesitate to do this, but maybe there needs to be MORE 80Hz boost, maybe another 5dB.  I really, really hate to do that -- maybe 40Hz would be better.   Anything in the 80Hz range will screw-up vocals.  To me, 0.75 * 7 dB total (approx 5dB) makes a lot of sense from a couple of directions, but willy-nilly adding another 5dB is hard to justify.  I cannot figure any technical reason to do so -- therefore I resist it.

 

Even then -- listen to the vinyl vs. the decoded-from-CD - if the goal is to sound as good as (clean) vinyl, it seems to already have met that goal, but seems that NO-ONE is happy.

Is the deep-low bass the only problem?   It is so tricky to add more 1st order bass,without making voices sound REALLY BAD.

 

I am so frustrated right now that I cannot sleep.   The Alex thing breaks my heart, then theres the 'never satsified' elite, pontification without helping -- that also frustrates.

 

Thanks for you kind input, I will consider it and see what I can do.

Just might have to add +5dB at 40hz, but that is more HW (for the olden days), and really worry that I am 'tweaking' instead of 'solving'.   It is going to take hours (at least) to figure out if +5dB at 60Hz, 40Hz, or is it +3dB, and what Q value?  Q=0.707, Q=0.8409, Q=1.0, Q=1.19...  What Q?   You see what I mean?   I TRY to be more careful than just tweak.

 

Tweaking creates lots of undesired 'whack a mole' games that morph into rabbit chasing.   I avoid both - they are terrible time wasters.

 

I am working hard on this -- I sure hope that my cr*ppy mood doesn't screw up my very small family's Easter tomorrow.  I am the only 'support' for our whole family now, and with Alex passing on, and also unconstructive attitudes -- is trying to do something nice for people even worth it?

 

Link to comment

Thanks @Judyou forced a review of the 2nd order 80Hz boost, found out that it was disabled.  Probably the reason why the bass was 'thin'.   I'll post an example of a few Rumors cuts, and see if they don't sound a lot better...

 

Just added back in the 80Hz boost (shouldn't have been removed, but I seem to make that kind of mistake very often)...

Try these:

rumors-08-boomboom.flac

st-boomboom.flac

rumors-02-boomboom.flac

 

Link to comment

More news about fixing the lack of 'boom boom'.   Apparently, just re-enabling the EQ after decoding is NOT sufficient.

 

The 'boom boom' requires a pre-emphasis/de-emphasis scheme, that is why the bass wasn't quite right yet.

I could hear the problem before taking a break, but didn't have all my resources together to fully understand what was going on in the sound.

 

When working on the decoder, it is all about 'tells'.    Since I cannot hear reliably, I must depend on other aspects of the sound.   Since my brain

is almost 'programmed' to intimately understand dynamics processing, I can hear a signal and detect what kind of dynamics it has.   I heard that the

'boom boom' had the wrong shape and needed 'sharpening.'

 

Once figuring out that a pre-emphasis/de-emphasis is needed, the question that needs answering?  How much?

 

From my initial evaluation about the required EQ -- I determined that 0.75dB per layer is needed, with 7 layers, that means a total gain of approx 5.25dB is required.   However, since we are working against 7 80Hz/Q=1.17 bandpass filters, then we don't do the EQ boost in one step, but must do it in 7 steps to be totally accurate.  (I did find that appears to be true a few weeks ago.)

 

However, once finding the 7 * 0.75dB gives a plausible level, the shape of the 'boom boom' was wrong -- the transient character is wrong.   So, instead of just doing 7*0.75dB boost after decoding, it appears to be most correct to do SOMETHING like 7 * -0.75dB cut BEFORE processing, and then 7 * 1.5dB AFTER processing.

 

One important question?   Should the EQ be done on EACH layer, or should it be done before and after the whole set of processing.  I'll try doing the EQ on the whole signal on a layer by layer basis as an experiment.   Sadly, doing the EQ internally on the 80Hz band will NOT do what one might intuitively expect though.   An actual EQ (pre/de) would need to be done.

 

Unless I run into troubles, I just might have this ready for 9:00PM tonight.

 

John

 

Link to comment

Good news -- I figured out a minimal design response to the 'shape' of the bass envelope...

 

Before decoding, apply -10dB/Q=1.0, at 100Hz.

 

After decoding, apply 10dB/Q=1.0, at 100Hz,

Also, apply 6dB/Q=1.0 at 80Hz.

 

The above prescription appears to reproduce a more clean version of the FA 'calliope' sounding bass.

The prescription might change -- the 100Hz before/after EQ makes sense, and it does seem to be possible that using 100Hz instead of 80Hz is more correct.

 

The bass is more strong than before, and appears to be shaped more correctly.

 

Link to comment

Here is an interesting demo -- Snippets of Linda Ronstadt's 'Just one Look'.

 

1)  Vinyl

2)  decoded  W/O the LF EQ

3)  decoded WITH the LF EQ.

 

This JUST MIGHT be an example of 'groove size control' on vinyl.   Note that the 'WITH' EQ has more of the calliope type bass.   The vinyl actually sounds similar to the decoded version...

 

This is INTERESTING for sure...

 

 

JustOneLook-vinyl-snip.flac JustOneLook-dec-snip.flac JustOneLook-NEWdec-snip.flac

Link to comment
1 hour ago, John Dyson said:

Here is an interesting demo -- Snippets of Linda Ronstadt's 'Just one Look'.

 

1)  Vinyl

2)  decoded  W/O the LF EQ

3)  decoded WITH the LF EQ.

 

This JUST MIGHT be an example of 'groove size control' on vinyl.   Note that the 'WITH' EQ has more of the calliope type bass.   The vinyl actually sounds similar to the decoded version...

 

This is INTERESTING for sure...

 

 

JustOneLook-vinyl-snip.flac 2.68 MB · 1 download JustOneLook-dec-snip.flac 1.71 MB · 2 downloads JustOneLook-NEWdec-snip.flac 1.63 MB · 2 downloads

The EQ has been updated -- now it is less extreme, and more correct.  (That is, the NEWdec version is more normal sounding.)   This is not reflected in the posting though.

 

 

Link to comment

Since the decoder is very close to complete, one of the first 'decoder' oriented items on my list is to produce the source for a VERY VERY stripped down one.  This would allow someone (NOT ME) to  port the SW to a phone type device.   It might even run realtime on a phone with all of the fancy capabilities disabled.


BAD NEWS-  a lot of the anti-distortion/hilbert stuff will need to be removed for low end software..  There is still VERY UGLY code in the decoder, and I need to clean that up first.

There is some genius code in the decoder also -- but it is hard enough to read anyway...

 

 

Link to comment

@John Dyson First of all, Happy Easter!

 

Thanks so much for your consideration of my reply, and your work on the bass.  I have to say, with apologies, that it is difficult for me to tell on a casual listen that the new decoding is necessarily correct/better.  It sounds to me as if the loudness of the instrument is more consistent over frequency, but I can't be certain.  Just because of McCartney's bass line on "Here Comes the Sun" (intended to be in the background - therefore not emphasizing certain notes as part of the rhythm, as the bass does in Just One Look), it's easier for me to hear consistency in loudness over frequency range in that song.

 

I was wondering if it would be possible to do something like the following: 

 

- Use a candidate decoding on Here Comes the Sun

- Isolate the bass line after decoding using filtering/EQ

- Graph loudness vs. frequency for the bass line

 

Was just thinking, even though humans are actually pretty good at judging loudness in certain situations, surely a measurement would provide greater reassurance.  It would be a measurement of consistency across frequency within a song or part of a song, and therefore not prey to the subjectivity of "Is this the most natural sounding level of bass for this song?"  It would not necessarily let you know you had the overall bass level correct, just that if all the 50hz bass notes are louder than all the 100Hz notes in a bass line where particular notes are not being emphasized as part of the song structure/rhythm (i.e., the bass line is one where the notes are generally intended to be of similar loudness), you know there's a problem.

One never knows, do one? - Fats Waller

The fairest thing we can experience is the mysterious. It is the fundamental emotion which stands at the cradle of true art and true science. - Einstein

Computer, Audirvana -> optical Ethernet to Fitlet3 -> Fibbr Alpha Optical USB -> iFi NEO iDSD DAC -> Apollon Audio 1ET400A Mini (Purifi based) -> Vandersteen 3A Signature.

Link to comment

Thanks everyone.   I had a bad day yesterday, greatly frustrated.   Not even knowing that I had disabled the EQ that would be a 2/3 fix for the problem.   (The decoder has LOTS of stuff ALREADY built-in for contingencies, a lot of times 'adding' a feature is just enabling it -- the decoder might already have the capability built-in.)

 

I had EVERY intention of a release today, but every time I start working on it, I fall asleep.   I am too tired/sleepy to do anything useful right now.

 

Trying to send out the release when starting now and when I am in this state of fatigue -- that is a plan for failure.

The demos have been running, just complete and I'll be doing a review of them, and checking to  make sure that there are no bad surprises. 

 

There *WILL* be a release tomorrow.

 

  This is REALLY TRICKY when no specs!!!   I can 'program' in my sleep, and do EE stuff even more easily than program.   However, not knowing what the specifics of what SW is supposed to do -- guessing just doesn't work.  Even worse -- 'tweaking' is evil and frought with mistakes.

 

Thanks for the feedback.

Tomorrow is almost a promise for the release.

 

John

 

Link to comment
5 hours ago, John Dyson said:

Thanks everyone.   I had a bad day yesterday, greatly frustrated.   Not even knowing that I had disabled the EQ that would be a 2/3 fix for the problem.   (The decoder has LOTS of stuff ALREADY built-in for contingencies, a lot of times 'adding' a feature is just enabling it -- the decoder might already have the capability built-in.)

 

I had EVERY intention of a release today, but every time I start working on it, I fall asleep.   I am too tired/sleepy to do anything useful right now.

 

Trying to send out the release when starting now and when I am in this state of fatigue -- that is a plan for failure.

The demos have been running, just complete and I'll be doing a review of them, and checking to  make sure that there are no bad surprises. 

 

There *WILL* be a release tomorrow.

 

  This is REALLY TRICKY when no specs!!!   I can 'program' in my sleep, and do EE stuff even more easily than program.   However, not knowing what the specifics of what SW is supposed to do -- guessing just doesn't work.  Even worse -- 'tweaking' is evil and frought with mistakes.

 

Thanks for the feedback.

Tomorrow is almost a promise for the release.

 

John

 

 

John, out of curiosity I applied an EQ to JustOneLook-NewDEC to shape the spectrum more like the vinyl version. I like it better this way, but maybe it's just me. If interested give this parametric EQ a try:

 

Peak F=60Hz,   Gain=-5dB,      Q=2.0

Peak F=400Hz, Gain=-2.5dB,  Q=0.5

Peak F=2kHz.    Gain= 3dB,      Q=0.6

HS    F=7KHz,    Gain=-12dB 

 

Green line is the spectrum of the vinyl clip, blue is JustOneLook-NewDEC with the above EQ:

image.thumb.png.c7b3f36d0556ef28a07fac7cb94cd72a.png

 

Link to comment
On 3/30/2021 at 10:16 AM, John Dyson said:

I am talking about the technology -- that is what the project is about.   This is VERY VERY heavy engineering, much more complex than the FreeBSD VM system.  I would think that some people might be interested.   Also, the complexity being not as great on FreeBSD, I had between two and four people to work with me -- is anyone willing to help here?

 

I understand this is difficult. Note that I am assuming you actually have the documentation to FeralA and since it is most likely a non perfectly reversible process, you are doing your best to approximate its inversion as accurately as possible. If it is a superimposition of several non linear filters, then the inversion risks to behave like a chaotic system. Not an easy feat.

 

On 3/30/2021 at 10:16 AM, John Dyson said:

About FreeBSD -- I actually wrote 1/2 of the 2nd kernel after the agreement between AT&T and Berkeley.  This is all while I was working under special permission from Bell Labs to do the FreeBSD project.  That put me into a strange, but interesting position.   Back then, we did have detailed discussions in our mailing lists, but not everyone was party to them...   Bell Labs (the AT&T research counsel) offered me a research grant to continue my FreeBSD work, but instead I decided to take a job in the Bay Area for over $1M/yr.

 

That's why I recall your name. You did a great service, and I think you are doing it now as well. As for the pay, it is easy to get a job for a lot of money. I made it clear to some people that approached me for a (legal!) job that I was not interested despite the $1M/yr and no taxes wage because I did not agree with their use of the technology. I earn a fraction of that amount now, but I am one of the principal architects at ARM and I am the lead for the security analysis of the most critical component of the just announced ARM V9 architecture (the Realm Management Extensions of the Confidential Compute Architecture), as well as the lead designer of the memory encryption components for the current and future versions of that sub-architecture. This involves also the development of cryptography and I am the designer of the QARMA tweak able block cipher. Which is used in the PAC, which I also co-developed while at Qualcomm. My main goal is to make this technology available to as many people as possible – I am sure you can relate to that – and I chose to work at ARM because I want to make it as "green" as possible. Why am I telling this? Because we should not make it into a pissing context, but I am used to develop stuff for a long time in order to make sure I release something stable. Otherwise people would not take me seriously.

 

On 3/30/2021 at 10:16 AM, John Dyson said:

Maybe I should dismiss the competency of the user base, and feel that they aren't worthy to know what is going on?

I hope for more in people, NOT LESS.

 

Well, I think I am competent - as a mathematician that has written a PhD thesis under the supervision of one of the most significant mathematicians of the 20th century. I am also a trained composer and an active musician.  So I understand what you are saying.  But I am not encouraged to download a tool every few hours just to read that there was a serious mistake or oversight and so on.

 

On 3/30/2021 at 10:16 AM, John Dyson said:

I have enough respect NOT to censor the information.  Those not interested can filter it themselves, I am not compelling ANYONE to read stuff.

 

Do not censor anything, just select what you output. You are not doing this for exposure right? This is a service. The right "marketing" is important also for free stuff if you want to see it adopted.

 

In respect, sympathy, and friendship,

 Roberto

Link to comment
1 hour ago, mocenigo said:

 

I understand this is difficult. Note that I am assuming you actually have the documentation to FeralA and since it is most likely a non perfectly reversible process, you are doing your best to approximate its inversion as accurately as possible. If it is a superimposition of several non linear filters, then the inversion risks to behave like a chaotic system. Not an easy feat.

 

 

That's why I recall your name. You did a great service, and I think you are doing it now as well. As for the pay, it is easy to get a job for a lot of money. I made it clear to some people that approached me for a (legal!) job that I was not interested despite the $1M/yr and no taxes wage because I did not agree with their use of the technology. I earn a fraction of that amount now, but I am one of the principal architects at ARM and I am the lead for the security analysis of the most critical component of the just announced ARM V9 architecture (the Realm Management Extensions of the Confidential Compute Architecture), as well as the lead designer of the memory encryption components for the current and future versions of that sub-architecture. This involves also the development of cryptography and I am the designer of the QARMA tweak able block cipher. Which is used in the PAC, which I also co-developed while at Qualcomm. My main goal is to make this technology available to as many people as possible – I am sure you can relate to that – and I chose to work at ARM because I want to make it as "green" as possible. Why am I telling this? Because we should not make it into a pissing context, but I am used to develop stuff for a long time in order to make sure I release something stable. Otherwise people would not take me seriously.

 

 

Well, I think I am competent - as a mathematician that has written a PhD thesis under the supervision of one of the most significant mathematicians of the 20th century. I am also a trained composer and an active musician.  So I understand what you are saying.  But I am not encouraged to download a tool every few hours just to read that there was a serious mistake or oversight and so on.

 

 

Do not censor anything, just select what you output. You are not doing this for exposure right? This is a service. The right "marketing" is important also for free stuff if you want to see it adopted.

 

In respect, sympathy, and friendship,

 Roberto

 

 

I seem to remember 'Roberto' on the FBSD mailing lists.   Are you the same guy?

 

Sorry for the rude or (actually frustrated) response.   I have been under a lot of pressure trying to fix heisenbugs.   The most recent bug was a 'disable' that was both temporary and used a control variable of the wrong value, but then I forget during a disruption.   The bass is now correct -- been driving me nuts, because I didn't want to add an arbitrary bass boost, because I had already added the correct amount of bass manipulation.   I couldn't find the bug, until doing yet another code review, and noticing an effective if (0)(it was actually a control variable that was incorrect value.)

 

About the 'overly-non-selective information filter'.   I am at fault, but I am doing EVERYTHING alone.   Sure, some discussions, and some requests for help, but there is VERY VERY little interest in this project -- especially since I have burnt some people out.   Imagine doing this thing ALONE!!!  My hearing is bad, and causes strange judgement -- and ABSOLUTELY NO USEFUL OBJECTIVE MEASUREMENTS or specifications.   Imagine something of this complexity, and no guidelines, also depending on crazy hearing for comparing source/destination.  (I certainly avoid using my hearing for ABSOLUTE measurements, right? ;-)).

 

About the technology -- GOOD about your math background. I might need some help documenting the anti-MD.  There is an intuitive designed anti-MD scheme that I know is doing 'the right thing', but I cannot mathematically derive or prove it.   The 'proof of the pudding is in the hearing' :-).   I know what it does, but cannot show the math.   Basically, high the highest level sense, trims the sidebands by dynamically changing the dynamics attack speed, but aims for zero crossings.   The change in attack shape is much more fine grain than just a dynamic filter onto the gain control signal alone, but is controlled by the current audio wave shape and the current state (slew) of the gain control signal.   This is the 'anti-MD' which mitigates the DolbyA fog and keeps the decoder from sounding 'smudgy'.   There are some other 'anti-fog' protections, but the anti-MD is what allows the decoder to produce truly high quality results.   The exactly math might not be my concept of what is going on -- but it does *something* very very good.

 

Also, about the process being non-reversible.  YOU ARE 100% right.     There is some attempt to mitigate some of the damage by the anti-MD scheme above, and also some very careful controls on the gain control slew rate.   There are also some nonlinear operations on the gain control signal as part of the anti-MD, where each gain change is split into 8 components (to the 1/8 power), and on each step, the lower frequency cruft that is created is incrementally filtered.   Very heroic means are used to mitigate the damage from the insanely fast gain control.   In fact, just as in regular DolbyA units, the fast attack/release is closely mimicked so that the dynamics distortion at the lower frequencies (esp below <1kHz) are undone, that is -- the waveshape damage is corrected.   This is extremely important because human hearing is sensitive to waveshape below 1kHz.

 

*The specifics dynamics processing is done by the ONLY full capability SW decoder capable of decoding DolbyA materials -- a necessary component of the FA complex, and a very challenging project in its own right.  The anti-MD and other dynamics distortion mitigations are actually a component of the DolbyA recordings compatible decoder.

 

The release is on-track for 9PM tonight (USA eastern time), about +13Hrs from now.

I am doing the last minute, very intensive bug checks.  (I have NO testers, would NEVER EVER do this in real live, but no other way to do it.)


There is now a lot of tension to move on to some improvements.   Also, I have a private-curiosity project where I want to write a totally general purpose laplace to 'Z' domain conversion (blinear) so that I can throw away my single-purpose 2nd order converter.   I have some interest in upgrading the band splitting so that the brute force FIR filter can be replaced.   My interest is in less time delay so that some of the dynamics processing can wrap around the multi-band splitting filter.

 

Oh well -- working veryhard on the release.

 

 

 

 

 

 

Link to comment
7 hours ago, pkane2001 said:

 

John, out of curiosity I applied an EQ to JustOneLook-NewDEC to shape the spectrum more like the vinyl version. I like it better this way, but maybe it's just me. If interested give this parametric EQ a try:

 

Peak F=60Hz,   Gain=-5dB,      Q=2.0

Peak F=400Hz, Gain=-2.5dB,  Q=0.5

Peak F=2kHz.    Gain= 3dB,      Q=0.6

HS    F=7KHz,    Gain=-12dB 

 

Green line is the spectrum of the vinyl clip, blue is JustOneLook-NewDEC with the above EQ:

image.thumb.png.c7b3f36d0556ef28a07fac7cb94cd72a.png

 

Hey  --  thanks, that is useful.

You are very much seeing a bug that I just found -- EQ between 3k->9k should have been 3k->6k.   And a few other nits in that area.

The sound with that bug is kind of 'irritating', almost like a 'ghost' (like too much of a nonlinear aperture filter) around the sounds.

I think that I made that kind of gain-control distorted sound go away.   I am not sure that the spectrum is totally made the same though.

I really need to avoid parametric EQ though -- I believe that the scheme was created before or close to same time as Massenburg's creation.

 

I was 'forewarned' to try to stay with 1st order EQ -- that is one reason why the 80Hz 2nd order EQ only came to be about 6mos ago -- I just left it stupidly disabled, causing lots of frustration & embarassment.

 

THANKS AGAIN.

 

 

BTW -- I have done careful A/B on the Rumors album (and a few others) WRT BASS.   Found some interesting things out.   My idea of adding 6dB of 2nd order LF boost at 80Hz seems correct.   Something that WAS missing -- need for either -10dB at 80Hz or -6dB+-6dB at 80Hz pre-emphasis and de-emphasis.   The 'shape' of the bass wasn't quite correct until the pre-emphasis and de-emphasis were added.   The previous 80Hz boost missing was actually a bug, and I had thought that  the boost was already in the code.  I was NOT willing to add another 6dB boost, when I couldn't justify it.   Now, that problem SHOULD be reasonably resolved.

 

Also, that HF 'aperture' effect also came from a pre-emphasis/de-emphasis error, where it was too strong (9dB at 3kHz instead of the required 6dB.)   There is also an oddity that the pre-emphasis for 9kHz is -6dB, but the de-emphasis is actually something like 12KHz, +3dB.   Strange, huh?

 

Finding all of these little pre-emphasis and de-emphasis nuggets is very tedious & needs patience/persistence, because in the steady state, most of the time the pre/de  emphasis isn't audible.  However, when the dynamics of the sound comes into play, then the need for such is apparent.  Unfortunately, it took me 3-4yrs to realize the need -- I didn't understand why the HF was 'kind-of' dead sounding.   This is the MOST PAINFUL reverse engineering project that I have ever even conceived of!!!

 

I think that some of this persistence really bugs people at times -- but it is necessary to succeed at things like this.

 

 

 

 

 

Link to comment
9 hours ago, pkane2001 said:

 

John, out of curiosity I applied an EQ to JustOneLook-NewDEC to shape the spectrum more like the vinyl version. I like it better this way, but maybe it's just me. If interested give this parametric EQ a try:

 

Peak F=60Hz,   Gain=-5dB,      Q=2.0

Peak F=400Hz, Gain=-2.5dB,  Q=0.5

Peak F=2kHz.    Gain= 3dB,      Q=0.6

HS    F=7KHz,    Gain=-12dB 

 

Green line is the spectrum of the vinyl clip, blue is JustOneLook-NewDEC with the above EQ:

image.thumb.png.c7b3f36d0556ef28a07fac7cb94cd72a.png

 

 

I have produced a 'NEW2dec' version, using essentially what I plan to be the release tonight (still an open mind on it, though)...   Just to refresh, I'll provide the pointers to the clips:

 

vinyl:

https://www.dropbox.com/s/wgko1yljytaew3z/JustOneLook-vinyl-snip.flac?dl=0

old NEWdec:

https://www.dropbox.com/s/bqp6y53i2tg3h0e/JustOneLook-NEWdec-snip.flac?dl=0

the NEW2dec:

https://www.dropbox.com/s/cn2i4bw26vyiit6/JustOneLook-NEW2dec-snip.flac?dl=0

 

I ran 'NEW2dec' without hearing the new version until just before uploading.   No tweaks, and the decoder adjustment is based on listening to numerous

other recordings, NOW with the +6dB at 80Hz available along with the -12dB @80Hz pre-emphasis and +12dB@80Hz de-emphasis.

Also, the NEW2dec has the more correct HF pre-emphasis, instead of the version that gives a 'halo' effect around the HF details.


Waddya think?

Trying hard at this...  

When I do demos or tests like this, I NEVER 'tweak' to sound better -- this is what I have been planning for the V2.2.3A release tonight.  I can produce more debug versions before the final, but want to keep it really close to what is in the code now.   A LOT of recordings have 'passed the test', but a few are still a little 'strange' (e.g. the old Carpenters 1970 album.)

My mind is open for one more update.

 

I haven't looked at the spectrum in great detail yet -- average spectrums are problematical on compression/expansion like this.   It, of course, all depends on how much expansion was actually done -- so I guess that the averaged spectrum is helpful for a guideline and HELPFUL, just not precision comparison.

 

I'll give my own status report on the spectrum if it has serious problems.   I'd expect that  the bass is a little strong on this version -- but never know until a real measurement, right? :-).

 

John

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...