tb said:
Not sure if this is the right newsgroup for my problem... Please
suggest a better one, if necessary.
I just installed an ASUS Xonar DX 7.1 audio card along with driver v.
5.12.8.1792. The OS used is Windows XP Pro SP3 (32-bit).
I was hoping that by inserting the headphone jack into the appropriate
front panel audio port, the audio through my speakers would be cut off
and the only audio output would be through the headphone.
That is not happening. Instead, the audio through my speakers continues
and there is no audio through the headphone. Only after I launch Xonar
DX Audio Center, and under Analog Out select Headphone, I get audio
through the headphone and the audio through the speakers stops.
There must be some setting somewhere that I am missing, right? I can't
find any help about this in the FAQ or Troubleshooting sections or Google.
PS: The front panel audio connector is securely connected to the front
panel header of the audio card. If it weren't so, I would not get any
audio from the headphone at all.
I've been looking at the hardware design, using what little information
I can find.
The hardware is not "tightly integrated", not like a motherboard built-in
single chip AC97 or HDAudio solution would be.
And what that means, is every mode that Asus wants to achieve on that
card, has to be achieved with "tricks". And the board doesn't have
enough GPIO pins on the main chip, to do everything they might want to.
The CMI8788 has 6 general purpose input pins, that can be used for
jack sensing (thus triggering hardware reconfiguration as a function
of what the user is doing). But the problem is, those pins are
shared function pins, and might be used for some other, more
important purpose. There might not be enough of those pins, to
make the card work seamlessly.
On an AC97 motherboard, from years ago, the muting function was done
with switches inside the front panel headphone jack. That's how they
got the mute to work there. It was done with switches and wires.
On a (more modern) HDaudio motherboard, those have so many audio channels
on them, the muting function is implemented in software, and no longer
uses physical aspects of the jacks. On an HDaudio motherboard, when you
plug in a jack, there is a "jack detection" function to tell the chip
that a new thing was plugged in. And that interrupt, coming from the
hardware, can trigger a software response, of reconfiguring the ports
in any way desired. And that includes, muting the rear speakers.
The problem with the Xonar DX, is it consists of a bunch of chips.
And it all has to be tied together with the driver, to make it
work. There are fewer "free lunches" that way. The hardware designer
has to anticipate every situation and plan for it. (Note - in the
following figure, "Asus AV100" = CMI8788, and the 48 pin AC97
CODEC with Asus branding on it, is a CM9780. That means the board,
and its drivers, are largely a product of cmedia.com.tw .)
(potential 16 bit input path)
+-----------------------------+
| |
CM9780 --- CS5361_2CH_ADC --- CMI8788 --- CS4398__2CH_DAC \__ 7.1 out
(AC97) 24 bit input | --- CS4262A_6CH_DAC /
used as PCI |
input |
mixer PEX8112
|
PCI-Express x1
The audio jacks, are "some distance" from the CMI8788, which is
why the hardware coupling is "looser".
The board has two facilities for "tricks". It has four relays.
I can't account for why four are present or needed. The AC97
chip is also being used for a mixing function, so more things
can be tied into the CS5361 ADC. The front panel ports, may
be tied into the CM9780 CODEC. But if that were completely
true, you'd end up with 16 bit output on your headphones.
And I doubt they'd do that. They need a way to tie the output
of the CS4398, to the front panel headphone port, to play by
the rules (so the headphones get 24 bit audio quality). And
to do that, perhaps one of the relays is used, to connect
the CS4398 to the front panel. So some of those paths,
are some kind of kludge.
Could a driver change fix it ? Maybe. If the original design
intent, of some engineer at Asus, was to mute like an old
motherboard might have, then eventually, they might get
around to fixing it. If they, on the other hand, didn't give
a rat's ass, to make the behavior of the card follow established
expectations, then you might never see a fix. And I doubt,
if you talked to Asus Tech Support, they'd be able to shine
any light on the matter. The Tech Support, would be so separated
from the driver writing team, they'd never get you an answer.
Actually, your best chances would be, if some other product
that uses a CMI8788 has that function, then you might end up
getting it. The thing is, there are multiple brands of
sound cards, which use a very similar design to yours.
If you're curious, I got a little information to tie together
some loose ends, from ALSA project source code.
ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.23.tar.bz2
alsa-kernel\pci\oxygen\xonar_cs43xx.c
* GPIO 8 -> route input jack to line-in (0) or mic-in (1)
*
* CM9780:
*
* GPO 0 -> route line-in (0) or AC97 output (1) to CS5361 input
So the guy who wrote the open-source driver for the card,
knows a bit about it. You never know, if you booted a Linux
LiveCD that happened to have that ALSA stuff on it, it might
work the right way. *If* it did, then that would prove it is
possible for the Windows driver writers, to fix it.
Paul