Comment 67 for bug 148097

Revision history for this message
Dewey_Oxberger (jonb-cirris) wrote :

Belgarth:

With ALSA everything is possible :)

The hdmi device that is defined by default in the newer alsa revs doesn't seem to fix the number of channels or the sample rate. Here is an asound.config that I posted several months ago on the ubuntu forums. This config defines a virtual device that wraps the hardware, then adds channel and rate correction, then adds volume control, then sets that as the default for the system. Works in all the apps I've tried (flash in firefox included):

# Jon B's ASound.Conf file for HDMI Audio on MythTV
# HDMI configuration with volume control for MythTV
# For ALSA 1.0.19 - 1/31/2009

# Instructions for use
# 1) Find your hmdi hardware Card Number and Device Number. Open a terminal and do:
# aplay -L
# That will list all of the hardware audio devices. Look for the one labeled HDMI.
# Note what Card Number and Device Number it lists (they seem to be card 0,
# device 3 but your system may be different).
# 2) Edit the pcm.hdmi_hw device defined here to set your Card Number and Device Number.
# 3) Put this file in either /etc/asound.conf or in your home directory as .asoundrc.
# sudo cp deweys_asound.conf.txt /etc/asound.conf
# or
# sudo cp deweys_asound.conf.txt $HOME/.asound.conf
# 4) Exit mythfrontend. Then restart the sound system:
# sudo /etc/init.d/alsa-utils restart
# 5) Start mythfrontend and go to the audio setup screen
# "Utilities / Setup" then "Setup" then "General" then "Next" until you
# get to the Audio tab.
# 6) Fill in the info - it's case sensitive:
# Audio output device: ALSA:hdmi_complete <--- note you have to type in this field
# Passthrough output devide: Default
# ... Stereo... ... Passive...
# Mixer Device: ALSA:default
# Mixer controls: hdmi_volume <--- type in this field
# 7) Work your way back to Watch TV and give it a try.

pcm.hdmi_hw {
  type hw
  card 0 # <----- Put your card number here
  device 3 # <----- Put your device number here
}

pcm.hdmi_formatted {
  type plug
  slave {
    pcm hdmi_hw
    rate 48000
    channels 2
  }
}

pcm.hdmi_complete {
  type softvol
  slave.pcm hdmi_formatted
  control.name hdmi_volume
  control.card 0
}

pcm.!default hdmi_complete