[How-To] Acer Aspire Revo/ION - Output to both HDMI and SPDIF
#46
chris80 Wrote:I updated my ALSA install using this method:

1. Get AlsaUpgrade-1.0.23-2.tar from http://ubuntuforums.org/showthread.php?p=6589810
2. Extract the tar file

Silly noob question, but how can I do this from a terminal through putty?
Basically I only have a xbmc live install and no very little about linux.
I recall downloading my nvidia drivers directly..
After a lot of searching I found this thread, and thanks to Chris80 it looks like I am going to finally have XBMC set up for my Zone 2 (2 channel analog) and 6 channel through my amp over HDMI.
Chris80, I followed your instructions on modifying the asound.conf for 6 channel hdmi. Just wondering do you still pass through DTS etc? Or does the A52 plugin decode these on board and play through?
Cheers
Justin
Reply
#47
from the link you posted in the first post is directions
Quote:Short Alsa-Upgrade script install instructions:

1. download the script and save it somewhere
2. cd <your-download-dir>
3. tar xvf AlsaUpgrade-1.0.23-2.tar
4. sudo ./AlsaUpgrade-1.0.23-2.sh -d
5. sudo ./AlsaUpgrade-1.0.23-2.sh -c
6. sudo ./AlsaUpgrade-1.0.23-2.sh -i
7. sudo shutdown -r 0
Reply
#48
Ok so I have installed the Alsa Upgrade

I am still having issues. Just to clarify I want 2 channel analog and 6 channel through HDMI. Don'e use SPDIF at this stage but didn't think there was any harm in leaving it in.

I am now getting the message
"failed to initialize audio device"

I have this as my asound.conf file
Code:
# ---------------------------------------------------------------------
# Hardware - do not use directly
# ---------------------------------------------------------------------

pcm.analog-hw {
  type hw
  card 0
  device 0
}
ctl.analog-hw {
  type hw
  card 0
}

# ---------------------------------------------------------------------

pcm.digital-hw {
  type hw
  card 0
  device 3
}
ctl.digital-hw {
  type hw
  card 0
}

# -----------------------------------------------------------------------

pcm.spdif-hw {
    type hw
    card 0
    device 1
}
ctl.spdif-hw {
    type hw
    card 0
}

# -------------------------------------------------------------------------

pcm.dmix-analog {
  type dmix
  ipc_key 1234
  slave {
    pcm "analog-hw"
    period_time 0
    period_size 1024
    buffer_size 4096
    rate 48000
  }
}
ctl.dmix-analog {
  type hw
  card 0
}

# -------------------------------------------------------------------------

pcm.dmix-digital {
  type dmix
  ipc_key 1235
  slave {
    pcm "digital-hw"
    period_time 0
    period_size 1024
    buffer_size 4096
    rate 48000
  }
}
ctl.dmix-digital {
  type hw
  card 0
}

# ---------------------------------------------------------------------------
# Interfaces to Use
# --------------------------------------------------------------------------
pcm.digital-pcm AC3encode

# --------------------------------------------------------------------------

pcm.analog {
  type plug
  slave.pcm "analog-hw"
  hint {
    show on
    description "Analog Output - Use analog outputs, converting samples, format, and rate as necessary."
  }
}
ctl.analog {
  type hw
  card 0
}

# -----------------------------------------------------------------------------

pcm.mixed-analog {
  type plug
  slave.pcm "dmix-analog"
  hint {
    show on
    description "Mixed Analog Output - Use analog outputs, converting samples, format, and rate as necessary. Allows mixing with system sounds."
  }
}
ctl.mixed-analog {
  type hw
  card 0
}

# --------------------------------------------------------------------------------

pcm.digital {
  type plug
  slave.pcm "digital-hw"
  hint {
    show on
    description "Digital Output (HDMI) - Use digital outputs, converting samples, format, and rate as necessary."
  }
}
ctl.digital {
  type hw
  card 0
}

# ----------------------------------------------------------------------------------

pcm.mixed-digital {
  type plug
  slave.pcm "dmix-digital"
  hint {
    show on
    description "Mixed Digital Output - Use digital outputs, converting samples, format, and rate as necessary. Allows mixing with system sounds."
  }
}
ctl.mixed-digital {
  type hw
  card 0
}


pcm.AC3encode {
  type a52
  bitrate 448
  channels 6
}


# ---------------------------------------------------------------------------------
# -----------------------------------------------------------------------------------

# provide a default -for system sounds ??
pcm.!default {
  type plug
  slave {
    pcm multi
    rate 48000
  }
  # Analog Output downmix to 2 channel
  ttable.0.0 1.0
  ttable.1.1 1.0
  ttable.2.0 0.7  
  ttable.3.1 0.7  
  ttable.4.0 0.7  
  ttable.4.1 0.7  
  ttable.5.0 0.5  
  ttable.5.1 0.5
  # HDMI 6 Channel
  ttable.0.2 1.0 # FL -> FL
  ttable.1.3 1.0 # FR -> FR
  ttable.2.4 1.0 # RL -> RL
  ttable.3.5 1.0 # RR -> RR
  ttable.4.6 1.0 # C -> C
  ttable.5.7 1.0 # LFE ->LFE
  # Sdif 6 Channel
  ttable.0.8 1.0
  ttable.1.9 1.0
  ttable.2.10 1.0
  ttable.3.11 1.0
  ttable.4.12 1.0
  ttable.5.13 1.0
}
ctl.!default {
  type hw
  card 0
}

pcm.xbmc {
  type plug
  slave {
    pcm multi
    rate 48000
    channels 14
  }
  # Analog Output downmix to 2 channel
  ttable.0.0 1.0
  ttable.1.1 1.0
  ttable.2.0 0.7  
  ttable.3.1 0.7  
  ttable.4.0 0.7  
  ttable.4.1 0.7  
  ttable.5.0 0.5  
  ttable.5.1 0.5
  # HDMI 6 Channel
  ttable.0.2 1.0 # FL -> FL
  ttable.1.3 1.0 # FR -> FR
  ttable.2.4 1.0 # RL -> RL
  ttable.3.5 1.0 # RR -> RR
  ttable.4.6 1.0 # C -> C
  ttable.5.7 1.0 # LFE ->LFE
  # Sdif 6 Channel
  ttable.0.8 1.0
  ttable.1.9 1.0
  ttable.2.10 1.0
  ttable.3.11 1.0
  ttable.4.12 1.0
  ttable.5.13 1.0
  hint {
    show on
    description "XBMC device for analog 2 channel and hdmi 6 channel - spdif ac3 upto 6 channels"
  }
}
ctl.xbmc {
  type hw
  card 0
}

pcm.multi {
  type multi
  slaves.a.pcm "analog-hw"
  slaves.a.channels 2
  slaves.b.pcm "digital-hw"
  slaves.b.channels 6
  slaves.c.pcm "spdif-pcm"
  slaves.c.channels 6
  bindings.0.slave a
  bindings.0.channel 0
  bindings.1.slave a
  bindings.1.channel 1
  #Hdmi Bindings 6 Channels
  bindings.2.slave b
  bindings.2.channel 0 # FL
  bindings.3.slave b
  bindings.3.channel 1 # FR
  bindings.4.slave b
  bindings.4.channel 2 # RL
  bindings.5.slave b
  bindings.5.channel 3 # RR
  bindings.6.slave b
  bindings.6.channel 4 # C
  bindings.7.slave b
  bindings.7.channel 5 # LFE
  #Spdif Bindings 6 Channels
  bindings.8.slave c
  bindings.8.channel 0
  bindings.9.slave c
  bindings.9.channel 1
  bindings.10.slave c
  bindings.10.channel 2
  bindings.11.slave c
  bindings.11.channel 3
  bindings.12.slave c
  bindings.12.channel 4
  bindings.13.slave c
  bindings.13.channel 5
}
ctl.multi {
  type hw
  card 0
}

This is my aplay

Code:
login as: root
[email protected]'s password:
Linux XBMCLive 2.6.31-16-generic #53-Ubuntu SMP Tue Dec 8 04:01:29 UTC 2009 i686

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Thu Sep  9 19:10:03 2010 from 192.168.0.5
root@XBMCLive:~# aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
analog
    Analog Output - Use analog outputs, converting samples, format, and rate as necessary.
mixed-analog
    Mixed Analog Output - Use analog outputs, converting samples, format, and rate as necessary. Allows mixing with system sounds.
digital
    Digital Output (HDMI) - Use digital outputs, converting samples, format, and rate as necessary.
mixed-digital
    Mixed Digital Output - Use digital outputs, converting samples, format, and rate as necessary. Allows mixing with system sounds.
xbmc
    XBMC device for analog 2 channel and hdmi 6 channel - spdif ac3 upto 6 channels
front:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    Front speakers
surround40:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=NVidia,DEV=0
    HDA NVidia, ALC662 rev1 Digital
    IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, NVIDIA HDMI
    HDMI Audio Output
root@XBMCLive:~#

I thought I had it worked out but alas it wasn't to be.
I have my Audio out out Device as alsa:xbmc as instructed.

Any help is much appreciated.

Cheers
Justin

p.s oh if there are any other logs or reports I can get just let me know how too and I will post them up.
Reply
#49
Ok I think I almost have it fixed.
I commented out all the SPDIF references, channels, tables etc.
I am now getting AC3, DD, DTS encoded files etc passed through. (passthrough device HDMI)
I am now getting Multichannel audio from 5.1 AAC files through (Audio Out put device alsa:xbmc)
I have Audio coming out through the Analog/Zone 2 Speakers
I still have to play with the speaker mapping. I still seem to be getting the dialogue and main sound effects through the rear speakers, and background sounds through the fronts. I think this may be a encoding issue with some filles though. I tested some 2.0 soundtracks and they come through the fronts. (and only in 2.0 now as the amp is receiving the remainder of the channels just with no signal... I guess thats a small trade off...)
I guess I'll keep tinkering, but its pretty much doing what I need.
Reply
#50
Back again.
Still having a few dramas.
Basically 5.1 aac files aren't mapping to the correct speakers.
So dialogue etc is coming from rear surrounds and vice versa.
I have seen this posted as a problem few times, but haven't really found a solution.
Does anyone have any ideas on how to fix it?
Cheers
Reply
#51
Ja4220 Wrote:Silly noob question, but how can I do this from a terminal through putty?
Basically I only have a xbmc live install and no very little about linux.
I recall downloading my nvidia drivers directly..
After a lot of searching I found this thread, and thanks to Chris80 it looks like I am going to finally have XBMC set up for my Zone 2 (2 channel analog) and 6 channel through my amp over HDMI.
Chris80, I followed your instructions on modifying the asound.conf for 6 channel hdmi. Just wondering do you still pass through DTS etc? Or does the A52 plugin decode these on board and play through?
Cheers
Justin
Hi,
I have Yamaha and also use multi-zone.
If you with to use zones, it can only play audio taht is inputed in the Yamaha from analog signal (i.e. the white/red RCA cable). You cannot play in other zones anything that came from Coax, Optical or HDMI). This is written in very suble and unclear way in the manual. You need to find a way to output from HTPC the analog signal. Don't know how to do this, you need to search a bit.
Reply
#52
Has anybody had any luck with this getting it all working?
Reply

Logout Mark Read Team Forum Stats Members Help
[How-To] Acer Aspire Revo/ION - Output to both HDMI and SPDIF1