Hallo Leute,
ich will euch heute mal wieder auf die etwas andere Probe stellen. 😉
Es geht nun darum, dass ich, wo auch immer, mal meine .asoundrc zusammengetragen hab. Da meine Soundkarte Hardwaremixing nicht unterstützt musste DMIX her, an sich kein Problem.
Vor ein paar Wochen hatte ich dann das Buffer-Problem, das auch gelöst werden konnte. Seither läuft alles ohne Fehler... bloß das soll sich nun ändern. 😉
Ich habe herumexperimentiert, gesucht und sogar gefunden.
Mein erster Test mit dem generischen Surround51-Device verlief ins Nirvana... da ich mich vertippt hatte. Der nächste war dann wiederrum von Erfolg gekrönt.
Jetzt habe ich hier im Board noch einen 5.1 Upmix gefunden, wunderbar. ☺
Da ich im GStreamer aber "ALSA" als Ein- und Ausgabemodul benutze kann ich nicht explizit "ch51dup" als Ausgangsroute festlegen. Da hab ich mir gedacht, dass es doch irgendwie möglich sein muss das direkt in DMIX mit einzubauen, da es ja praktisch nur eine Weiterleitung ist. Also DMIX → ch51dup → hw. Korrigiert mich, falls das eine blöde Idee war.
Ich hab aber leider keine Ahnung, wie ich das machen soll... viell. weiß ja einer von euch mehr. ☺
Hier ist erstmal meine .asoundrc:
# Die Soundkarte wird festgelegt. pcm.snd_card { type hw card 0 } # Das dmix-Plugin wird definiert. pcm.dmixer { type dmix ipc_key 1024 ipc_perm 0666 # Andere Benutzer können ebenfalls dmix gleichzeitig nutzen ( geil! :) ) slave.pcm "snd_card" slave { # buffer_size kann bei Problemen der jeweiligen Karte angepasst werden. period_time 0 period_size 1024 buffer_size 24756 # bei Störungen kann die Konvertierung auf die Rate 44100 eingeschaltet werden. # rate 44100 } bindings { 0 0 1 1 } } # Dies definiert unser dmix-Plugin als Standard für alle ALSA-Programme. pcm.!default { type plug slave.pcm "dmixer" } ######## # AOSS # ######## # DSP wird simuliert und benutzt das dmix-Plugin. pcm.dsp "dmixer" pcm.dsp1 "dmixer" # OSS-Steuerung für dsp0 (falls es benötigt wird...) ctl.dsp { type plug slave.pcm "snd_card" } # OSS-Steuerung für dsp0 (falls es benötigt wird...) ctl.mixer { type plug slave.pcm "snd_card" } pcm.ch51dup { type route slave.pcm surround51 slave.channels 6 ttable.0.0 1 ttable.1.1 1 ttable.0.2 1 ttable.1.3 1 ttable.0.4 0.5 ttable.1.4 0.5 ttable.0.5 0.5 ttable.1.5 0.5 }