Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
ALSA snd_hda_intel:ICH7+ALC882 , "PASS_THROUGH" not working.
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
qwert380
n00b
n00b


Joined: 30 Mar 2006
Posts: 19
Location: Europe

PostPosted: Tue Nov 07, 2006 4:02 pm    Post subject: ALSA snd_hda_intel:ICH7+ALC882 , "PASS_THROUGH" no Reply with quote

Hello all,

My new PC is here with the latest HW and as usuall problems are here as well.

Problem: I am not able to get AC3 on the digital out when watching DVDs.

The idea is to use external decoder for surround sound. Coaxial_digital_out from PC is connected to Coax_input in home theater receiver. Connection is checked ( it was working for a couple of years with my previous setup). MB is ASUS N4L-VM:ICH7 + Realtek ALC882. ALSA support is using kernel modules ( tried to build in the kernel as well ). There are no errors during startup or modules reload. Analog_out works fine. I can watch DVDs using xine with audio sent to analog_out ( default xine config STEREO 2.0 ). When I change option "SPEAKER_SETUP" to "PASS_THROUGH" I get "Audio output unavailable. Device is busy. ()". Mplayer is also not able to use dig_out. I tried to use different module options with no success. All devices are unmuted in mixer.

Anybody made "PASS_THROUGH" working on ICH7+ALC882?
br, qwert.

Code:

# lspci
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)

# lsmod
Module                  Size  Used by
snd_pcm_oss            29408  0
snd_mixer_oss          13504  1 snd_pcm_oss
snd_hda_intel          13012  1
snd_hda_codec         122304  1 snd_hda_intel
snd_pcm                57092  3 snd_pcm_oss,snd_hda_intel,snd_hda_codec
snd_timer              16324  1 snd_pcm
snd                    38500  8 snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer
soundcore               6752  1 snd
snd_page_alloc          7176  2 snd_hda_intel,snd_pcm


# uname -r
Code:
2.6.17-gentoo-r8

# cat /proc/asound/cards
 0 [Intel          ]: HDA-Intel - HDA Intel
                      HDA Intel at 0xfebfc000 irq 16
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC882 Analog [ALC882 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 2: ALC882 Digital [ALC882 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

# cat /proc/asound/card0/codec#0 |grep Codec
Code:
Codec: Realtek ALC882

# cat /proc/asound/version
Code:
Advanced Linux Sound Architecture Driver Version 1.0.11rc4 (Wed Mar 22
10:27:24 2006 UTC).

# cat /etc/modules.d/alsa
        # ALSA portion
        alias char-major-116 snd
        alias snd-card-0 snd-hda-intel
        # module options should go here

        # OSS/Free portion
        alias char-major-14 soundcore
        alias sound-slot-0 snd-card-0

        # card #1
        alias sound-service-0-0 snd-mixer-oss
        alias sound-service-0-1 snd-seq-oss
        alias sound-service-0-3 snd-pcm-oss
        alias sound-service-0-8 snd-seq-oss
        alias sound-service-0-12 snd-pcm-oss
        #
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2381
Location: Wisconsin (USA)

PostPosted: Tue Nov 07, 2006 5:33 pm    Post subject: Reply with quote

I believe the Intel HDA driver is relatively new, and for quite a while, had bad compatability problems particularly on some laptops. It wouldn't surprise me if the digital out is broken on some implementations, or perhaps there's some options or tricks that need to be done to get it to work. For now, I'd recommend just using analog output and hopefully the driver improves.

Also, I'm not sure what PASS_THROUGH does, but maybe it's enough to just change the output device to get digital out... for example, set the alsa output device in the program to hw:0,2 and see if it works.
Back to top
View user's profile Send private message
qwert380
n00b
n00b


Joined: 30 Mar 2006
Posts: 19
Location: Europe

PostPosted: Tue Nov 07, 2006 6:03 pm    Post subject: Reply with quote

Thanks for replay.
PASS_THROUGH is basically tells the driver to take AC3(DD or DTS) stream from DVD and pass it directly to the digital_out.
OK, I tried "hw:0,2" and it is still the same:
Code:

audio_alsa_out: snd_pcm_open() of hw:0,2 failed: Device or resource busy
audio_alsa_out: >>> check if another program already uses PCM <<<
audio_out: open failed!


I agree that it takes time to get new HW to work properly in Linux. Looks like I've to watch DVD with stereo only.

br, qwert.
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2381
Location: Wisconsin (USA)

PostPosted: Tue Nov 07, 2006 8:14 pm    Post subject: Reply with quote

I take it it's not possible to get 5.1 digital audio without using pass-through? Like, I know a lot of cards can do analog output where obviously the signal is decoded in software, but I've never played around with the stuff to find out if uncompressed 5.1 audio can be sent digitally.
Back to top
View user's profile Send private message
qwert380
n00b
n00b


Joined: 30 Mar 2006
Posts: 19
Location: Europe

PostPosted: Tue Nov 07, 2006 9:45 pm    Post subject: Reply with quote

Both ways are possible. To make it all analog you need to use 3 jacks and decoding is done internaly ( here is codec quality is important ). Pass_through option passes stream digitally. ALSA should provide corresponding devices. Player SW should be configured according to the device connected. I was using "pass_through" for a few years already. It worked good on my old ASUS P4P800.
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2381
Location: Wisconsin (USA)

PostPosted: Wed Nov 08, 2006 4:03 pm    Post subject: Reply with quote

Right, but I was referring to digital 5.1 audio, not analog. If it's only the pass-through option that fails, maybe 5.1 uncompressed digital would work if it's possible.
Back to top
View user's profile Send private message
kptn_kermit
n00b
n00b


Joined: 29 Apr 2004
Posts: 45
Location: Austria

PostPosted: Wed Apr 11, 2007 12:17 pm    Post subject: Reply with quote

I have a different problem, but maybe someone can help me here, cause its the same audio card.

The problem is, I do not have any sound output from my ALC 882 in an ASUS Laptop W2J (built in speakers and any matching audio jack with earphones, and yes I unmuted all what's possible). I do not get any errors installing hda-intel or using any kind of media output (audacious, cat /dev/urandom > /dev/dsp, mplayer etc.) but I also cannot hear anything. Additionaly the built in micro seems to work, cause I get visual responses of audio signals in recording software.
Could it be that the digital output somehow mutes/impede the analog audio output ?

Any hints are highly welcome !


Cause I am not the big hardware expert, maybe somebody can find a hint in my specs and/or configs:

Code:

localhost modules.d # lspci -v

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
   Subsystem: ASUSTeK Computer Inc. Unknown device 1971
   Flags: bus master, fast devsel, latency 0, IRQ 23
   Memory at febfc000 (64-bit, non-prefetchable) [size=16K]
   Capabilities: [50] Power Management version 2
   Capabilities: [60] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
   Capabilities: [70] Express Unknown type IRQ 0

Code:

localhost modules.d # cat /proc/asound/cards
 0 [Intel          ]: HDA-Intel - HDA Intel
                      HDA Intel at 0xfebfc000 irq 23

Code:

localhost modules.d # cat /proc/asound/card0/codec#0 |grep Codec
Codec: Realtek ALC882

Code:

localhost modules.d # aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC882 Analog [ALC882 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC882 Digital [ALC882 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 6: Si3054 Modem [Si3054 Modem]
  Subdevices: 1/1
  Subdevice #0: subdevice #0


Code:

localhost modules.d # uname -r
2.6.19-gentoo-r5

Code:

localhost modules.d # cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.14rc3.
Compiled on Apr 11 2007 for kernel 2.6.19-gentoo-r5 (SMP).

Code:

localhost modules.d # cat /etc/modules.d/alsa
# Alsa kernel modules' configuration file.

  # ALSA portion
        alias char-major-116 snd
        alias snd-card-0 snd-hda-intel
        # module options should go here

        # OSS/Free portion
        alias char-major-14 soundcore
        alias sound-slot-0 snd-card-0

        # card #1
        alias sound-service-0-0 snd-mixer-oss
        alias sound-service-0-1 snd-seq-oss
        alias sound-service-0-3 snd-pcm-oss
        alias sound-service-0-8 snd-seq-oss
        alias sound-service-0-12 snd-pcm-oss
        #
Back to top
View user's profile Send private message
kptn_kermit
n00b
n00b


Joined: 29 Apr 2004
Posts: 45
Location: Austria

PostPosted: Wed Apr 11, 2007 12:23 pm    Post subject: Reply with quote

And my /etc/asound.state:

Code:

localhost modules.d # cat /etc/asound.state
state.Intel {
   control.1 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Front Playback Volume'
      value.0 31
      value.1 31
   }
   control.2 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Front Playback Switch'
      value.0 true
      value.1 true
   }
   control.3 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Mic Playback Volume'
      value.0 0
      value.1 0
   }
   control.4 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Mic Playback Switch'
      value.0 true
      value.1 true
   }
   control.5 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Line Playback Volume'
      value.0 31
      value.1 31
   }
   control.6 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Line Playback Switch'
      value.0 true
      value.1 true
   }
   control.7 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'CD Playback Volume'
      value.0 31
      value.1 31
   }
   control.8 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'CD Playback Switch'
      value.0 true
      value.1 true
   }
   control.9 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Aux Playback Volume'
      value.0 11
      value.1 11
   }
   control.10 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Aux Playback Switch'
      value.0 true
      value.1 true
   }
   control.11 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Capture Volume'
      value.0 31
      value.1 31
   }
   control.12 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Capture Switch'
      value.0 false
      value.1 false
   }
   control.13 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Capture Volume'
      index 1
      value.0 31
      value.1 31
   }
   control.14 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Capture Switch'
      index 1
      value.0 false
      value.1 false
   }
   control.15 {
      comment.access 'read write'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 31'
      iface MIXER
      name 'Capture Volume'
      index 2
      value.0 31
      value.1 31
   }
   control.16 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 2
      iface MIXER
      name 'Capture Switch'
      index 2
      value.0 false
      value.1 false
   }
   control.17 {
      comment.access 'read write'
      comment.type ENUMERATED
      comment.count 1
      comment.item.0 Mic
      comment.item.1 Line
      comment.item.2 CD
      comment.item.3 Aux
      iface MIXER
      name 'Input Source'
      value Mic
   }
   control.18 {
      comment.access 'read write'
      comment.type ENUMERATED
      comment.count 1
      comment.item.0 Mic
      comment.item.1 Line
      comment.item.2 CD
      comment.item.3 Aux
      iface MIXER
      name 'Input Source'
      index 1
      value CD
   }
   control.19 {
      comment.access 'read write'
      comment.type ENUMERATED
      comment.count 1
      comment.item.0 Mic
      comment.item.1 Line
      comment.item.2 CD
      comment.item.3 Aux
      iface MIXER
      name 'Input Source'
      index 2
      value Mic
   }
   control.20 {
      comment.access read
      comment.type IEC958
      comment.count 1
      iface MIXER
      name 'IEC958 Playback Con Mask'
      value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
   }
   control.21 {
      comment.access read
      comment.type IEC958
      comment.count 1
      iface MIXER
      name 'IEC958 Playback Pro Mask'
      value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
   }
   control.22 {
      comment.access 'read write'
      comment.type IEC958
      comment.count 1
      iface MIXER
      name 'IEC958 Playback Default'
      value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
   }
   control.23 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 1
      iface MIXER
      name 'IEC958 Playback Switch'
      value false
   }
   control.24 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 1
      iface MIXER
      name 'Off-hook Switch'
      value false
   }
   control.25 {
      comment.access 'read write'
      comment.type BOOLEAN
      comment.count 1
      iface MIXER
      name 'Caller ID Switch'
      value false
   }
   control.26 {
      comment.access 'read write user'
      comment.type INTEGER
      comment.count 2
      comment.range '0 - 255'
      comment.tlv '0000000100000008ffffec1400000014'
      iface MIXER
      name 'PCM Playback Volume'
      value.0 255
      value.1 255
   }
}
Back to top
View user's profile Send private message
rada
Apprentice
Apprentice


Joined: 21 Oct 2005
Posts: 202
Location: Ottawa, Canada

PostPosted: Wed Apr 18, 2007 11:12 pm    Post subject: Reply with quote

Ive had the same problems, pass through does not work with this driver. The only way I had it working was selecting hw=0,0 in mplayer with nothing else playing. This worked ok for most digital streams from my hard drive but not for a DTS-WAV cd I have. Anyway I ordered a Sound Blaster mp3+ for this purpose as I've given up with the hda-intel driver.

@kptn: try adding:
Code:
options snd-hda-intel model=z71v position_fix=2
to /etc/modules.d/alsa
Back to top
View user's profile Send private message
kptn_kermit
n00b
n00b


Joined: 29 Apr 2004
Posts: 45
Location: Austria

PostPosted: Thu Apr 19, 2007 6:09 am    Post subject: Reply with quote

Thx,

we finally were able to enable sound with a new version of patch_realtek.c in alsa-driver source (for my laptop (Asus W2J) only), see

https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2587

Regards
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum