[alsa-devel] [RFC] hda/realtek filtered headphone output
René Rebe
rene at exactcode.de
Sun Mar 4 16:05:44 CET 2018
Hi all,
testing some new laptops, I noticed the headphone frequency response was lacking
bass. First I noticed this in the Lenovo T470s, and later I found this also be the case
on Surface Pro 2 and 3. The Dell XPS13 may also be affected, but I had to return it
before I found out the solution on the other machines:
https://www.youtube.com/watch?v=a1YkPtfC4LI
I had not yet sent the patch because a) I was too busy and b) I wanted to review this further.
As the other day I got a Lenovo ideapad 720s to test with exactly the same issue, here is the
current hacked patch:
https://svn.exactcode.de/t2/trunk/package/base/linux/surface-audio.patch
However, given that all newer realtek codecs that came on my desk are affected,
maybe there is something wrong with the hda_auto_parser.c - I did not yet fully grasp
all the logic of that.
As you can see in the patch and video (…) the problem is the signal routing of NID 0x15
or 0x21 (depending whether it is an older, or newer codec). This is the headphone out,
and as far as I can see the auto_parser assigned the index 0 pcm output (NID 0x0c)
which result in this filtered frequency response, likely intended for the laptop’s speakers?
Using the next NID (I guess that was 0xd?) results in a full frequency response and at
least to my ears is immediately hearable and obvious.
Without this fixed routing the headphone sounds like a PC speaker in a coke can.
So the question for the authors and HDA experts: Can this be fixed in the auto_parser,
or is my patch (which btw. has to small unrelated cleanups) modulo potentially some
renaming of the enum and function, now that more than the Surface is affected, the
way to go? If this can be fixed more generally I would be happy to hear!
Greetings from Berlin,
René Rebe
--
ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
http://exactcode.com | http://exactscan.com | http://ocrkit.com | http://t2-project.org | http://rene.rebe.de
More information about the Alsa-devel
mailing list