You are not logged in.

#1 2010-08-25 20:12:02

lmpe
Member
Registered: 2010-08-25
Posts: 5

[Solved (-ish)] PulseAudio/ALSA default device

Hi,

I recently installed PulseAudio on my Arch Linux system, following the guide on the wiki, and I'm having issues with playing sound through the right device.
If I play a movie through SMPlayer, for example, I have to set the device to "alsa (0.0 HDA Intel)" to get sound. If I set it to
"alsa", the video is played at 3-4x its original speed and no sound is played. This also happens when playing a flash video
in Firefox/Chromium. That leads me to believe that Flash video also uses this "alsa" device, and that causes fast forwarding of the video.

I've tried setting the output device in pavucontrol, but it isn't even listed.
Also this command:
aplay -Dplughw:0,0 -fcd /usr/share/sounds/alsa/Noise.wav plays sound fine, but without specifying the device, nothing is played.

Output of aplay -l:

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC1200 Analog [ALC1200 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC1200 Digital [ALC1200 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
card 1: HDMI [HDA ATI HDMI], device 3: ATI HDMI [ATI HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

The HDMI device is the only one listed in pavucontrol.

Any ideas?
Just ask if you need more information.

Regards,
Lars.

Edit:
From lscpi -v:

00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
    Subsystem: ASUSTeK Computer Inc. Device 1763
    Flags: bus master, fast devsel, latency 0, IRQ 48
    Memory at febf8000 (64-bit, non-prefetchable) [size=16K]
    Capabilities: [50] Power Management version 2
    Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
    Capabilities: [100] Virtual Channel
    Capabilities: [130] Root Complex Link
    Kernel driver in use: HDA Intel
    Kernel modules: snd-hda-intel

01:00.1 Audio device: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
    Subsystem: ATI Technologies Inc RV635 Audio device [Radeon HD 3600 Series]
    Flags: bus master, fast devsel, latency 0, IRQ 51
    Memory at fdeec000 (32-bit, non-prefetchable) [size=16K]
    Capabilities: [50] Power Management version 3
    Capabilities: [58] Express Legacy Endpoint, MSI 00
    Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
    Kernel driver in use: HDA Intel
    Kernel modules: snd-hda-intel

Again, the Radeon HD 3600 Series is the one listed in pavucontrol.
I see they use the same kernel module. Could that be the problem?

Last edited by lmpe (2010-08-26 10:23:50)

Offline

#2 2010-08-25 21:29:07

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

Lars,

you might want to have a look at my thread:
https://bbs.archlinux.org/viewtopic.php?id=103495
..esp. how I "solved" the issue. I do not know if you need the soundoutput of your HDMI card but you could try to blacklist the HDMI soundmodule in the rc.conf (see the last posting of mine).

If you post the output of ls -l /sys/module/snd/holders we can have a look which modules you need to blacklist.

Otherwise you could try to set your default soundcard as described in the ALSA part of the arch wiki:
http://wiki.archlinux.org/index.php/Als … sound_card

HTH,
D$

Last edited by Darksoul71 (2010-08-25 21:30:45)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#3 2010-08-26 09:06:11

lmpe
Member
Registered: 2010-08-25
Posts: 5

Re: [Solved (-ish)] PulseAudio/ALSA default device

Thank you for the quick response.

Here's the contents of /sys/module/snd/holders:

lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_hda_codec -> ../../snd_hda_codec
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_hda_codec_realtek -> ../../snd_hda_codec_realtek
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_hda_codec_si3054 -> ../../snd_hda_codec_si3054
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_hda_intel -> ../../snd_hda_intel
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_hwdep -> ../../snd_hwdep
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_pcm -> ../../snd_pcm
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_seq -> ../../snd_seq
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_seq_device -> ../../snd_seq_device
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_seq_oss -> ../../snd_seq_oss
lrwxrwxrwx 1 root root 0 Aug 26 10:54 snd_timer -> ../../snd_timer

I had a look at your thread, but I can't make out from the above listing which of the modules that point to the HDMI output.

I also checked the ALSA wiki entry, and tried adding "options snd-hda-intel" to "/etc/modprobe.d/modprobe.conf", and also adding "options snd-hda-intel model=laptop enable=1 index=0" to "/etc/modprobe.d/sound.conf", but they both didn't resolve anything.

I discovered that if I start alsamixer and choose "Select sound card", "default" is just set to a dash, and index 0 and 1 are "HDA Intel" and "HDA ATI HDMI" respectively.

The output of "lsmod | grep '^snd' | column -t" aswell:

[lars@lars-linux ~]$ lsmod | grep '^snd' | column -t
snd_hda_codec_atihdmi  2095    1
snd_seq_dummy          1079    0
snd_seq_oss            25104   0
snd_seq_midi_event     4496    1   snd_seq_oss
snd_seq                41752   5   snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         4369    3   snd_seq_dummy,snd_seq_oss,snd_seq
snd_hda_codec_si3054   3106    1
snd_hda_codec_realtek  193684  1
snd_hda_intel          19020   2
snd_hda_codec          67274   4   snd_hda_codec_atihdmi,snd_hda_codec_si3054,snd_hda_codec_realtek,snd_hda_intel
snd_hwdep              4764    1   snd_hda_codec
snd_pcm                58276   3   snd_hda_codec_si3054,snd_hda_intel,snd_hda_codec
snd_timer              15423   2   snd_seq,snd_pcm
snd                    43283   14  snd_seq_oss,snd_seq,snd_seq_device,snd_hda_codec_si3054,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
snd_page_alloc         5981    2   snd_hda_intel,snd_pcm

snd_ati_hda_codec_atihdmi (thus snd_hda_codec?) might be the module to blacklist.

Regards,
Lars.

Offline

#4 2010-08-26 09:15:01

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

Hi Lars,

Hm, hard to tell but as a quick guess I would try to blacklist any module beside snd_hdacode_realtek and snd_hda_codec_si3054.

Mainly because ALC1200 is the name of an Realtek onboard sound solution. I think that snd_hda_realtek is your onboard sound (= ALC1200) and snd_hda_codec_si3054 is your modem. If you do not need your modem you might blacklist snd_hda_codec_si3054 as well.

To be more specific:
Your modules section inside rc.conf could look like this

snd_hda_codec_realtek snd_seq_oss !snd_hda_codec_si3054 !snd_hda_intel !snd_hda_codec !snd_hda_codec_atihdmi

Edit:
BTW: I would first try with alsamixer that your onboard sound shows up correctly as first/only device before you tinker around with pulseaudio.

HTH,
D$

Last edited by Darksoul71 (2010-08-26 09:53:58)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#5 2010-08-26 09:49:50

theDOC
Member
From: Aachen, Germany
Registered: 2009-06-18
Posts: 50

Re: [Solved (-ish)] PulseAudio/ALSA default device

If you set smplayer to alsa, it plays on the default alsa device. You have to create a rule either in ~/.asoundrc or in /etc/asound.conf to make the default play through pulseaudio:

pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

If you choose the "0.0 HDA Intel" output, it bypasses the default rule and pulseaudio and plays directly to the 0.0 device. From your list this would be "card 0: Intel [HDA Intel], device 0: ALC1200 Analog [ALC1200 Analog]".
If pavucontrol only shows your HDMI device, it could mean that something was already accessing your alsa devices directly before pulseaudio was started so that PA could not grab them. The asoundrc rules would also spawn PA automatically, if something tries to play through the default device.

Offline

#6 2010-08-26 09:59:41

lmpe
Member
Registered: 2010-08-25
Posts: 5

Re: [Solved (-ish)] PulseAudio/ALSA default device

Hi,

Oddly enough, nothing changes, as far as I can tell, when I blacklist the modules.
* Contents of aplay -l is still:

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC1200 Analog [ALC1200 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC1200 Digital [ALC1200 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
card 1: HDMI [HDA ATI HDMI], device 3: ATI HDMI [ATI HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

* The HDMI device is still listed in pavucontrol.

Think I might cave and see if I can remove PulseAudio and get it to work with just ALSA.

I still think it's weird, though, that alsamixer lists my default card as just a dash ('-').

Regards,
Lars.

Offline

#7 2010-08-26 10:01:49

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

Stupid question:
Have you rebooted your PC after changing rc.conf ?
Could you please post your rc.conf ? (if you do not mind ?)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#8 2010-08-26 10:11:39

lmpe
Member
Registered: 2010-08-25
Posts: 5

Re: [Solved (-ish)] PulseAudio/ALSA default device

Hehe, yes, I rebooted every time. ;-)

#
# /etc/rc.conf - Main Configuration for Arch Linux
#

# -----------------------------------------------------------------------
# LOCALIZATION
# -----------------------------------------------------------------------
#
# LOCALE: available languages can be listed with the 'locale -a' command
# HARDWARECLOCK: set to "UTC" or "localtime", any other value will result
#   in the hardware clock being left untouched (useful for virtualization)
# TIMEZONE: timezones are found in /usr/share/zoneinfo
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/consoletrans
# USECOLOR: use ANSI color sequences in startup messages
#
LOCALE="en_US.UTF-8"
HARDWARECLOCK="localtime"
TIMEZONE="Europe/Oslo"
KEYMAP="no-latin1"
CONSOLEFONT="default8x16"
CONSOLEMAP=
USECOLOR="yes"

# -----------------------------------------------------------------------
# HARDWARE
# -----------------------------------------------------------------------
#
# MOD_AUTOLOAD: Allow autoloading of modules at boot and when needed
# MOD_BLACKLIST: Prevent udev from loading these modules
# MODULES: Modules to load at boot-up. Prefix with a ! to blacklist.
#
# NOTE: Use of 'MOD_BLACKLIST' is deprecated. Please use ! in the MODULES array.
#
MOD_AUTOLOAD="yes"
#MOD_BLACKLIST=() #deprecated
MODULES=(snd_hda_codec_realtek snd_seq_oss !snd_hda_codec_si3054 !snd_hda_intel !snd_hda_codec !snd_pcm_oss)

# Scan for LVM volume groups at startup, required if you use LVM
USELVM="no"

# -----------------------------------------------------------------------
# NETWORKING
# -----------------------------------------------------------------------
#
# HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
#
HOSTNAME="lars-linux"

# Use 'ifconfig -a' or 'ls /sys/class/net/' to see all available interfaces.
#
# Interfaces to start at boot-up (in this order)
# Declare each interface then list in INTERFACES
#   - prefix an entry in INTERFACES with a ! to disable it
#   - no hyphens in your interface names - Bash doesn't like it
#
# DHCP:     Set your interface to "dhcp" (eth0="dhcp")
# Wireless: See network profiles below
#

#Static IP example
#wlan0="dhcp"
#eth0="dhcp"
INTERFACES=(!wlan0)

# Routes to start at boot-up (in this order)
# Declare each route then list in ROUTES
#   - prefix an entry in ROUTES with a ! to disable it
#
gateway="default gw 192.168.0.1"
ROUTES=(!gateway)

# Setting this to "yes" will skip network shutdown.
# This is required if your root device is on NFS.
NETWORK_PERSIST="no"

# Enable these network profiles at boot-up.  These are only useful
# if you happen to need multiple network configurations (ie, laptop users)
#   - set to 'menu' to present a menu during boot-up (dialog package required)
#   - prefix an entry with a ! to disable it
#
# Network profiles are found in /etc/network.d
#
# This now requires the netcfg package
#
#NETWORKS=(main)

# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
#   - prefix a daemon with a ! to disable it
#   - prefix a daemon with a @ to start it up in the background
#
DAEMONS=(syslog-ng hal networkmanager !network netfs crond)

Here you go. Blocking of !snd_pcm_oss is because it said so in the PulseAudio guide.

Offline

#9 2010-08-26 10:17:27

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

That's really strange. Blocking pcm_oss will not hurt unless you have an application which solely supports OSS (are there any beside legacy apps ?). Beside this the module line looks fine to me.

Are there any leftovers of earlier experiments in your modprobe.conf ?
What does lsmod|grep '^snd' | column -t say ?

Otherwise I am unfortunately out of ideas. Normally blacklisting modules in the rc.conf should avoid that they are loaded by udev.

Sorry,
D$


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#10 2010-08-26 10:17:30

lmpe
Member
Registered: 2010-08-25
Posts: 5

Re: [Solved (-ish)] PulseAudio/ALSA default device

I managed to get it working decent enough now, without really knowing what the problem was.
Turns out I had GStreamer installed aswell, so I opened gstreamer-properties and had 2 devices listed as "Unknown" as available Output devices.
Chose the one that played a beep when clicking "Test" and it worked. This is probably not set globally, though.

Flash plays with sound, SMPlayer uses the alsa device and plays as normal.

Thanks for the help. :-) I'm still at a loss of what the cause was, but it'll have to do for now.

Regards, Lars.

Last edited by lmpe (2010-08-26 10:18:22)

Offline

#11 2010-08-26 10:21:47

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

Hi Lars,

good to hear you have found some solution but it is still a mistery to me how your modules have been loaded although they where blacklisted hmm

Last edited by Darksoul71 (2010-08-26 10:22:32)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#12 2010-08-26 17:12:03

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: [Solved (-ish)] PulseAudio/ALSA default device

If module A is blacklisted but module B depends on module A and is not blacklisted, module A can still get loaded.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#13 2010-08-26 17:57:15

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

But sound modules should be rather independent, shouldn´t they ?


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#14 2010-08-26 18:49:22

Nepherte
Member
From: Singapore
Registered: 2008-09-09
Posts: 427

Re: [Solved (-ish)] PulseAudio/ALSA default device

While it doesn't seem logical, ngoonee's explanation is still the expected behavior.

Offline

#15 2010-08-27 01:45:30

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: [Solved (-ish)] PulseAudio/ALSA default device

Darksoul71 wrote:

But sound modules should be rather independent, shouldn´t they ?

Try lsmod | grep snd and check out the dependencies, there's quite a lot.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#16 2010-08-27 06:25:09

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

@ngoonee:
Thank you for your clarification ! I will try this out on my arch64 system just for curiosity.

I am simply (still) wondering why the blacklisting approach worked fine for me but not for Lars. Esp. since I do not see big differences in the system configuration (multiple sounddevices). But in the end I do not use PulseAudio.

Best regards,
D$

Last edited by Darksoul71 (2010-08-27 06:25:40)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

#17 2010-08-27 06:54:17

venky80
Member
Registered: 2007-05-13
Posts: 1,002

Re: [Solved (-ish)] PulseAudio/ALSA default device

I cannot imagine what it is so hard to configure pulse audio, why does it not work out of the box...
I mean it has been ages since I have played with ALSA ..it just works with no tweaking. Maybe it will take 3-4 years


Acer Aspire V5-573P Antergos KDE

Offline

#18 2010-08-27 09:26:23

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: [Solved (-ish)] PulseAudio/ALSA default device

venky80 wrote:

I cannot imagine what it is so hard to configure pulse audio, why does it not work out of the box...
I mean it has been ages since I have played with ALSA ..it just works with no tweaking. Maybe it will take 3-4 years

Why do you call it hard to configure? I'll assume since you're posting here that you DID install Arch....


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#19 2010-08-27 09:34:19

Darksoul71
Member
Registered: 2010-04-12
Posts: 319

Re: [Solved (-ish)] PulseAudio/ALSA default device

@venky80:
Hint: arch and "hard to configure" do not play nicely together wink

But beside joking: I do not find hard to setup PA. It sometimes has some issues (latency / high CPU load) but in general IMO it is pretty easy to handle. Most of the things can be done via GUI and the base setup is well described in the archwiki:
http://wiki.archlinux.org/index.php/Pulseaudio

Last edited by Darksoul71 (2010-08-27 09:36:41)


My archlinux x86_64 host:
AMD E350 (2x1.6GHz) / 8GB DDR3 RAM / GeForce 9500GT (passive) / Arch running from 16GB USB Stick

Offline

Board footer

Powered by FluxBB