![Samplingrate in ALSA ändern](https://rvso.com/image/31650/Samplingrate%20in%20ALSA%20%C3%A4ndern.png)
Ich bin ein Computer-Audiophiler und habe Windows (mit ASIO4ALL) und OSX für Audio verwendet. Jetzt mache ich Ubuntu 13 zu meinem HTPC/Stereo-Audio. Zunächst habe ich Pulse Audio deaktiviert und verwende GooMusicplayer mit ALSA.
Mein DAC ist zu 24 Bit und 96 kHz fähig. Ich kann keine Konfiguration für ALSA finden, um die Ausgabe-Abtastrate einzustellen. Wie kann ich sie konfigurieren?
Antwort1
Alsa verwendet standardmäßig dieselbe Abtastrate und dasselbe Format wie die Quelle. Es ist jedoch möglich, die Abtastrate zu erhöhen (oder zu verringern).
Hier ist eine Möglichkeit, wie Sie es tun könnten. (in/etc/asound.confoder~/.asoundrc)
pcm.device{
format S24_LE
rate 96000
type hw
card 0
device 0
}
Machen Sie dieses PCM dann einfach zum Slave eines anderen, beispielsweise Ihres Standard-PCM (Stereo). (Warnung: Das 24-Bit-Format funktioniert nur, wenn Sie eine kompatible Karte haben. Ich verwende normalerweise S32_LE, das auf den meisten Karten funktioniert.)
pcm.!default{
type plug
slave.pcm "device"
}
Das Obige funktioniert allerdings nur bei Stereoquellen (wenn Sie also von einer 5.1-Quelle abspielen, die standardmäßig Surround51 PCM verwendet, wird es etwas komplizierter).
Die einzige mir bekannte (und von mir selbst verwendete) Möglichkeit, die Abtastrate von nicht-stereo-Quellen zu erhöhen, besteht darin, Teile vondiese asound.conf/asoundrc(toter Link) und ändern Sie sie. (Hinweis: Ich habe diese Datei nicht selbst geschrieben.)
(Meineasound.confin dieser Frage und kopieren Sie das einfach direkt, anstatt sich die Mühe zu machen, es unten manuell zu ändern)
Kopieren Sie zuerst das „dmixed“-PCM und ändern Sie seinen Hardwareabschnitt auf die gewünschte Abtastrate und das gewünschte Format.
Kopieren Sie dann die !default-, Surround40- und Surround51-PCMs so wie sie sind. Dadurch wird der gesamte Ausgang effektiv per Dmixing gemischt und die Samplerate aller 2.0-, 4.0- und 5.1-Quellen auf die Samplerate hochkonvertiert, die im Dmixed-PCM eingestellt wurde.
In dieser Konfigurationsdatei könnte auch das PCM „upmix20_51“ interessant für Sie sein, da es eine effektive Möglichkeit ist, 2.0-Quellen auf 5.1 hochzumischen, indem die Töne selektiv auf die anderen Kanäle dupliziert werden. Wenn Sie es verwenden möchten, müssen Sie den Typ von „Plug“ in „Route“ ändern und es dann als Slave für das Standard-PCM festlegen.
pcm.!default{
type plug
slave.pcm "upmix20_51"
}
Da „surround51“, das von diesem PCM verwendet wird, „dmixed“ als Slave verwendet, gilt die erzwungene Abtastrate auch für dieses PCM.
Leider werden Monoquellen derzeit nur über den linken Lautsprecher ausgegeben, aber das ist kaum ein Problem, da Mono-Soundquellen heutzutage selten sind. Das Beispiel, das ich gerade gegeben habe, ist genau das, was ich selbst habe.asound.confkonfiguriert ist, viel Spaß, wenn Sie ein 5.1-Lautsprecher-Setup haben und eine Abtastrate von 96 kHz erzwingen möchten.
Theoretisch würde ich denken, dass das Erzwingen einer höheren Abtastrate nichts bringt (da die Vorstellung, dass sich dadurch die Qualität des Audiosignals von der Quelle mit niedrigerer Abtastrate verbessern würde, absurd ist). Daher sind Sie besser dran, wenn Sie die Anwendung so konfigurieren, dass sie eine Ausgabe mit 96 kHz verwendet.
Ich hatte jedoch einige Probleme mit Knackgeräuschen (in bestimmten Spielen, wie Xcom: Enemy Unknown), wenn ich weder die Frequenz 96 kHz noch 44,1 kHz erzwinge. Da ich durch das Erzwingen von 96 kHz überhaupt nichts verliere (es verbessert oder verschlechtert die Qualität von 44,1/48 kHz-Quellen nicht), war dies eine perfekte Lösung.
Antwort2
Die Abtastrate des Geräts entspricht standardmäßig der von der Anwendung dafür konfigurierten Rate, also der Abtastrate der Originaldatei.
Antwort3
Die anderen Antworten sind teilweise richtig.
Die meisten Soundkarten unterstützen standardmäßig keine Mehrkanalwiedergabe. Wenn Sie eine dieser Karten mit integriertem Mehrkanalmixer besitzen, brauchen Sie hier wahrscheinlich nicht weiterzulesen. ALSA mischt mehrere Sounds in einer Software.
Grundsätzlich sind 2 Optionen möglich:
Umgehen Sie die Ausgabe der Mix-Software komplett und genießen Sie eine größere Klangpalette (höhere Sampling- und Bitrate, zum Beispiel durch Kanalisierung auf 6 oder mehr Lautsprecher).
Es darf nur ein Programm mit der Soundkarte arbeiten!
Aktivieren Sie das Software-Mixing und verlieren Sie etwas Qualität, die Sie wahrscheinlich sowieso nicht bemerken werden. (Asus Xonair DX mit Sennheiser HD598 getestet, habe überhaupt keinen Unterschied bemerkt, habe 96 kHz 6-Kanal-Abtastrate-FLACS und 192 kHz 2-Kanal-FLACS verwendet.)
Auf diese Weise können mehrere Programme funktionieren! Ich bin allerdings kein Audiophiler, jedenfalls noch nicht.
Die zweite Option ist standardmäßig aktiviert, wenn Ihre Hardware das gleichzeitige Mischen mehrerer Streams nicht unterstützt.
NOTIZ:Es gibt auch eine dritte Option. ALSA kann mit Neuabtastung in der Software konfiguriert werden, aber meiner Erfahrung nach ist es zwar möglich, alle Apps so einzustellen, dass sie mit der maximalen Abtastrate und Bitrate neu abgetastet werden, aber es kam zu merklichen Verzögerungen bei FPS-Spielen, was für einen Spieler NICHT OK ist (ungefähr eine Drittelsekunde, als ich die Kugeln aus der Waffe abgefeuert habe, was mich höllisch genervt hat).
Beachten Sie, dass die dritte Option aus mehreren Gründen wahrscheinlich nicht praktikabel ist:
- Ich habe es nicht gründlich getestet, aber ich vermute, dass einige Apps möglicherweise immer noch Probleme damit haben.
- Die meisten Audiosammlungen liegen in einer Abtastrate von 44,1/44 kHz und einer Bitrate von 16 vor, es sei denn, Sie verwenden viel FLAC. Aber selbst dann muss FLAC eine höhere Abtastrate enthalten.
- Upsampling sorgt NICHT für eine bessere Klangqualität (theoretisch schon, aber wenn Sie billige Kopfhörer verwenden, werden Sie es nicht bemerken, da bin ich mir zu 99 % sicher).
- Verzögerungen bei Spielen sind sehr real, es sei denn, ich habe in meiner
.asoundrc
Datei etwas falsch gemacht.
Um die Sache noch verwirrender zu machen, kann es im positiven Sinne sogar noch schlimmer werden. Sie können „Geräte“ mit unterschiedlichen Einstellungen (Kanäle/Rate/Abtastrate/physikalische Ausgabe- und Eingabekonfiguration) erstellen. Und einige Apps können Geräte verwenden, die Sie manuell erstellen, andere nicht. Das nervt mich wahnsinnig.
Am berüchtigtsten und problematischsten: Flash Player.
Diese Antwort gilt für jemanden, der keine über USB angeschlossenen Kopfhörer verwendet. Diese haben ihre eigenen integrierten Soundkarten und ich habe darüber nur begrenzte Kenntnisse, wahrscheinlich gilt dies eher für diejenigen mit integrierten Soundkarten auf der Hauptplatine. Gilt möglicherweise trotzdem für USB-Headsets, aber man sollte das Ganze mit Vorsicht genießen. Ich schätze, dass wahrscheinlich etwa 10 % aller produzierten Soundkarten ohnehin Hardware-Mixing verwenden würden, da dies für die Hardware als Option nicht möglich wäre. Optischer Ausgang ist eine große Ausnahme. Soweit ich weiß, braucht optischer Ausgang kein Mischpult. Das Demultiplexing findet im „Empfänger“ statt, wo es von der Hardware durchgeführt wird. Verlassen Sie sich nicht auf mein Wort.
Antwort4
Danke für die obigen Informationen, @Cestarian. Das sollte mir helfen, das semiprofessionelle USB-Audio-Interface auf die Sampling-Rate zu bringen, die bei meiner Aufnahme standardisiert ist (96K). Ich finde, das ist sehr aufschlussreich, was die Einrichtung dieser Maschine für das Studio angeht.
Um Ihnen zu helfen, da Sie mir geholfen haben, werde ich diese Fragen beantworten:
" Theoretisch würde ich denken, dass das Erzwingen einer höheren Abtastrate nichts bringt (da die Vorstellung, dass sich dadurch die Qualität des Audiosignals von der Quelle mit niedrigerer Abtastrate verbessern würde, absurd ist). Daher sind Sie besser dran, wenn Sie die Anwendung so konfigurieren, dass sie eine Ausgabe mit 96 kHz verwendet.
Ich hatte allerdings Probleme mit Knackgeräuschen (in bestimmten Spielen, wie Xcom: Enemy Unknown), wenn ich weder die Frequenz 96 kHz noch 44,1 kHz erzwinge. Da ich durch das Erzwingen von 96 kHz überhaupt nichts verliere (die Qualität von 44,1/48 kHz-Quellen wird dadurch weder verbessert noch verschlechtert), war dies die perfekte Lösung."
Es gibt eine Anwendung, bei der Sie ein digitales Signal nehmen und es in einen Multiplikator umwandeln, der höher ist als das Original: digitale Jitter-Reduktion. Es wäre interessant, die Präzision eines Computers im Vergleich zu einer externen Sample-Rate-Konverter-Box zu testen, die in Mastering-Studios für diesen Zweck verwendet wird.
zum zweiten: Ich stelle mir vor, dass es einen Verarbeitungsrahmen geben muss, der ausgeführt werden muss, wenn die Abtastrate nicht definiert ist. Logischerweise müsste er die eingehenden Daten von der Festplatte erfassen und sie dann (wenn sie nicht korrekt sind) in den Datenstrom formatieren, anstatt sie einfach in den Datenstrom auszugeben. Der Ton verwendet Echtzeitverarbeitung und nicht CPU. Aber da Sie auch hochsampeln, könnten Sie die Schwankungen der Abtastrate der Quelle in der Sounddatei des Spiels beheben.