Wie funktioniert eine Soundkarte?

  • Ersteller Loop_Breaker
  • Erstellt am
Loop_Breaker

Loop_Breaker

Registriert
19.11.10
Beiträge
3.172
Reaktionen
1.111
Punkte
6.652
Hi.

Kann bitte Jemand erklären, wie eine Soundkarte funktioniert?


Was ist der Hardwarepuffer?

Kann in Wirklichkeit eine Soundkarte immer nur eine Buffersize auf Allen Ausgängen (vl. wegen den Hardwarepuffer) und man ist gezwungen Software zu verwenden um verschiedene Puffer gleichzeitig zu benutzen?

Warum kann aber ASIO, gleichzeitig mit WDM?

Ist core-audio ein Software, welche quasi alle verschieden großen Progammen-Puffer, in den Soundkarten-Puffer tut?

Wenn eine Soundkarte multi-ASIO-clientfähig ist, kann man dann auch verschiedene ASLA Server gleichzeitig drauf laufen lassen (wenn auch nur mit der gleichen Puffergröße)?


Lg
 
Danke. Hab‘s kurz überflogen, ist leider nicht was ich suche...
 
ASIO hat nichts mit ALSA zu tun.
Bei ASIO Treibern kann man glaube ich konfigurieren, ob man exklusiven oder multi-client access auf die Audio HW möchte.
Bei ALSA besteht glaube ich das Problem, dass ALSA nicht multi-clientfähig ist, darum gibt es dann unter den verschiedenen Linux Systemen noch zusätzlich sound server die dann das Multiplexing zwischen verschiedenen clients auf einem höheren Layer erledigen.
Das ist das was ich zu dem Thema noch schwach in Erinnerung habe.

Core-Audio ist doch das Sound System von Apple ... auf Apple hast Du Core Audio, kein ASIO.

Hardware Puffer .. alle möglichen Computerschnittstellen haben einen Hardware Puffer, zB FIFO Speicher.
Je größer der ist, desto seltener muss ein Interrupt ausgelöst werden, damit die Daten rechtzeitig von einer
Treiberroutine abgeholt werden, bevor neue Daten eintreffen. Das ist CPU schonender, reduziert die Interrupt Last.

Die Hardware hat buffer.
Im Treiber gibt es noch safety buffer vom Hersteller, neben der vom User einstellbaren ASIO buffersize.

Deine Frage streift 3 verschiedene Betriebssysteme, dann gehts noch um Buffer und Multiclientfähigkeit .. ich frage mich wo ist jetzt die eigentliche Frage oder worin besteht das eigentliche Problem ?
 
Super Danke!!!

Was mich gerade primär interessiert ist wie das OS mit der Soundkarte kommuniziert:
Die Audio-Anwendung gibt über die OS-Mechanismen,
schlussendlich über den Treiber, den Audio-Puffer an die Soundkarte.



Ist das nicht so, dass alle Treiber, mit der gleichen "Sprache", die Soundkarte ansprechen
und so der Treiber quasi einen Abstraktions-Layer darstellt, mit den das OS mit der Soundkarte spricht?

Also die Soundkarte ist es egal ob CoreAudio, ALSA oder ASIO Anwendungen laufen,
denn der Treiber ist der Ansprechpartner für die Soundkarte und ob der Treiber mit ASIO, ALSA oder CoreAudio
mit der Anwendung "kommuniziert" ist der Soundkarte shice egal?



Ich würde gerne meine RME Soundkarte vollwertig mit Linux nutzen.
TotalMix technisch bin ich wahrscheinlich zufrieden gestellt,
da "HDSP-Mixer" "alle" Funktionen meines MultifaceII,
welche es mit TotalMix kann, auch kann.

Aber ich würde gerne, Alle Anwendungen bis auf BitWig, mit einen hohen Puffer laufen lassen (aka Windows WDM),
und nur BitWig (welches eine Audio-Spur auf Monitoring hat, wo der "normale Anwendungen Ton", via Audio-Loopback
reinkommt) mit 32Sampels am laufen.
Zusätzlich würde ich von meinen Intel 5960X 8 Kerner CPU, 4 Kernen den "nomalen Anwendungen" zuweisen, und 4 versuchen exklusive Bitwig zuzuweisen.
Und Realtime-Kernel soll's auch sein...

Derzeit, bin ich am Verzweifeln, weil ich nicht mit der Soundkarten-Terminologie vertraut bin, und immer nach Gleichnissen von Anderen OS'en zu suchen, um Linux-Usern zu erklären was ich will...


Mein Kenntnisstand sieht derzeit so aus, dass ich froh sein kann wenn ich mein MultifaceII mit HDSP-Mixer als Totalmix Ersatz
zum laufen kriege, und dann via Jack/ALSA einen 32 Sample Soundkartenpuffer einstellen kann.
Dann hoffe ich das Pulse-Audio (Standart Ubuntu Soundserver // will mich nicht auf Ubuntu festlegen, will aber mit Ubuntu vertraut sein um Anderen damit helfen zu können) einen eigenen Puffer hat, welcher mir ermöglicht einen hohen Puffer einzustellen, und den PulsAudio-Output dann via Jack in's Bitwig, und dann wieder via Jack (welcher mit ALSA die Soundkarte anspricht) auf den gewünschten Ausgang.

Extrem nice wäre es:
wenn PulseAudio ("normale Anwendungen") via Jack auf "Multiface ADAT 7/8 Out" geht,
welcher via DSP-Mischer (HDSP-Mixer // TotalMix) loopbacked wird,
diesen loopbackten Ausgang, als Eingang in Bitwig wäheln.
Und dann in Bitwig via ALSA-Treiber auf den MultifaceII Ausgang raus, wo ich will
(dann würde mir Jack hinterm Bitwig Ausgang erspart bleiben).
Befürchte das geht nicht (mit meinen Skills), aber warum kann es Windows...


Lg
 
Zuletzt bearbeitet:
Die Aliens sind da....ich verstehe nur Bahnhof :eek:
 
  • Danke
Reaktionen: SOS
Diese Funktionalität die du suchst hat RME (nur) in den ASIO Treiber Programmiert. Der Alsa-Treiber (der eh nicht von RME stammt) kann das nicht. Alsa hat 2 Schichten eine die sich um HW kümmert und eine andere die Multi-Client-Kram kann. Mit der Arbeite ich aber nicht. Ich nehme halt Jack und PulseAudio für den Client-Kram.

Das was du willst ist mir schon klar. Wie man das erreicht nur theoretisch. Ohne was "neues" zu programmieren, fürchte ich wird, das wohl nicht gehen.
 
Die Aliens sind da....ich verstehe nur Bahnhof :eek:
Im Grunde ganz einfach: Man muss beim einsetzen der Warpplasmaspulen nur darauf achten eine Ebene 2 Diagnose durchzuführen
bevor man die Phasenemitter rekalibriert, während man die vordere Phasenphalanx mit den Schildgeneratoren sychronisiert.
Wie du ja weißt kann man hilfsweise auch einen Tachionimpuls in die Deflektorkammer schicken, bei der Soundkarte ist es fast genauso, nur anders.
sorry das ich euch dazwischenfunke :teufelswerk:
 
1. Der kleinste, einstellbare Buffersize im ALSA HDSP Treiber ist 64, da der 32er Mode nie eingebaut wurde.
Ihn einzubauen wäre aber kein grosser Act.
2. Der ALSA HDSP Treiber ist nicht multiclientfähig.
Könnte man zwar einbauen, ist aber ein etwas grösserer Act.
3. Mein Tip: Lasse Pulseaudio über das Onboard Audiogerät laufen und verbinde dessen (Stereo-)Outputs mit den Inputs am Multiface 2.
Vielleicht bietet das Onboard Audiogerät ja sogar einen S/P-DIF Ausgang, dann geht das ganze sogar digital.
 
@ matlo und Drumfix: Super Danke!!!

Das mit den onboard-Soundkarte auf mein Multiface2 hängen, geht leider nicht, ohne meine Verkabelung zu ändern...

Kann man vl. Jack mit niedrigen Puffer laufen lassen, und via Jack, Pulse-Audio einbinden, welches einen großen Audio-Puffer hat, für "normale Anwendungen"?

(hier ein Bild wie PulseAudio normalerweise aufgebaut ist, bei mir soll aber Pulse-Audio nicht direkt mit Alsa sprechen also mit der Soundkarte direkt, sondern über Jack)
1000px-Pulseaudio-diagram.svg.png



Andere Frage: Mir ist schon auf vielen Systemen aufgefallen, wenn ein ASIO-Treiber gerade aktiv wird, werden die Störgeräusche lauter, beendet man seine DAW (ASIO-Treiber inaktiv) verschwinden die Störgeräusche wieder.
Liegt das am Hardwarepuffer? (unter Linux konnte ich das noch nie beobachten > Linux nutzt die Hardware nicht vollständig?)
Ist jetzt ein ziemlicher Schuss ins blaue,
aber da ihr mir jetzt schon so weitergeholfen habt, könnt ihr mir vl. da auch noch weiter helfen?

Was muss man tun damit man beim HDSP-ALSA Treiber 32 Sampels einstellen kann?


Mein Computer To-Do sieht, in den nächsten Jahren so aus:
Mein Produktiv-Musik-OS ist fast fertig eingerichtet, und verwende es ausschließlich offline zum Musik machen, weil ich will, dass das immer 100% funktioniert, und ich M$ was mein win10 betrifft, misstraue.

Drum will ich mir jetzt ein Ubuntu-Linux-Multimedia-System einrichten, mit Bitwig und so... (eigentlich deshalb dieser Thread).

Und vermutlich wenn das mal läuft, ein Arch-Linux so realtime wie nur geht, gerade das meine Synths und DAW funktionieren, einfach mal um zu schauen was es bringt, und falls das pipifein funktionieren sollte, würde ich so ein Linux-Realtime-System live als Sound-Expander für ein MIDI-Keyboard verwenden...



Für die welche in diesen Thread nur Bahnhof verstehen:
Normalerweise installiert man z.B. Ubuntu und Bitwig, steckt seine Soundkarte an und ist ready2rock.

(mit Jack kann man sogar TotalMix "ersetzen", Jack läuft aber nativ auf der CPU und Totalmix auf einer DSP in einer RME Soundkarte...)
Aber ich will's halt genau wissen...


Lg
 
Zuletzt bearbeitet:
So, mein Denkfehler war wohl, dass ich dachte meine Soundkarte sei hardwaretechnisch "Multiclient-fähig", wie's aussieht erledigt dies aber in Wirklichkeit der Treiber, und da es diesen "RME-Treiber" unter Linux nicht gibt, fallen seine natürlichen Fähigkeiten weg.
Was aber unter Linux nichts macht, da man hier für "professionelles Audio" Jack verwendet, und dies Multiclientfähigkeit und Routing-Möglichkeiten bereitstellt.

Leider verwenden, die "normalen Anwendungen" (Firefox e.t.c.), in Ubuntu, standardmäßig PulseAudio anstelle Jack.
Aber Pulse-Audio (kann sogar Ton über Netzwerk und so) kann auch als Jack Client laufen.
Und man schickt mit Jack den Ton zwischen PulseAudio, DAW und Soundkarte(ALSA) hin und her.


Also mein Plan sieht derzeit so aus:
Firefox > PulseAudio (hier will ich einen hohen Puffer einstellen) > Jack (ab hier mit 32 Samples Puffer) > DAW (Bitwig) > Jack > ALSA > Soundkarte.
So haben "normale Anwendungen", dank PulseAudio hohen Puffer, und die DAW, dank Jack niedrigen Puffer:
jack und pa.jpeg

Der Screenshot in meinen vorherigen Post, zeigt die PulseAudio Architektur, in meinen Fall ist aber PulseAudio nicht direkt mit ALSA (Soundkarte) verbunden, sondern über Jack.


@clemenserwe Das Theman Soundkarte hat sich für mich derzeit wohl erledigt, und es geht jetzt speziell für Linux weiter, und würde gerne eine Thread dazu aufmachen, aber in welches UnterForum damit?
(Threadtitel: "Ubuntu für Musiker-/Tonmenschen gerecht einrichten", o. so ähnlich)


Lg
 
Zuletzt bearbeitet:
Ehrlich? Nutze ein gescheites Betriebssystem wie Win10 oder OS X und lass den Quatsch mit Linux.
Wie kann man sich das freiwillig antun und vor allem auch für Musikkram?
 
Win10 ist kein Beriesbssystem sondern ein Service^^

MacOS “kann” man nur auf Macs verwenden...
 
Win10 ist kein OS es ist ein Service^^
Das läuft nun schon seit Jahren auf meinem Rechner, der immer online ist, auch beim Musik machen.
Ich habe lediglich die Firewall von Win an, aber stelle da nix ein und nutze seit Jahren kein Antiviruszeuchs.
Dabei bin ich sicherlich kein "Saubermann", hatte aber noch nie Probleme (seit mehr als 30 Jahren nicht!)
Du scheinst einen paranoiden Touch zu haben ;)

MacOS “kann” man nur auf Macs verwenden...
Läuft auf Hackintosh, also PC mit OS X. Aber wusste jetzt nicht, ob du auch noch nen Mac hast.
Richte dir dein Windows vernünftig ein und mach Musik, anstatt dich mit unnützem Kram zu befassen ;)
 
Zuletzt bearbeitet:
Ehrlich? Nutze ein gescheites Betriebssystem wie Win10 oder OS X und lass den Quatsch mit Linux.
Wie kann man sich das freiwillig antun und vor allem auch für Musikkram?

Aber anderen Paranoia vorwerfen. Mit Linux kann man sehr wohl produktiv sein. Also hör bitte selber mit dem bashing auf.
 
Win10 ist kein OS es ist ein Service^^
Das läuft nun schon seit Jahren auf meinem Rechner, der immer online ist, auch beim Musik machen.
Ich habe lediglich die Firewall von Win an, aber stelle da nix ein und nutze seit Jahren kein Antiviruszeuchs.
Dabei bin ich sicherlich kein "Saubermann", hatte aber noch nie Probleme (seit mehr als 30 Jahren nicht!)
Du scheinst einen paranoiden Touch zu haben ;)

MacOS “kann” man nur auf Macs verwenden...
Läuft auf Hackintosh, also PC mit OS X. Aber wusste jetzt nicht, ob du auch noch nen Mac hast.
Richte dir dein Windows vernünftig ein und mach Musik, anstatt dich mit unnützem Kram zu befassen ;)

Kommt darauf, welche Ansprüche man hat. (32 Sampels Puffer IMMER // Außer ich muss)

Paranoid bin ich sicher nicht, hab mir 2 Jahre Win10 angetan, und hatte oft Probleme, dass Sachen nicht mehr funktionierten, i.d.R. kurz vor Win10updates.
Und mit nicht funktionieren meine ich, wenn ich sonst ein Projekt durchgehend mit 32Sampels puffer bearbeiten kann, konnte ich es oft (meist kurz vor win10-Upates) nicht mehr, ja mit 128Sampels gings dann, aber interessiert mich nicht,
die Mühle hat zu liefern wann ich will (also immer außer bei Wartungen) und nicht wann es Redmond genehm ist.


Außerdem ist Ubuntu weit benutzerfreundlicher als Win10, und kann mit Schrottsoundkarten (dank Jack) Sachen die sonst nur mit einer RME-Soundkarte oder so erwarten würde...

Und meinen USB-Soundkarte (RME-ADI2pro) steckt man an, installiert Bitwig stellt, wie überall üblich, den Treiber ein,
unter Linux ALSA (Bitwig spricht direkt mit Soundkarte) oder
Jack (hat dann Multiclientfähigkeit und RoutingMöglichkeiten), ein.
So schwer ist es nun auch wider nicht. (fast genau gleich wie unter Windows)
(Anmerkung: ich will aber mein RME-MultifaceII als Soundkarte verwenden, und benutze den ADI2pro nur als Wandler e.t.c.)

Ich hab hier Extrawürste, und sogar das scheint relativ einfach umsetzbar zu sein, (wenn man weiß wie's geht).


Seit meiner Win10 zeit hab ich glaub ich min. 5x den RME Treiber neu installieren müssen, und dieses WE sogar den GrafikTreiber neu installieren, e.t.c. ...
(system funktionier einwandfrei, M$ Pfuscht drauf herum > viel Spaß beim wieder herrichten. // nix einfach so schnell Musikmachen)..


Und auf meinen Musik-System muss ich eh Win10 verwenden (weil alten Windowse sich nicht sauber installieren lassen) und meine meiste MusikSoftware leider Win/Mac only ist.
Aber dieses WIn10-System ist ein reines offline System und daher kein Internet.

Und für's Internet starte ich mein Entertainment-System Ubuntu.
Das kriegt Jeder hin, das man damit streamen e.t.c. kann.
Ich will aber gleichzeitig, Bitwig, Fabfilter, uHe am laufen haben, wo der "normale Ton" auch durchgeht und will deshlab:
einen Soundserver, mit hohenPuffer laufen lassen (Pulse Audio),
und einen mit niedrigen Puffer...


Lg
 
Zuletzt bearbeitet:
Kommt darauf, welche Ansprüche man hat. (32 Sampels Puffer IMMER // Außer ich muss)
Dann nutzt man z.B. Studio One mit zb. 128 Buffer, dann bist du je nach Audiointerface bei unter 10ms Latenz, was vollkommen okay ist.
Man kann sogar noch einen Maximalen Dropout Schutz einstellen, wodurch man selbst bei höherem Buffer mit niedrigen Latenzen aufnehmen kann. Da du Bitwig schreibst, nehme ich mal stark an, dass du eh nicht echte Instrumente aufnimmst, sondern elektronischen Kram machst, weswegen 32 Buffer überhaupt nicht sein muss. Solange du bei unter 10ms Latenz bist, kannst du auch vernünftig einspielen, machen tausende gute Musiker täglich.
Und wenn man mag, könnte man Win Updates dauerhaft deaktivieren, oder per Hand einspielen (mit vorigem Backup), aber ich mache alle Updates und läuft bisher.

Mit Linux kann man sehr wohl produktiv sein. Also hör bitte selber mit dem bashing auf.
Ich nutze lieber auch gute Plugins, gute Windows Audio- und sonstige Programme.
 
Zuletzt bearbeitet:
Wenn interessiert das in einen Thread in dem es jetzt explizit im Linux geht?
Na irgendwer muss euch ja mal sagen, dass Linux für Audio Schrott ist und man sich das nicht zwingend dank Alternativen antun muss.
 
Naja, da Du anscheinend nicht mit 32 oder 64 Sampels Puffer arbeitest, fällt Dir vl. nicht mal auf wenn Dein Win10 im Hintergrund was werkelt...

Ich empfinde 128Samples Puffer @ 44,1khz zum einspielen schon zu viel.
64 Sampels Puffer, geht grad noch, (fängt an spaß zu machen)
32 Sampels Puffer bin ich gewohnt. (da macht's richtig spaß)

Wenn man in einen VSTi einen Piano-Sound eingestellt hat, und durch eine fast latenzfreie Plugin-Kette durchsingt,
oder mit vielen VSTi ein Streichorchester macht, ist es dann noch "elektronische Musik"?
Würde sagen "native Musik", also DirectMonitoring bringt nichts...
 
Zuletzt bearbeitet:

Ähnliche Themen

moonbooter
    • Danke
  • Artikel
Antworten
3
Aufrufe
2K
moonbooter
moonbooter
moonbooter
    • Danke
  • Artikel
Testberichte Test: Eventide H9 Max
Antworten
2
Aufrufe
1K
BassExplorer
B
RECORDING-Redaktion
  • Artikel
Antworten
0
Aufrufe
1K
RECORDING-Redaktion
RECORDING-Redaktion
moonbooter
    • Danke
  • Artikel
Antworten
5
Aufrufe
6K
YogiX
Y

Oft gelesene Themen

Zurück
Oben