You are not logged in.
Hi there,
I'm experiencing just plain old poor sound whenever I play music, videos or whatever. There's no crackling, distortion or anything, it just sounds like my cellphone on speaker. And I have no idea how to fix this.
Hardware:
- VIA VT2021 (audio chip onboard my mainboard)
- some old 4.1 surround speaker set
$ lspci | grep -i audio
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)$ aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
default
Default ALSA Output (currently PulseAudio Sound Server)
sysdefault:CARD=PCH
HDA Intel PCH, VT2020 Analog
Default Audio Device
front:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
Front speakers
surround21:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=PCH,DEV=0
HDA Intel PCH, VT2020 Digital
IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=NVidia,DEV=0
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
HDA NVidia, HDMI 1
HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
HDA NVidia, HDMI 2
HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
HDA NVidia, HDMI 3
HDMI Audio Output$ pacmd list-sinks
1 sink(s) available.
* index: 0
name: <alsa_output.pci-0000_00_1b.0.analog-surround-41>
driver: <module-alsa-card.c>
flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: RUNNING
suspend cause:
priority: 9959
volume: front-left: 32741 / 50% / -18.08 dB, front-right: 32741 / 50% / -18.08 dB, rear-left: 32741 / 50% / -18.08 dB, rear-right: 32741 / 50% / -18.08 dB, lfe: 32741 / 50% / -18.08 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 28.23 ms
max request: 17 KiB
max rewind: 861 KiB
monitor source: 0
sample spec: s16le 5ch 44100Hz
channel map: front-left,front-right,rear-left,rear-right,lfe
Surround 4.1
used by: 1
linked by: 3
configured latency: 40.00 ms; range is 0.50 .. 2000.00 ms
card: 1 <alsa_card.pci-0000_00_1b.0>
module: 7
properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "VT2020 Analog"
alsa.id = "VT2020 Analog"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "0"
alsa.card_name = "HDA Intel PCH"
alsa.long_card_name = "HDA Intel PCH at 0xf7410000 irq 30"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:00:1b.0"
sysfs.path = "/devices/pci0000:00/0000:00:1b.0/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "1e20"
device.product.name = "7 Series/C210 Series Chipset Family High Definition Audio Controller"
device.form_factor = "internal"
device.string = "surround41:0"
device.buffering.buffer_size = "882000"
device.buffering.fragment_size = "441000"
device.access_mode = "mmap+timer"
device.profile.name = "analog-surround-41"
device.profile.description = "Analog Surround 4.1"
device.description = "Built-in Audio Analog Surround 4.1"
alsa.mixer_name = "VIA VT2020"
alsa.components = "HDA:11060441,1458a014,00100100"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
analog-output-lineout: Line Out (priority 9900, latency offset 0 usec, available: yes)
properties:
active port: <analog-output-lineout>$ lsmod | grep snd
snd_hda_codec_hdmi 49152 1
snd_hda_codec_via 20480 1
snd_hda_codec_generic 69632 1 snd_hda_codec_via
snd_hda_intel 32768 7
snd_hda_codec 106496 4 snd_hda_codec_hdmi,snd_hda_codec_via,snd_hda_codec_generic,snd_hda_intel
snd_hda_core 49152 5 snd_hda_codec_hdmi,snd_hda_codec_via,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep 16384 1 snd_hda_codec
snd_pcm 86016 6 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_core
snd_timer 28672 1 snd_pcm
snd 65536 20 snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_via,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
soundcore 16384 1 sndSettings set in /etc/pulse/daemon.conf
enable-lfe-remixing = yes
flat-volumes=no
default-sample-channels = 5
Looks good to me, but the sound is awful. There's sound coming from all four speakers (really flat though), subwoofer seems to be silent.
Any help is appreciated, I don't really have a place to start. Configuration wise everything's looking good to me, most trouble shooting stuff from pulseaudio/audio in general wiki pages doesn't really seem to apply, since there's no trouble like for example crackling - it simply sounds just really flat.
edit: Added solved to the title. In short: lfe-crossover-freq = 0 did the trick for me. Thank you V1del!
Last edited by hybrid (2015-10-24 14:01:36)
Offline
What's your resampler/what's your source player? can you post
pacmd list-sink-inputswhile having said source open? Usually the default resampler of speex-float-1 doesn't sound so good, crank that up a little to like 5 or 10 (although at this point it's likely to be more of a CPU cycle sink than an improvement) remember to restart pulseaudio in between tries (pulseaudio -k and waiting for it to respawn is usually enough)
To restore old subwoofer mixing behaviour (which is to just mix everything to get something out of the subwoofer instead of filtering out higher frequencies) set lfe-crossover-freq to 0 while keeping lfe-remixing around.
Offline
Source player doesn't matter which one I choose, everything sounds bad. For testing purposes I'm firing up youtube (not the ideal source, but will suffice for testing):
$ pacmd list-sink-inputs
1 sink input(s) available.
index: 6
driver: <protocol-native.c>
flags: START_CORKED
state: RUNNING
sink: 6 <alsa_output.pci-0000_00_1b.0.analog-surround-41>
volume: front-left: 53493 / 82% / -5.29 dB, front-right: 53493 / 82% / -5.29 dB
balance 0.00
muted: no
current latency: 56.69 ms
requested latency: 50.02 ms
sample spec: float32le 2ch 44100Hz
channel map: front-left,front-right
Stereo
resample method: copy
module: 9
client: 7 <CubebUtils>
properties:
media.name = "AudioStream"
application.name = "CubebUtils"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "30"
application.process.id = "1462"
application.process.user = "xxxx"
application.process.host = "yyyy"
application.process.binary = "firefox"
window.x11.display = ":0.0"
application.language = "en_US.UTF-8"
application.process.machine_id = "05d0dy1110bc4060843e69c82z7414z3"
application.process.session_id = "c1"
application.icon_name = "firefox"
module-stream-restore.id = "sink-input-by-application-name:CubebUtils"Setting lfe-crossover-freq = 0 made a huge improvement, speex-float-5 did too. Sounds good again! Thank you so much for your help!
Now I'll play around with different speex-float values and just to improve my understanding, I have two more questions:
- How come the channel map is only front left/right stereo although it's 4.1?
(pavucontrol lets me control all 5 channels independently though and it works, like when I crank one up and the others down, the correct speaker is only playing. But the speakers to the right seem to be a little bit less powerful than the ones on the left)
- Why were you asking about the resampler? Is it worthwhile for me (an average user) to look into different resamplers?
(I was surprised to see speex there anyways, for some reason I don't associate speex with great things. 'pulseaudio --dump-resample-methods' lists for examplfe ffmpeg amongst other choices as well)
Again, these two questions are mainly out of curiosity, thank you so much for shedding some light for me on all of this!
Last edited by hybrid (2015-10-24 14:01:19)
Offline
The channel map you see there is the channel map of the source, i.e. the youtube video only has stereo sound. This will then be upmixed by pulseaudio to get an approximation of the full 4.1 setup, but of course this will simply be copying what's front left from the video to rear left and vice versa for the right channel.
I was asking about the resampler because I know that the default of speex-float-1 is a bit overly conservative and usually when not running on a low power netbook or something, the added CPU usage is worth the improvement in quality. In general apart from looking at different values in speex-float you shouldn't really have to bother with other resamplers especially ffmpeg introduces quite some latency iirc the soxr based ones are new and of higher quality than the speex-float resampler but currently has a bug that introduces 20ms of latency on everything.
You can of course play around a bit but it's usually recommended to stay with the speex-float resamplers as they have been the most tested and stable (there's also speex-fixed, but on a normal x86 based cpu floating point calculations are quicker and have more quality)
Offline
Perfect, thank you for the information, evaluation and explanation!
Have a great week! Gotta love mondays.
Take care
Offline
I'm not using any upmixing and I have the exact same experience, pulseaudio sounds bad in all cases.
Use the Source, Luke!
Offline
That isn't the relevant part of the thread soo have you tried the same things I said in here? If it didn't help and you want help with it you should make a new thread as this one has been solved in the OP's point of view
Offline