Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe
allgemeine Kategorie => Allgemeine Diskussionen => Thema von: Sebastian am 22. November 2025, 11:54:04

Titel: Erfahrungsbericht/Lernprozess Tonaufnahme mit PipeWire
Beitrag von: Sebastian am 22. November 2025, 11:54:04

Einleitung:
Hallo Suletuxe,

ich erweitere aktuell mein Verständnis rund um digitale Tonaufnahmen. Ausgelöst wurde das Ganze, weil ich das Audiosignal meines Notebooks für ein anderes Gerät aufzeichnen wollte. Damit ich nicht blind eine Aufnahme starte, habe ich mich zuerst mit den Grundlagen beschäftigt. Mein Ziel war eine Aufnahme in 3x bis 4x facher Geschwindigkeit, die ich anschließend wieder auf Normaltempo dehnen kann.

TLDR;
Ich erkläre hier kurz meinen Weg zu einer sauberen Aufnahme über PipeWire, warum ich 96 kHz als Sample Rate gewählt habe und wie ich das Signal direkt von der Quelle aufnehmen konnte.

Hauptteil:
Die Sample Rate beschreibt, wie oft pro Sekunde ein analoges Signal abgetastet wird. Für die Rekonstruktion einer Frequenz benötigt man mindestens das Doppelte ihrer höchsten vorkommenden Frequenz. Diese Regel nennt sich das Nyquist-Kriterium. Bei 48 kHz Sample Rate lassen sich daher Frequenzen bis etwa 24 kHz erfassen. Wird die Sample Rate zu niedrig gewählt, falten sich höhere Frequenzen in tiefere Bereiche zurück. Dieser Effekt ist als Aliasing bekannt.

Die Bittiefe bestimmt den Abstufungsgrad der Lautstärke (Amplitude). Je höher die Bittiefe, desto weniger Rundungsfehler entstehen. Diese Fehler machen sich als Quantisierungsrauschen bemerkbar. Da die menschliche Stimme grob im Bereich bis etwa 10 kHz liegt und typischerweise einen Dynamikumfang von ungefähr 50–70 dB hat, reicht eine Bittiefe von 16 Bit für Sprachaufnahmen üblicherweise aus.

Da ich meine Quelle mit vierfacher Geschwindigkeit abspielen wollte, erhöht sich die effektive Frequenzlage entsprechend. Um alle relevanten Frequenzen verlässlich abzudecken, muss ich die Aufnahme-Sample-Rate also ebenfalls erhöhen. Theoretisch würde eine Sample Rate von etwa 80 kHz reichen, praxisnah wählte ich 96 kHz als Standardwert mit etwas Luft nach oben.

Für die praktische Umsetzung musste ich verstehen, wie ich unter PipeWire das PCM-Signal direkt von der Quelle aufnehmen kann. Ein Node ist bei PipeWire ein Audiopunkt, der Daten liefert oder empfängt. Ein Sink nimmt Audio entgegen, ein Monitor-Port bietet Zugriff auf das Signal eines Sinks. Für meine Aufnahme wollte ich jedoch eine direkte Quelle (Node) und keinen gemischten Ausgang. Das ermöglicht eine stille Aufnahme, während das System weiterhin andere Sounds wiedergeben kann.

Die systemweite Sample Rate stellte ich über eine Drop-In-Konfiguration auf 96 kHz um. Anschließend nutzte ich pw-record aus dem Paket pipewire-audio, womit ich direkt die gewünschte Quelle abgreifen konnte.

Beispiele:

Code:

# pw-record mit direkter Quellenangabe
pw-record --target <Node-ID> --rate 96000 --channels 1 aufnahme.flac

# Beispielhafte Drop-In-Konfiguration für PipeWire (system.conf.d)
# /etc/pipewire/pipewire.conf.d/10-samplerate.conf
context.properties = {
default.clock.rate = 96000
default.clock.allowed-rates = [ 48000 96000 ]
}


Fazit:
Durch die moderne Informatonstechnologie ist es leicht möglich, sich auch in komplett neue Themenbereiche einzuarbeiten. Grundlagenwissen hilft enorm, um technische Entscheidungen bewusst zu treffen. Jetzt kann ich die Theorie in der Praxis weiter festigen und Erfahrungen sammeln. Sollte ich einzelne Aspekte falsch eingeordnet haben, freue ich mich über Hinweise, um mein mentales Modell weiter zu verfeinern.

Quellenangabe:

  • PipeWire Doku (https://pipewire.pages.freedesktop.org/pipewire/)
  • Arch Wiki: PipeWire (https://wiki.archlinux.org/title/PipeWire)


  • LG
    Sebastian


Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2003, YaBB SE Dev Team. All Rights Reserved.