Pulse Audio - Realtek ALC892 - MP3 wiedergabe: Nur Schrott?

Riddler82

Leitung Moderation
Teammitglied
Mitglied seit
11.11.2001
Beiträge
9.611
Renomée
426
Standort
Bayern, am Rande des Wahnsinns
  • SIMAP Race
  • QMC Race
  • Spinhenge ESL
  • BOINC Pentathlon 2012
  • BOINC Pentathlon 2014
Nachdem mein "altes" MoBo ja sich mit dem FX-8350 nicht richtig verträgt bin ich auf Asus M5A97 R2.0 Evo umgestiegen.
So weit so schlecht. Denn das Evo hat zwar - wie das 970 Extreme3 - Realtek ALC892, aber hier ist irgendwie der Wurm drin.

Unter Ubuntu (verschiedene Versionen und DEs getestet) habe ich immer wieder Aussetzer bei der MP3 Wiedergabe, so eine Art stottern. Sehr nervig, da die Songs unter Windows 7 und auch vorher unter Ubuntu Problemlos wiedergegeben wurden.

Probiert habe ich schon verschiedene Lösungsansätze: Verschieden Player probiert, gestreamer entfernt und stattdessen lame mp3 probiert, Pulse Audio deaktivieren und kompett entfernen, einmal wurde vorgeschlagen HPET im Bios abzuschalten... hat alles nix gebracht, die Aussetzer sind weiterhin vorhanden. Und das kotzt mich an, da praktisch alles über den PC läuft.

Hat noch jemand eine Idee, hinweis, Lösung? Oder auch nur ähnliche Erfahrungen?
 
Schau dir mal auf der manpage pulse-daemon.conf(5) die Section zu "resample-method" an:
http://manpages.ubuntu.com/manpages/jaunty/man5/pulse-daemon.conf.5.html

resample-method= The resampling algorithm to use. Use one of src-sinc-
best-quality, src-sinc-medium-quality, src-sinc-fastest, src-zero-
order-hold, src-linear, trivial, speex-float-N, speex-fixed-N, ffmpeg.
See the documentation of libsamplerate for an explanation for the
different src- methods. The method trivial is the most basic algorithm
implemented. If you’re tight on CPU consider using this. On the other
hand it has the worst quality of them all. The Speex resamplers take an
integer quality setting in the range 0..9 (bad...good). They exist in
two flavours: fixed and float. The former uses fixed point numbers, the
latter relies on floating point numbers. On most desktop CPUs the float
point resmampler is a lot faster, and it also offers slightly better
quality. See the output of dump-resample-methods for a complete list of
all available resamplers. Defaults to speex-float-3. The --resample-
method command line option takes precedence. Note that some modules
overwrite or allow overwriting of the resampler to use.
Da ich selbst so ein Problem noch nicht hatte weiß ich nicht, ob das hier wirklich hilft, aber ich habe schon von anderen gelesen, dass es funktionieren kann.
Bevor Missverständnisse aufkommen: Es geht um die Datei /etc/pulse/daemon.conf
 
Hallo

@ Riddler82 :

Hast du mal einen anderen Kernel getestet, z.B 3.13 ?
Da ich das gleiche Mainboard mit Ubuntu 13.10 und Windows 7 verwende
habe ich das mal versucht, die verwendeten Kernel waren/sind 3.11.18 und 3.13.5 .

MfG
RedBaron
 
Als wenn Alsa nicht auch einen gewissen Ruf "weg hätte".

Abgesehen davon, Respektlosigkeiten helfen hier keinem weiter. Pulseaudio kann das Problem sein, kann Teil des Problems sein aber es kann auch unabhängig sein.

Falls Alsa (im Kernel) das Problem sein sollte, dann könnte es helfen sich die Optionen des Alsa Moduls anzuschauen:
https://git.kernel.org/cgit/linux/k.../Documentation/sound/alsa/HD-Audio-Models.txt

Ich glaube jedenfalls nicht, dass da was zu holen ist. Jedenfalls sollte das Modul snd_hda_codec_realtek geladen sein.
 
Danke für die Antworten, ich war ein paar Tage nicht da und hab mir jetzt ne Virus-Grippe eingefangen.

Verwendeter Kernel ist aktuell der 3.11. Bisher habe ich es nicht geschafft, sauber auf Alsa umzustellen. Wenn ich mich heute mal etwas besser fühlen sollte, probier ich noch etwas herum.
 
So, wie es aussieht, wäre das Problem (bei mir) leicht zu lösen gewesen.

Die Aussetzer oder Stotterer wurden besser nachdem in der /etc/pulse/daemon.conf von speex-float-1 (default soll ja eigentlich speex-float-3 sein) auf src-sinc-best-quality umgestellt wurde.
resample-method = ffmpeg scheint es völlig zu umgehen.
Das realtek Kernelmodul war übrigens geladen.

Naja, Pulseaudio hat sich in meinen Augen dadurch nicht gerade gesteigert, vor allem nachdem ich ähnlich Probleme bereits vor einigen Jahren schon hatte (Damalige Lösung: Andere Distribution). Ich versteh blß nicht wieso es auf dem Asrock MoBo mit dem selben Audiocodec und Ubuntu-Version keine Probleme gab.

Jedenfalls besten Dank für die Ideen und vor allem an Berniyh, auf die daemon.conf wäre ich wohl nicht gekommen.


*edit: So ganz stimmts immer noch nicht. Bei den Songs die ich bisher als Referenz benutzt habe, ist es wohl weg, aber noch nicht überall. Da geht die Suche wohl noch weiter.
 
Zuletzt bearbeitet:
Ich versteh blß nicht wieso es auf dem Asrock MoBo mit dem selben Audiocodec und Ubuntu-Version keine Probleme gab.
Tja, leider sind die wohl nicht identisch. Wäre nicht das erste Mal, dass man zu so einer Erkenntnis gelangt.
 
Irgendwo wird es wohl einen Unterschied geben. Ärgerlich ist es natürlich trotzdem.
Vielleicht findet sich auch noch ne BIOS-Option die ich bisher übersehen hatte.

Im Moment bin ich wieder ratlos. Es sieht so aus, als ob es zuerst weg wäre, aber dann mit zunehmender Laufzeit wieder schlimmer wird.
 
Ok, das ist definitiv seltsam. Welche Version von Pulseaudio ist eigentlich installiert? Evtl. hilft da auch ein Upgrade?
Code:
pactl --version
Oder natürlich im Paketmanager nachschauen.
 
sagt version 4.0.

Ich hab jetzt noch einen Ansatzpunkt gefunden. Dank "pulseaudio -k; sleep 4; pulseaudio -vv" kann man den Debug-Mode starten. Und siehe da:
D: [pulseaudio] module-alsa-card.c: Jack 'Front Headphone Jack' is now unplugged
D: [pulseaudio] device-port.c: Setting port analog-output-headphones to status no
D: [pulseaudio] module-switch-on-port-available.c: finding port analog-output-headphones
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Activating path analog-output
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Path analog-output (Analoge Ausgabe), direction=1, priority=99, probed=yes, supported=yes, has_mute=yes, has_volume=yes, has_dB=yes, min_volume=0, max_volume=64, min_dB=-179, max_dB=0
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Master, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x7ffffffffffff, n_channels=1, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Headphone, direction=1, switch=1, volume=3, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x6, n_channels=2, override_map=no
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Front, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x6, n_channels=2, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Surround, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x60, n_channels=2, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Side, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0xc00, n_channels=2, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element Center, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x4900000000018, n_channels=1, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element LFE, direction=1, switch=1, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x80, n_channels=1, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element PCM, direction=1, switch=0, volume=1, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x3600000000f66, n_channels=2, override_map=yes
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Element IEC958, direction=1, switch=2, volume=0, volume_limit=-1, enumeration=0, required=0, required_any=0, required_absent=0, mask=0x0, n_channels=0, override_map=no
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Jack Line Out, alsa_name='Line Out Jack', detection unavailable
D: [alsa-sink-ALC892 Analog] alsa-mixer.c: Jack Line Out Phantom, alsa_name='Line Out Phantom Jack', detection unavailable
I: [alsa-sink-ALC892 Analog] alsa-sink.c: Successfully enabled deferred volume.
I: [alsa-sink-ALC892 Analog] alsa-sink.c: Hardware volume ranges from -179,00 dB to 0,00 dB.
I: [alsa-sink-ALC892 Analog] alsa-sink.c: Fixing base volume to 0,00 dB
I: [alsa-sink-ALC892 Analog] alsa-sink.c: Using hardware volume control. Hardware dB scale supported.
I: [alsa-sink-ALC892 Analog] alsa-sink.c: Using hardware mute control.
I: [pulseaudio] sink.c: Changed port of sink 1 "alsa_output.pci-0000_00_14.2.analog-stereo" to analog-output
I: [pulseaudio] module-device-restore.c: Restoring volume for sink alsa_output.pci-0000_00_14.2.analog-stereo.
D: [alsa-sink-ALC892 Analog] alsa-sink.c: Requested volume: 0: 82% 1: 82%
D: [alsa-sink-ALC892 Analog] alsa-sink.c: in dB: 0: -5,04 dB 1: -5,04 dB
D: [alsa-sink-ALC892 Analog] alsa-sink.c: Got hardware volume: 0: 83% 1: 83%
D: [alsa-sink-ALC892 Analog] alsa-sink.c: in dB: 0: -5,00 dB 1: -5,00 dB
D: [alsa-sink-ALC892 Analog] alsa-sink.c: Calculated software volume: 0: 100% 1: 100% (accurate-enough=yes)
D: [alsa-sink-ALC892 Analog] alsa-sink.c: in dB: 0: -0,04 dB 1: -0,04 dB
D: [alsa-sink-ALC892 Analog] sink.c: Volume not changing
I: [pulseaudio] module-device-restore.c: Restored volume: 0: 82% 1: 82%


Scheint, als ob hier die automatische Erkennung von angeschlossenen Geräten rumzicken würde, die Meldung kommt bei jedem Hänger.

---------- Beitrag hinzugefügt um 21:07 ---------- Vorheriger Beitrag um 18:25 ----------

Aktueller Stand: Abändern der Front-Audio Option von "HD" auf "AC97" scheint das Problem behoben zu haben. bisher kein Fehler mehr im Debugger und keine Aussetzer. Ich bleib weiter dran.
 
Für eventuelle interessierte: Das Problem mit der falschen Jack-Erkennung scheint öfter aufzutreten in Verbindung mit PulseAudio.

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1248116 "PulseAudio switch rapidly port making the sound horrible"
https://bbs.archlinux.org/viewtopic.php?id=147225 "Pulseaudio incorrectly detects a headphone being plugged in"
usw.

Als mögliche Fixes stehen unter anderem im Raum:

- Frontpanel abschalten
- Frontpanel-Modus umstellen von HD auf AC97, fast alle bekannten Gehäuse haben eh nur AC97
- load-module module-switch-on-port-available in /etc/pulse/default.pa auskommentieren
- https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1248116/comments/9
you can use hdajackretask to set Misc bit (MISC=NO_PRESENCE)

bit 8 of pin default of your headphone and mic at ext front

so that driver don't use jack detection on these two pin complex

or

change pulseaudio conf

http://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/src/modules/alsa/mixer/paths

to ignore the state of these two jacks


- https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1248116/comments/12 (anzupassen für das eigene System)
in /etc/modprobe.d just add a file hda-jack-detect.conf with the following lines :

# This file was added as a workaround to the jack detection issue with a Gigabyte GA-Z87X-UD3H motherboard
# If you want to revert the changes, you can simply erase this file and reboot your computer.
options snd-hda-intel patch=hda-jack-detect.fw

And in /lib/firmware add a file hda-jack-detect.fw with the following lines :

[codec]
0x10ec0899 0x1458a002 2

[hint]
jack_detect = no

Then reboot !

For information : you can check the file /proc/asound/card0/codec* to verify that the [codec] line matches your hardware (vendor-id subsystem-id address)

head -n 10 /proc/asound/card0/codec*

Codec: Realtek ALC898
Address: 2
AFG Function Id: 0x1 (unsol 1)
Vendor Id: 0x10ec0899
Subsystem Id: 0x1458a002


Meine Soundwiedergabe ist jetzt wieder fehlerfrei.
 
Zuletzt bearbeitet:
Ich weiß schon, wieso ich PA nach jedem Versuch wieder in die Kloake versenke. Das Zeug ist vielleicht gut gemeint, aber am Ende kommt irgendwo doch nur Schrott bei raus. Ist halt Lennardware. :(
 
Wobei das Problem bei mir auch vom Mainboard bzw. der Einstellung im BIOS kommt. Es ist mir unverständlich, dass als Voreinstellung fast immer "HD" gewählt wird von den Entwicklern, wo nahezu jedes Gehäuse nur einen AC97 Anschluss hat. Ich dürfte nicht der erste sein, bei dem das Schuld ist.
Und jetzt funzt ja alles einwandfrei.

PulseAudio war halt mein erster Verdächtiger, kann aber wohl in meinem Fall nur bedingt was dafür.
 
Wobei das Problem bei mir auch vom Mainboard bzw. der Einstellung im BIOS kommt. Es ist mir unverständlich, dass als Voreinstellung fast immer "HD" gewählt wird von den Entwicklern, wo nahezu jedes Gehäuse nur einen AC97 Anschluss hat.
Was meinst du damit?
 
Frontpanel "HD" wäre Mehrkanal und was weiß ich noch alles, AC97 ist letztlich das, was die meisten Gehäuse haben: Eine Stereo-Klinke für Kopfhörer und Mikrofon.
Scheinbar führt die aktive Kombination von "HD" im Bios mit einem AC97 Frontpanel eben zu dem bekannten Phänomen.
 
Zurück
Oben Unten