Jump to content
IGNORED

'FeralA' decoder -- free-to-use


Recommended Posts

Just now, John Dyson said:

General comments of the general terms like 'muddiness' , not 3d or other things that aren't specific and oriented towards fixing the problem, just not kind.   BTW -- compressed hash does give a sense of detail, and I do suspect that is what people sometimes are missing.

 

It is obvious that FA is a problem, and the FA compression is  a deficit -- and the FA decoder is really working  produces results much closer to a raw recording.

 

I tell people who prefer FA -- just talk into a good quality mic, through a board, no processing.   You will NOT get FA sound.   Even if you use a good quality compressor, the sound is NOT like most consumer recordings.

 

Sometimes people REALLY like the music.   When people REALLY like the music, they'll even listen to AM radio.

 

 

 

 

Carry on. I should have known from this thread you don't take kindly to criticism. I wish other people would speak up but seems they're censored or too afraid to tell you the obvious truth. It's a disaster.

Link to comment

I had thought that there might need to be an --fa=M switch.   My hearing might be playing games again.   I will be adding it, but not sure if it is needed.

 

Sometimes material sounds 'thin' until the level is correct, but if I bring the level too high, then my hearing accomodates it.   It is safest just to add the feature.

 

 

Link to comment
6 minutes ago, Night Rain said:

Carry on. I should have known from this thread you don't take kindly to criticism. I wish other people would speak up but seems they're censored or too afraid to tell you the obvious truth. It's a disaster.

I take VERY KINDLY to kind, constructive criticism.   Suggestions strong enough that imply the effort is unwise -- that is what I read of your comments.

 

PARTICIPATE, not ARM-CHAIR QUARTERBACK.

 

John

 

Link to comment
1 minute ago, John Dyson said:

I take VERY KINDLY to kind, constructive criticism.   Suggestions strong enough that imply the effort is unwise -- that is what I read of your comments.

 

PARTICIPATE, not ARM-CHAIR QUARTERBACK.

 

John

 

Well John Idid. You are decidedly on the wrong path here. Nobody needs a fancy tone control.

Link to comment
2 minutes ago, John Dyson said:

I take VERY KINDLY to kind, constructive criticism.   Suggestions strong enough that imply the effort is unwise -- that is what I read of your comments.

 

PARTICIPATE, not ARM-CHAIR QUARTERBACK.

 

John

 

Where you got on the wrong path was when you decided things needed multiple layers decoded and it has just gotten worse since then.

Link to comment
Just now, Night Rain said:

Where you got on the wrong path was when you decided things needed multiple layers decoded and it has just gotten worse since then.

I triedsingle layer, and understand what it did -- that is why I rejected it.  Of course, I really did it -- not just judging from afar.

 

I disagree about it being the wrong path, but I have a lot of evaluations that show the 10dB step, need for 3dB gain between steps, etc.

If you are willing, learn about what I have learned -- then perhaps the judgement would be less of the 'ARM-CHAIR' variety.

 

The FA encoding really makes sense, but so messes up the signal.   It is apparent that R Dolby might have designed it -- there are too many DolbyA internals involved in the decoding.   Even to the silly 80Hz EQ that was just found out.

 

I can do a simple multi-band expander, but it won't correct the consumer FA recordings anywhere as effectively as the multi-layer scheme.

 

 

Link to comment
6 minutes ago, Night Rain said:

There you go again, as I sit in an armchair to listen thank you. My speakers do not editorialize, Revel Salon 2s are accurate.

 I am sorry but what is being decoded is a mess and unlistenable.  If the truth hurts I apologize but somebody has to be honest with you.

You DID editorialize, that is why I responded.   I would appreciate constructive comments.   Your truth hurts me, but it isn't reality.  Sorry, just being honest with you.

 

I sure hope that you don't think that I prescribed a solution?   That isn't the way that it works -- I exhaustively tested hypotheses, fed back, etc almost infintely...    If the solution didn't need multi-layer DolbyA, I would NOT have gone in that direction.

 

I would have preferred a simpler solution, because I tried almost all of them.

 

 

 

 

Link to comment
Just now, John Dyson said:

You DID editorialize, that is why I responded.   I would appreciate constructive comments.   Your truth hurts me, but it isn't reality.  Sorry, just being honest with you.

 

How much more honest can I be? It's an unmitigated and unlistenable disaster. NOTHING sounds right. Drums sound like people hitting the top of a pringles can. The mids are horrendous they're muffled and lacking any depth.

 It's a version of the horrendous DBX expander from the 70s. You have succeeded  in making everything sound the same. Bad and lacking in any detail. It's a travesty of the artist's intentions.

 And trust me I am being kind.

Link to comment
9 minutes ago, John Dyson said:

You DID editorialize, that is why I responded.   I would appreciate constructive comments.   Your truth hurts me, but it isn't reality.  Sorry, just being honest with you.

 

 

5 minutes ago, Night Rain said:

How much more honest can I be? It's an unmitigated and unlistenable disaster. NOTHING sounds right. Drums sound like people hitting the top of a pringles can. The mids are horrendous they're muffled and lacking any depth.

 It's a version of the horrendous DBX expander from the 70s. You have succeeded  in making everything sound the same. Bad and lacking in any detail. It's a travesty of the artist's intentions.

 And trust me I am being kind.

Thank you - you prove my point.

BTW -- if you knew what it did, it is NOTHING like a DBX expander -- obviously misunderstanding what the decoder is.

A DBX expander is a trivial toy.   It doesn't even attempt to match the input, the decoder does.

 

A DBX expander is a technology that is probably 100 lines in my software infrastructure.   The decoder is approx 15000 lines.  (I have a highly developed software infrastructure that makes compressors, expanders, equalizers almost trivial to write.)   I mean, by spec, not just ad-hoc, like hobbiests do.

 

If there is only one minor parameter that is incorrect on decoder (I mean <%1 error is needed), the result is incorrect.  If you could only understand (or hear.)

 

Link to comment
1 minute ago, John Dyson said:

 

Thank you - you prove my point.

BTW -- if you knew what it did, it is NOTHING like a DBX expander -- obviously misunderstanding what the decoder is.

A DBX expander is a trivial toy.   It doesn't even attempt to match the input, the decoder does.

 

If there is only one minor parameter that is incorrect on decoder (I mean <%1 error is needed), the result is incorrect.  If you could only understand (or hear.)

 

Oh I hear just fine. EVERYTHING IS OFF. There's no tweaking that can fix this. EVERYTHING sounds like a scale model of the original music.

 You need to rethink this and figure out where it all went so horribly wrong.

Link to comment
4 minutes ago, Night Rain said:

Oh I hear just fine. EVERYTHING IS OFF. There's no tweaking that can fix this. EVERYTHING sounds like a scale model of the original music.

 You need to rethink this and figure out where it all went so horribly wrong.

Okay -- it isn't any skin off your back.   You won't convince me into being wrong, and I cannot correct your misimpressions.

You would not pester if you didn't have a lot of envy. 


'Scale model', 'tweaking', EVERYTHING IS OFF...   proof of your attitude, and it started from your first posting.

 

WRT 'tweaking'.   Currently there are coherent building blocks, mostly no tweaking.

Early on, when modeling selected electronic components (e.g. exponential diode curves), there was some tweaking.

 

 

 

Link to comment
Just now, John Dyson said:

Okay -- it isn't any skin off your back.   You won't convince me into being wrong, and I cannot correct your misimpressions.

You won't pester if you didn't have a lot of envy. 


'Scale model', 'tweaking', EVERYTHING IS OFF...   proof of your attitude, and it started from your first posting.

 

 

Yes John. I'm envious you have found a way, after years of work, to totally destroy every recording. Super jealous here. 👍

Link to comment
5 minutes ago, Night Rain said:

Yes John. I'm envious you have found a way, after years of work, to totally destroy every recording. Super jealous here. 👍

Heh?   How did I destroy the recordings?  I didn't destroy what you listen to -- whomever did the FA compression did.

Do you believe that I could have jumped in and destroyed your library?   Everyone still has the compressed, FA cr*p.  So do I, but use it as source material to produce relatively MUCH MORE CLEAN recordings.

 

You should learn about accomodation in hearing, it is very similar to becoming used to a bad smell or a color scheme.   FA is a bad smell.

 

FA and its MQA follow-ons are your enemy, not me.

 

 

Link to comment
1 minute ago, John Dyson said:

Heh?   How did I destroy the recordings?  I didn't destroy what you listen to -- whomever did the FA compression did.

Do you believe that I could have jumped in and destroyed your library?

 

You should learn about accomodation in hearing, it is very similar to becoming used to a bad smell or a color scheme.

 

 

Have spent years in recital and orchestra halls so I can speak with certainty as to good sound. If you think this sounds good, and I defy anyone to listen and then post their impressions here, more power to you.

Link to comment
5 minutes ago, Night Rain said:

Have spent years in recital and orchestra halls so I can speak with certainty as to good sound. If you think this sounds good, and I defy anyone to listen and then post their impressions here, more power to you.

I have also heard good sound, through the electronic recording process (before compression.)   I used to do stereo orchestral recordings, that is why I rejected FA.

I could never accept the FA sound, and when I came back to it in 2012 (virgin hearing relative to 20yr of listening) -- I started hearing 'tells' in the audio.


DolbyA didn't come into the picture for 2yrs of exhaustive testing.

Multi-layer didn't come into the picture until about 2yrs-3yrs ago.

 

I tried everything to avoid complexity.   That is the engineering way of doing things (40+yrs of pro experience.)

I know how to deal with constructive, fact-filled information, but I don't know how to deal with your comments.

 

Honestly, I have always had troubles in dealing with immature or deranged people...  For that, I apologize.

Link to comment
59 minutes ago, John Dyson said:

 

Honestly, I have always had troubles in dealing with immature or deranged people...  For that, I apologize.

Mature people make personals attacks? You're program is crap. I challenge ANYONE to download it and hear what a total mess it creates. The the horrible sound challenge today.

 As for being deranged working on the same crap for years only to make it worse and worse must be the very embodiment of deranged. What a waste of a life.

 If the truth hurts don't BLOODY ask for it. If you ask for it handle it like a man not a 6 year old. Grow up.

Link to comment

Release V2.1.2F available.   (also a final explanation of the LF EQ that we worked out the last few weeks.)

ONLY the -fa=M feature added just in case, maybe not needed?  Everything else is the same.

Next release +21Hrs from now.

 

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

 

I went ahead and added the additional 80Hz steps -- just in case.   My LF hearing is notably unreliable and the accomodation happens very rapidly with me.

Normally, just --fa (which converts from DolbyA type decoding to FA decoding) should work.

 

However, if you find the bass to be 'thin', then adding one or two 'M' submodes should help.  Each 'M' adds a +0.75dB@80Hz/Q=1.0 LF shelving EQ.   Even 0.75dB makes a huge difference on the decoder.   The 1.5dB error at 80Hz drove me nuts for the last couple of weeks...   I just wouldn't believe that a 2nd order EQ was needed!!!   After a lot of testing, I found that the EQ needed to be done as two 0.75dB EQ and not just one 1.5dB.   There is a lot of stuff like that when dealing with hand-in-glove compressors and expanders.   This is even more true with software emulation.

 

* Errors above +-0.25dB aren't really tolerated by me in the decoder, and +-0.75dB can cause profound impairments to the result.

 

To give you an idea about the powerful infrastructure used in the decoder:  to add the two 0.75dB EQ, the following lines of code need to be added:

 

double lfcorQ = 1.0;

       lfcor1 = new shelf2ndorder::shelf(0, 0.75, 80, lfcorQ);
       lfcor2 = new shelf2ndorder::shelf(0, 0.75, 80, lfcorQ);

 

Then, later on, in the processing loop:

      signal = lfcor1->next(signal);

      signal = lfcor2->next(signal);

 

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

About the final needed EQ...   Before, in order to twist the 1st order EQ, I had to use a lot of 3dB EQ elements, which changes the speed of the shape of the EQ, but it can be contorted only so much.   Now, there is still the need for some 'non-6dB' values, but mostly end conditions:

(So much for 'just do the EQ' :-)).

 

 

The arguments for the EQ specification are as follows:

               ifeq1[N].designfilt(LF==1, FREQUENCY, GAIN);

 

The interleaved EQ scheme mitigates distortions that would otherwise happen.

The anti-distortion/phase correction  scheme cannot be used below 25Hz.

The EQ must be these frequencies, and these values.  The effect of 1st order EQ is over such a wide range that errors become very profound...

1st order EQ is a very different animal from 2nd order EQ, and acts differently in important ways.

 

Note that except for the first several steps of -1.5 or -3dB, the 1st order EQ is always -6dB per step -- each step is a group of three.

This bodes VERY WELL considering the economy of design in the original HW.  (Keep the HW simple, so the software should be as simple.)

It takes fewer -6dB steps than -3dB or -1.5dB steps.   The effect of two -3dB steps is also different than one -6dB step.

 

 

The first LF EQ is at 40*25 or 1000Hz.   The first group are in 250Hz steps, then decrease 250, 200, 100, 50 then 25Hz.

The final LF EQ is at 20Hz, 12.5Hz and 10Hz.

 

* These frequencies were determined by exhaustive testing and verification.  My original prejudice was 250 150 75 37.5...   No hypothesis is assumed correct, everything is tested for accuracy.   There was a method to my original frequency step madness...   Note that the 150 comes earlier than 1/2 250?   the EQ appeared to need to 'speed up' at lower frequencies.   The situation is even more extreme with the eventual result, where the next step after 250 is correctly 200, where my guess was 150.

 

====

              static constexpr double lfeq1diffb= 25;

              static constexpr double lfeq1diff0= 20;

 

// 1kHz -1.5dB

 

               lfeq1[0].designfilt(1, (40.0 * lfeq1diffb) + lfeq1diff0, da::vm1p5dB);
               lfeq1[1].designfilt(1, (40.0 * lfeq1diffb), da::v1p5dB);
               lfeq1[2].designfilt(1, (40.0 * lfeq1diffb) - lfeq1diff0, da::vm1p5dB);
 

// 750Hz -3dB


               lfeq1[3].designfilt(1, (30.0 * lfeq1diffb) + lfeq1diff0, da::vm3dB);
               lfeq1[4].designfilt(1, (30.0 * lfeq1diffb), da::v3dB);
               lfeq1[5].designfilt(1, (30.0 * lfeq1diffb) - lfeq1diff0, da::vm3dB);
 

// 500Hz -3dB


               lfeq1[6].designfilt(1, (20.0 * lfeq1diffb) + lfeq1diff0, da::vm3dB);
               lfeq1[7].designfilt(1, (20.0 * lfeq1diffb), da::v3dB);
               lfeq1[8].designfilt(1, (20.0 * lfeq1diffb) - lfeq1diff0, da::vm3dB);
 

// 250Hz -6dB
 
               lfeq1[9].designfilt(1, (10.0 * lfeq1diffb) + lfeq1diff0, da::vm6dB);
               lfeq1[10].designfilt(1, (10.0 * lfeq1diffb), da::v6dB);
               lfeq1[11].designfilt(1, (10.0 * lfeq1diffb) - lfeq1diff0, da::vm6dB);
 

// 200Hz -6dB


               lfeq1[12].designfilt(1, (8.0 * lfeq1diffb) + lfeq1diff0 , da::vm6dB);
               lfeq1[13].designfilt(1, (8.0 * lfeq1diffb), da::v6dB);
               lfeq1[14].designfilt(1, (8.0 * lfeq1diffb) - lfeq1diff0, da::vm6dB);
 

// 100Hz -6dB


               lfeq1[15].designfilt(1, (4.0 * lfeq1diffb) + lfeq1diff0 , da::vm6dB);
               lfeq1[16].designfilt(1, (4.0 * lfeq1diffb), da::v6dB);
               lfeq1[17].designfilt(1, (4.0 * lfeq1diffb) - lfeq1diff0, da::vm6dB);
 

// 50Hz -6dB


               lfeq1[18].designfilt(1, (2.0 * lfeq1diffb) + lfeq1diff0 , da::vm6dB);
               lfeq1[19].designfilt(1, (2.0 * lfeq1diffb), da::v6dB);
               lfeq1[20].designfilt(1, (2.0 * lfeq1diffb) - lfeq1diff0, da::vm6dB);
 
 // 25Hz -6dB
               lfeq1[21].designfilt(1, (1.0 * lfeq1diffb) + lfeq1diff0 , da::vm6dB);
               lfeq1[22].designfilt(1, (1.0 * lfeq1diffb), da::v6dB);
               lfeq1[23].designfilt(1, (1.0 * lfeq1diffb) - lfeq1diff0, da::vm6dB);

 

// final LF steps  20Hz -6dB, 15Hz -6dB, 10Hz -6dB

 

               lfeq1[24].designfilt(1, 20, da::vm6dB);
               lfeq1[25].designfilt(1, 0.5 * lfeq1diffb, da::vm6dB);
               lfeq1[26].designfilt(1, 10, da::vm6dB);

 

(Then, the 80Hz 2nd order EQ mentioned above.)

 

 

 

Link to comment

PS:   constructive feedback is welcome.   Kindness is very important to me.

The decoder IS complete, but needs some polishing.

 

Just double checked the results, and the only other thing that bothers me is that once

I added the 80Hz EQ, then some of the old Carpenters stuff got 'heavy' again.   The --fa='L'

EQ still exists and is still valid.

 

I just updated the 'StartUsing' doc to mention the use of --fa=L.   The ONLY recordings, so far,

after the EQ corrections, that need --fa=L are the old Carpenters stuff.   I have been checking

my archives, and wonder if they were just done differently?   (The difference is that more

EQ (-3dB) appears to be needed at 200Hz.)

 

Regarding 'increasing' the 80Hz (with the 'M' commands.)   My headphones are not light on the

true LF bass, but my hearing varies on the order of 6-10dB -- probably blood flow.   The EQ

 has been tested in enough conditions to know that it is very close to correct.   Also,

the EQ sequence is something that a hardware developer would use.   It all fits together.

 

However, I ALWAYS listen for EQ help, and with 1st order EQ, the strangest problems can appear,

even misjudged as distortion!??!?   (I mean, REALLY.)   However -- when describing needed EQ,

in order to keep my frustration minimized -- here are some suggestions:

 

When judging decoded sound -- remember that the FA recording has at least 10dB excess  compression

at LF, has lots of compression at HF -- but a quantized set of levels.   The highs can be loud or soft, but

the HF signal levels have a terraced & compressed  scheme.

 

One can accommodate these characteristics, but it is good to be aware of the FA defects when judging

non-FA material.  (Basically, FA compressor is brings very low HF signals upwards to terraced/quantized levels,

therefore giving the impression of detail.)   FA does NOT compress high levels, but there is fuzz and time

distortion associated with the larger HF events that give a strange, unreal sound to everything.

 

Since it is easy to mistake what I mean by 'criticism', it is definitely not intended that the decoder be condemned

and I should stop the project.   That won't happen anyway.  The only possible direction is IMPROVEMENT, not

capitulation to the mediocracy!!!

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

 

Here are the suggestions:

 

Specify the recording, the time offset if useful.  

More deep bass, Less deep bass.

More midrange, Less midrange, the sound 'Honks'.

(Also, describe the sound of instruments, perhaps defects -- a common problem, that even I hear -- pianos are sometimes muddy.)


Time offsets needed for the below, since 'highs' are more time dependent:

 

Cymbals too strong,  instead of 'crashing' cymbals fuzz out.  Cymbals not sharp

Lost definition in percussive sounds.

 

 

 

Link to comment
11 minutes ago, John Dyson said:

PS:   constructive feedback is welcome.   Kindness is very important to me.

The decoder IS complete, but needs some polishing.

 

Just double checked the results, and the only other thing that bothers me is that once

I added the 80Hz EQ, then some of the old Carpenters stuff got 'heavy' again.   The --fa='L'

EQ still exists and is still valid.

 

I just updated the 'StartUsing' doc to mention the use of --fa=L.   The ONLY recordings, so far,

after the EQ corrections, that need --fa=L are the old Carpenters stuff.   I have been checking

my archives, and wonder if they were just done differently?   (The difference is that more

EQ (-3dB) appears to be needed at 200Hz.)

 

Regarding 'increasing' the 80Hz (with the 'M' commands.)   My headphones are not light on the

true LF bass, but my hearing varies on the order of 6-10dB -- probably blood flow.   The EQ

 has been tested in enough conditions to know that it is very close to correct.   Also,

the EQ sequence is something that a hardware developer would use.   It all fits together.

 

However, I ALWAYS listen for EQ help, and with 1st order EQ, the strangest problems can appear,

even misjudged as distortion!??!?   (I mean, REALLY.)   However -- when describing needed EQ,

in order to keep my frustration minimized -- here are some suggestions:

 

When judging decoded sound -- remember that the FA recording has at least 10dB excess  compression

at LF, has lots of compression at HF -- but a quantized set of levels.   The highs can be loud or soft, but

the HF signal levels have a terraced & compressed  scheme.

 

One can accommodate these characteristics, but it is good to be aware of the FA defects when judging

non-FA material.  (Basically, FA compressor is brings very low HF signals upwards to terraced/quantized levels,

therefore giving the impression of detail.)   FA does NOT compress high levels, but there is fuzz and time

distortion associated with the larger HF events that give a strange, unreal sound to everything.

 

Since it is easy to mistake what I mean by 'criticism', it is definitely not intended that the decoder be condemned

and I should stop the project.   That won't happen anyway.  The only possible direction is IMPROVEMENT, not

capitulation to the mediocracy!!!

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

 

Here are the suggestions:

 

Specify the recording, the time offset if useful.  

More deep bass, Less deep bass.

More midrange, Less midrange, the sound 'Honks'.

(Also, describe the sound of instruments, perhaps defects -- a common problem, that even I hear -- pianos are sometimes muddy.)


Time offsets needed for the below, since 'highs' are more time dependent:

 

Cymbals too strong,  instead of 'crashing' cymbals fuzz out.  Cymbals not sharp

Lost definition in percussive sounds.

 

 

 

The "decoder" is so far off the mark and destructive I have no idea what you're trying to do beyond destroying any listenable music. Anyone that does everything on headphones, and discovers the headphones were defective cannot possibly be taken seriously. This is just tremendously sad.

Link to comment

I

1 hour ago, Night Rain said:

The "decoder" is so far off the mark and destructive I have no idea what you're trying to do beyond destroying any listenable music. Anyone that does everything on headphones, and discovers the headphones were defective cannot possibly be taken seriously. This is just tremendously sad.

I have a suggestion for those who enjoy the FA sound -- go enjoy it.

 

I wont' judge what you perceive as wrong, but complaints that the FA decoder doesn't work well

are totally wrong.   you don't need to feel threatened:   FA will persist to protect the IP of the IP owners -- so,

nothing will take it away from you.


The FA project is intended (and somewhat successful) for those who are disappointed in the compressed FA sound.

 

Your accepting orthodoxy isn't wrong, but your misjudgement based on your own perceptions ARE WRONG.

 

Link to comment

I have been thinking about the inability of SOME PEOPLE to detect the structural damage caused by the FA compression for recordings directed to the consumer...  Those people who cannot detect the structuring certainly wouldn't care about FA decoding.

 

It appears that there is a difference in how people perceive things -- the energy of FA recordings isn't really damaged very much -- in fact, highs and lows are boosted, but the signal is *structurally* scrambled.  On the other hand, myself, I have problems hearing 'response balance', even though I can do so under duress.

 

Probably one reason why consumer recordings (FA) are so distasteful to me -- the structure of the  FA signal is highly scrambled, even from the standpoint of temporal scrambling (not just amplitude.)

 

There are probably also people who don't hear the signal structure, and inestead mostly hear the energy.   On encoded FA, there is an increase in average energy at the highest and lowest frequencies, but the energy is also less time-focused.   Part of the FA decoder sucessfully refocuses the energy from a smear into a 'point.'   This is the so-called anti-distortion code, and you can actually hear the clarification of the details (turning it off, then on.)

 

Given this -- I can understand when some peolple are satisfied by an average energy sense of a recording, but with the damaged FA structure (timing and level) -- a raw FA recording is bordering on unlistenable to me.

 

Early-on, the decoder didn't even try to fully re-focus the recording, and the single band scheme was a toy essentially intolerablegarbage (I knew that there was progress, but not enough -- but always looking for more PRECISE feedback on what was wrong.)    The reason why the early single step expanders (and that is all they were) didn't correct the damage to the signal structure is because I DIDN"T REALIZE THAT THE ENCODING ALSO SCRAMBLED THE PHASE.  The early expanders CERTAINLY did not even recover the correct energy density, and most importantly -- anyone who didn't notice the gating really is in no place to judge the early expanders.

 

Instead of capitulating to the mediocracy of the audio industry, eventually, I pretty much had to figure all of FA out myself.

 

It is pretty clear to me that there are LOTS of people who do not hear the loss of structure as created by the FA encoding.  Clarity and precision was always my major interest in 'high fidelity',  but FA never met it.   This is why I rejected the encoding a LONG LONG time ago.

 

About the peakier output of the decoded FA material.   There are two aspects -- re-focusing the phase in addition to the expansion mechanism.   The FA decoding isn' t ust about the DolbyA decoding  steps, it is also about phase correction -- over and over again.

 

IT does appear that the consumer FA recordings are PURPOSFULLY phase scrambled to decrease the peak-to-average  ratio, thereby further increasing the 'loudness' of a recording at the same peak level.   In a way, FA is a pre-historic part of the 'loudness wars'.

 

 

Link to comment

As you probably know -- near perfection has been attained, but I have noticed something just a little 'off'.  The decoder clarity blows away the FA sound, but the response balance, even though fairly close to 'FA', needs MORE *true* clarity than the RAW FA.

 

I have been experimenting, and going to run LOTS more tests tonight.  So far, it appears that some recordings benefit from an EQ something  like this on the output:

 

--pvh=3k,6 --pvh=9k,-6

 

Seems to correct/improve almost every recording that I have tested so far.

I am not sure if it should be exactly that above, and this is where my very intense, never-give-up testing is helpful....

 

BTW, the actual change is NOT 6dB up and 6dB down...   It is somewhat less than that, but nevertheless, something seems to need to be done to compensate for the lack of FA compression.


The big issue for me, my hearing isn't reliable.  It is good for finding artifacts, but not good at reponse balance.   This EQ might be something that the 'casual user' cannot do, even though superficially the above might be what is needed.   When I do EQ inside of the decoder, there are many considerations than just a frequency response change.

 

Thank goodness, a lot of 1st order EQ creates artifacts when it is wrong.  Even though my sense of response balance is poor, usually the needed EQ can be found.

 

There might be an update that deals with this at 9AM (my time, approx +15Hrs).

 

 

Link to comment
1 minute ago, John Dyson said:

As you probably know -- near perfection has been attained, but I have noticed something just a little 'off'. 

 


The big issue for me, my hearing isn't reliable. 

 

 

 

That explains why this decoder destroys music. If making music unlistenable is your idea of perfection you've reached your goal. TRUST PEOPLE WHO CAN HEAR.

Link to comment

Wonderful news!!!   I found a very plausible EQ (upper-middle , and so positive about it, will probably permanently include it into the code tonight.

I did notice sometimes that the 3k->9kHz region sounded 'suppressed', but without a master tape reference to these exact recordings, I can only guess when considering response balance.

 

(USING PERSONAL TASTE IS UNWISE AND DANGEROUS TO THE PROJECT --

I use 'tells' and artifacts non-associated with personal taste and NOT depend on response balance per-se.)

 

This fix, along with a minor correction to the 80Hz change, the old Carpenters won't need the special 'L' mode again!!!  It also

looks like the 'M' modes also will not be needed.   I start getting worried when everything cannot be decoded with exactly the same

EQ.  (This again is a good indicator of the code being correct.)

 

ONLY because I might figure out something else neat, cool or simple bugfix, I'll be deferring the release until tomorrow morning as

planned.  Send me a PM if you want the release earlier, it only takes 10minutes to do a fully controlled Windows release.

 

My fading in and out hearing is currently stable, my hearing is working fine now, and I never lose my ability to detect problems with transients and structure in a recording.   Good people wish me the best in overcoming this frustrating limitation -- and I have been doing well because I do take care of myself.)   *My only hearing unreliability problem is with response balance.

 

The new EQ is defendable from a design & conceptual  standpoint, and has appropriate anti-distortion characteristics (cancels the FA phase damage)

 

Here is the EQ (in the LF EQ language)

This complexity is one reason why the end user cannot really do the EQ themselves.   There are so many considerations, and

even the choice of offsets depends on the direction of the EQ/etc.   This code hasn't been officially added yet, and I actually

have a different area of EQ that I use for things like this, so will move it to 'hfeq0' instead of leaving it in 'lfeq1'.

 

These very small portions of the code are shown to demonstrate openness and to show that the internal FA decoder EQ is nontrivial in the simplest case.

 

               static const double hfeqdiff = 500;  (special offset needed for HF between 3k and 21k.)

               static const double heqbase0 = 3000.0;
               static const double heqbase1 = 9000.0;
               static const double heqgain = sqrt2;

               (the first term of the lfeq1 '0' means HF shelf.)


               lfeq1[nlfeq1++].designfilt(0, heqbase0 - da::hfeqdiff * 0.50, (heqbase0 * heqgain - da::hfeqdiff * 0.50) / (heqbase0 - da::hfeqdiff * 0.50));
               lfeq1[nlfeq1++].designfilt(0, heqbase0, 1.0 / heqgain);
               lfeq1[nlfeq1++].designfilt(0, heqbase0 - da::hfeqdiff * 0.50, (heqbase0 * heqgain + da::hfeqdiff * 0.50) / (heqbase0 + da::hfeqdiff * 0.50));
 
               lfeq1[nlfeq1++].designfilt(0, heqbase1 - da::hfeqdiff * 0.50, (heqbase1 - da::hfeqdiff * 0.50) / (heqbase1 * heqgain - da::hfeqdiff * 0.50));
               lfeq1[nlfeq1++].designfilt(0, heqbase1, heqgain);
               lfeq1[nlfeq1++].designfilt(0, heqbase1 - da::hfeqdiff * 0.50, (heqbase1 + da::hfeqdiff * 0.50) / (heqbase1 * heqgain + da::hfeqdiff * 0.50));

 

 

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...