Difference between revisions of "Pulse"

From Jon's Wiki
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
If you have spent days and days fucking around trying to get sound to work with your NVidia 220GT HDMI, you have to use hw:0,7 not hw:0,3 which is the first thing pulse sees, and you need to unmute it in ALSA.
+
If you have spent days and days fucking around trying to get sound to work with your NVidia 220GT HDMI, you have to use hw:0,7 (not hw:0,3 which is, it turns out, the first AND ONLY thing Pulse sees), and then you need to unmute it in ALSA.
 
  sudo apt-get install alsamixergui
 
  sudo apt-get install alsamixergui
Run alsamixergui and UNMUTE ALL FOUR FUCKING SPDIF CHANNELS. Then, add this to the end of /etc/pulse/default.pa:
+
Run alsamixergui and UNMUTE ALL FOUR SPDIF CHANNELS. It was apparently decided that leaving them muted by default was the sensible and least frustrating thing to do.
 +
 
 +
== Support for 24 bit 96 kHz audio ==
 +
Make Pulse use 32 bit samples in ''/etc/pulse/daemon.conf'' and bump up the sample rate:
 +
default-sample-format = s32le
 +
default-sample-rate = 96000
 +
 
 +
== Surround sound ==
 +
Since I have a surround HDMI amplifier, I use this in ''/etc/pulse/default.pa'' after the autodetect phase (which you might still want for when you plug in USB devices, for instance):
 
  load-module module-alsa-sink device=hw:0,7 channels=6 \
 
  load-module module-alsa-sink device=hw:0,7 channels=6 \
   channel_map=front-left,front-right,front-center,lfe,rear-left,rear-right
+
   channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe
 +
 
 +
and in ''/etc/pulse/daemon.conf'' you need:
 +
default-sample-channels = 6
 +
default-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
  
Alternatively, ditch the piece of shit and use ALSA instead:
+
== Dolby Digital and DTS "pass-through" streaming ==
sudo apt-get install gstreamer0.10-alsa gnome-alsamixer
+
There isn't currently a way to pipe the Dolby Digital or DTS streams directly to the amplifier without abandoning Pulse altogether and reverting to ALSA. However, these days decoding even 24/96 surround in Pulse uses pretty negligible CPU, and pass-through ALSA blocks the audio device anyway. This way also means you can enjoy all those annoying alarms, random pop-up beeps and messaging alerts while you watch your movies.
sudo apt-get purge pulseaudio gstreamer0.10-pulseaudio
 

Latest revision as of 04:22, 26 May 2012

If you have spent days and days fucking around trying to get sound to work with your NVidia 220GT HDMI, you have to use hw:0,7 (not hw:0,3 which is, it turns out, the first AND ONLY thing Pulse sees), and then you need to unmute it in ALSA.

sudo apt-get install alsamixergui

Run alsamixergui and UNMUTE ALL FOUR SPDIF CHANNELS. It was apparently decided that leaving them muted by default was the sensible and least frustrating thing to do.

Support for 24 bit 96 kHz audio

Make Pulse use 32 bit samples in /etc/pulse/daemon.conf and bump up the sample rate:

default-sample-format = s32le
default-sample-rate = 96000

Surround sound

Since I have a surround HDMI amplifier, I use this in /etc/pulse/default.pa after the autodetect phase (which you might still want for when you plug in USB devices, for instance):

load-module module-alsa-sink device=hw:0,7 channels=6 \
  channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe

and in /etc/pulse/daemon.conf you need:

default-sample-channels = 6
default-channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe

Dolby Digital and DTS "pass-through" streaming

There isn't currently a way to pipe the Dolby Digital or DTS streams directly to the amplifier without abandoning Pulse altogether and reverting to ALSA. However, these days decoding even 24/96 surround in Pulse uses pretty negligible CPU, and pass-through ALSA blocks the audio device anyway. This way also means you can enjoy all those annoying alarms, random pop-up beeps and messaging alerts while you watch your movies.