USB-Mikrofon einrichten

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich habe das Mikrofon auf eine Lautstärke von 130 gesetzt. Jedoch passiert es teilweise, dass diese Lautstärke auf 40 gesetzt wird. Das kann aber auch nicht stimmen, da ich in diesem Zustand überhaupt keinen Ton, sondern nur ein leises Rauschen hören kann.

  • Hm, weißt du mit Sicherheit, dass die Aufnahmequelle in diesem Fall immer noch das Mikrofon ist?

    Ist während das Programm aufnimmt der Zustand der Aufnahemequelle wirklich idle?

    Code
    pactl list sources short

    In der Ausgabe von

    Code
    pactl list source-outputs

    sollte das aufnehmende Programm zu finden sein und zwar inklusive Angabe der Aufnahmequelle (als Nummer Source bzw. Quelle) und der eingestellten Lautstärke.

  • Nun ist der Zustand mal wieder eingetreten. Das heißt, dass die Lautstärke des Aufnahmegeräts "Capture" von PulseAudio auf 40% gesetzt wurde. Zudem wird das Mikrofon bei unter "pactl list sources short" nicht mehr angezeigt. Die Status-LED am Mikrofon leuchtet jedoch weiterhin.

    Ich bin davon ausgegangen, dass das Mikrofon für den Dauerbetrieb ausgelegt ist. Ich stelle eher den Zusammenhang mit PulseAudio her, da dieses Problem mit dem reinen ALSA nie aufgetreten ist. Dazu gehört auch, dass die Lautsprecher teilweise übersteuern, was erst mit PulseAudio eingetreten ist.

    smutbert

  • Das Übersteuern kann ich mir nur mit Reglerstellungen über 100% erklären.

    Wenn das Mikrofon aus Pulseaudio verschwindet (oder beim Start gar nicht erst auftaucht), wäre es interessant ob

    - es in Alsa auftaucht arecord -l

    - Fehler im Zusammenhang mit USB im Log gibt dmesg

    - das Mikrofon vielleicht von irgendeiner Anwendung blockiert wird, sodass Pulseaudio es nicht verwenden kann, was sich in /proc feststellen lässt – ich würde es mit

    Code
    $ cat /proc/asound/UB1/pcm?c/sub?/??_params

    versuchen

  • Hallo,

    in der Datei daemon.log konnte ich nun folgende Einträge finden:

    Feb 28 22:40:57 raspberrypi pulseaudio[23666]: W: [alsa-source-USB Audio] alsa-util.c: Got POLLNVAL from ALSA

    Feb 28 22:40:57 raspberrypi pulseaudio[23666]: W: [alsa-source-USB Audio] alsa-util.c: Could not recover from POLLERR|POLLNVAL|POLLHUP with snd_pcm_prepare(): No such device

  • dmesg oder journalctl -kund da jeweils die Meldungen vor dem Auftreten dieses Fehler wären trotzdem interessant. Eine mögliche Erklärung wäre nämlich ein Reset des USB-Geräts, nach dem Pulseaudio nichts mehr mit dem Gerät anfangen kann (das würde auch erklären wieso ein Neustart von Pulseaudio hilft) und das würde bei den Kernelmeldungen auftauchen.

    Die andere mögliche Erklärung, die ich aber für unwahrscheinlicher halte, wäre, dass tatsächlich ein anderes Programm das Mikrofon blockiert. Das kannst du mit dem Befehl, den ich bereits im vorigen Beitrag gepostet habe ausschließen oder einfacher mit

    Code
    $ fuser -v /dev/snd/*

    (es sollte nur Pulseaudio in der Ausgabe auftauchen)

    Einmal editiert, zuletzt von smutbert (1. März 2018 um 11:54)

  • Hallo,

    das Problem ist nun wieder aufgetreten. Hier sind die Ausgaben von dmesg:

    jXv9ek

    Was bedeutet die Meldung "Transfer to device 5 endpoint 0x2 frames [...]"?

    Kann das vielleicht damit zusammenhängen, dass ich in der config.txt unter /boot folgende Zeile hinzugefügt habe?:

    max_usb_current=1

    Das ist jedoch notwendig, um auch die Festplatte noch an dem Raspberry Pi betreiben zu können. Oder deutet der Abbruch der USB-Verbindung des Mikrofons auf eine Überlastung hin?

    smutbert

    2 Mal editiert, zuletzt von Twister21 (3. März 2018 um 11:06)

  • Meines Wissens erhöhst du mit max_usb_current=1 den Strom, den der RPi maximal über USB liefert. Wenn das Netzteil dann schon am Limit ist oder insgesamt für den Pi zu viel Strom verbraucht wird, können schon scheinbar unerklärliche Probleme auftreten, aber ob das zu genau dieser Meldung passt, weiß ich nicht. (Der Disconnect passt allerdings in dieses Bild.)

  • Ein Hinweis wäre möglicherweies, wenn das nur bei hoher Rechenlast oder bei großer Last an einem der USB-Geräte (zB der Festplatte) auftritt.

    Wenn ich es nicht durcheinanderbringe, hast du doch mindestens 3 USB-Geräte am RPi hängen (Soundkarte, Mikrofon, Festplatte) und das bedeutet, dass auch mindestens ein USB-Hub im Spiel ist?

    Zumindest testweise müsstest du mit nur einem, dem USB-Mikrofon auskommen. Wenn dann keine Probleme auftauchen, muss es etwas mit USB liegen, vielleicht dem Hub (?) oder der Stromversorgung.

    Nachdem ich keine Idee habe wie du den RPi mit Strom versorgst, willst du dir die Varianten und deren Vor- und Nachteile in diesem Artikel einmal durchlesen: [ Info ] Stromversorgung Raspberry Pi

    Sonst habe ich keine Ideen. Ich habe selbst am PC schon genug USB-bezogene Merkwürdigkeiten erlebt, die ich gar nicht oder nur durch Zufall aufklären konnte.

  • Hallo,

    an dem Raspberry Pi befindet sich eine USB-Soundkarte, ein USB-Mikrofon, eine USB-Festplatte und das USB-Kabel der Lautsprecher für die Stromversorgung. Damit sind die vier USB-Ports belegt. Das heißt, dass eine einfache Lösung für das Problem ein USB-Hub ist, der extern über Strom versorgt wird. Daran könnte ich dann die Festplatte und das Mikrofon anschließen, welche anscheinend eine größere Stromstärke als die anderen Geräte benötigen.

    Ich werden den Versuch mit nur einem USB-Gerät dann durchführen, um zu wissen, ob ich die beschriebene Lösung nutzen kann.

    • Offizieller Beitrag

    Daran könnte ich dann die Festplatte und das Mikrofon anschließen

    Besser auch die Versorgung der Lautsprecher. Bitte achte bei einem eventuellen Kauf auf ein starkes Netzteil des aktiven USB-Hub und ggf. USB3. ;)

    • Offizieller Beitrag

    Hallo Twister21,

    ich zitiere mich mal selber:

    Kaufempfehlung kann ich leider nicht geben, da der von mir genutzte HUB nicht mehr im Sortiment ist und für mir unbekannte Geräte möchte ich keine "Hand ins Feuer" legen. Nur soviel: Ich würde nach einem USB 3-Hub mit möglichst Leistungsstarkem Netzteil suchen. USB 3 weil das im Vergleich zu USB 2 bis zu 900 mA statt nur bis zu 500 mA möglich sind.

    Sorry, empfehlen würde ich Dir nur, dass Du in einen Elektronikfachmarkt Deines Vertrauens gehst und vor Ort kaufst. Das ist zwar oft etwas teurer als in Amazonien, aber ich hatte bisher nur gute Erfahrungen mit (den Mitarbeitern) der hiesigen Conrad-Filiale gemacht.

  • hyle schon mal dran gedacht, dass es nicht an jeder Ecke eine Conrad-Filliale gibt? Und bei Saturn oder Media Markt kann man echt auf Leute treffen, die absolut keine Ahnung haben :geek:

    Ganz so rosig ist die Realität der Elektrofachgeschäfte gar nicht. Ich persönlich bin ja froh, dass es hier nich noch (Edit: nich(t) "nich", aber noch gemerkt... ;)) einen einzigen letzten Laden für elektronische Bauteile gibt, sodass ich nicht für jede LED oder Widerstand >5€ Versandkosten beim C zahlen muss ;)

    PS: wer billig kauft, kauft oft zwei mal... Insofern würde ich da nochmal drüber nachdenken.

    • Offizieller Beitrag

    Linus Vermutlich bin ich da zu verwöhnt und/oder es klingt evtl. etwas dekadent, wenn ich die C-Apotheke empfehle weil ich hinlatschen kann. Mit den Märkten der Metro-Group hatte ich übrigens ähnliche Erfahrungen wie Du, egal ob "Ich bin doch nicht bl..." oder "Geiz ist gei...". :wallbash:

  • Hallo,

    ich habe mir noch keinen USB-Hub gekauft, da das alte Problem bisher nicht mehr aufgetreten ist. Jedoch habe ich nun das Problem, dass manchmal die Wiedergabe von pulseaudio extrem schlecht ist. Das heißt, dass der Sound extrem kratzt und auch sehr schnell und undeutlich wiedergegeben wird. Das ist aber nicht immer so, sondern tritt ganz zufällig auf.

    Kann dieses Problem auch mit einer nicht ausreichenden Stromversorgung zusammenhängen? Oder gibt es Einstellungen in der Konfiguration von pulseaudio, die getätigt werden müssen? Mit reinem ALSA tritt dieses Problem nicht auf. smutbert

    EDIT: Das Problem tritt nun anscheinend immer auf, wenn die Lautsprecher für längere Zeit nicht genutzt wurden. Dann kommt es bei der ersten Wiedergabe nach einer Pause wieder zur schnellen Wiedergabe und dem Kratzen.

    EDIT 2: Mir ist gerade aufgefallen, dass die CPU-Auslastung von pulseaudio auf fast 80% ansteigt, wenn dieses Problem auftritt. Sonst ist diese bei etwa 10%.

    3 Mal editiert, zuletzt von Twister21 (1. April 2018 um 10:36)

  • Stromversorgungsprobleme können sich auf fast jede erdenkliche Weise äußern.

    Bei deiner Beschreibung würde ich aber einmal testen ob das drastische Hinaufsetzen von exit-idle-time in /etc/pulse/daemon.conf etwas ändert (Kommentarzeichen ; nicht übersehen) oder wahlweise ob die parallele Wiedergabe von Stille, um die Soundkarte beschäftigt zu halten, etwas ändert:

    Code
    $ aplay /dev/zero

    Dauerlösung ist das vielleicht zwar keine, weil es die Systemlast und/oder Stromverbrauch erhöht, aber zumindest lässt sich so das Problem vielleicht etwas eingrenzen.

    Gibt es bei dir möglicherweise eine Datei »/etc/pulse/daemon.conf.dpkg-new« oder »/etc/pulse/daemon.conf.dpkg-dist« oder so?

  • Ich glaube, dass das leider nicht damit zusammenhängt. Mir ist aufgefallen, dass die angezeigte Prozessorauslastung für pulseaudio manchmal bei einer Wiedergabe auf etwa 60% ansteigt und in diesem Zusammenhang auch das Problem auftritt. Jedoch ist die Prozessorauslastung von pulseaudio häufig auch nur bei 12%. Damit tritt dann auch kein Problem auf.

  • Eventuell könnte es schon interessant sein ob das nur passiert, wenn Pulseaudio sozusagen aus dem Standby geholt werden muss oder ob das auch passiert, wenn pulseaudio bereits normal läuft und mit der Wiedergabe von Stille beschäftigt ist.

    Sonst erinnert mich der Fehler an ein Problem, das aber eigentlich schon seit langem gelöst sein sollte. Bei dem und ähnlichen Schwierigkeiten hat es oft geholfen in der »/etc/pulse/system.pa« bzw. »/etc/pulse/default.pa« (erstere für einen systemweiten Pulseaudiodaemon, zweitere für benutzerspezifische Pulseaudio-Instanzen) die Zeile

    Code
    load-module module-udev-detect

    in

    Code
    load-module module-udev-detect tsched=0

    zu ändern.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!