downlord89
Goto Top

ALSA - upmix, dmix, softvol

Der Upmix von 2.0 auf 7.1 soll Systemweit erfolgen, zusätzlich soll es möglich sein, von mehreren Quellen gleichzeitig zu spielen. Da kein Master vorhanden ist, soll ein softvol erstellt werden, mit welchem sich alle Kanäle regeln lassen.

Hi!

Seit 2 Wochen bin ich daran, auf Linux (openSuSE 10.2) umzusteigen. Schritt für Schritt richte ich derzeit das System ein, bis es endlich so funktioniert, wie es auch unter Windows hat.

Nun ist der Sound an der Reihe. Diesen habe ich bereits zum laufen gebracht, mit der .asoundrc habe ich mich bereits beschäftigt, allerdings verstehe ich noch nicht 100% was ich mache. Ich bin so ziemlich alle Wikis durchgegangen (wo übrigends auch immer etwas anderes steht) und komme einfach nicht mehr weiter.

mit dem 7.1 upmix habe ich am wenigsten Probleme, das kriege ich meist zum laufen.
Doch wie ich das Ganze mit dmix und softvol in Verbindung bringe, weiss ich nicht.

- PCI Soundkarte: Sound Blaster Live! 24-Bit (alsa card Nr. 0)
- Modul: snd_ca0106

Meine .asoundrc sieht momentan wie folgt aus:

# upmixing: 
# Kapiert und selbst verfasst
pcm.20to71 {
        type route
        slave.pcm "dmix71"  
        slave.channels 8
        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
        ttable.0.6 1
        ttable.1.7 1

}


# volume of all channels
# Will nicht funktionieren
pcm.softvol {
    type         softvol
    slave.pcm    "20to71"  
    control {
        name     "SoftMaster"  
        card     0
    }
}

pcm.dsp "duplex"   # Keine Ahnung für was  
pcm.dsp1 "duplex" # Keine Ahnung für was  


# 8 channel output with dmix
# Hab' ich so übernommen, ausser 8 statt 7 channels und pcm.dmixX.Y 
pcm.dmix71 {
  type dmix
  ipc_key 1024
  slave {
      pcm "hw:0,0" # Was muss ich hier nehmen? In XMMS steht "CA0106 hw:0,0" bis "hw:0,3")  
      channels 8
      period_time 0
      period_size 1024
      buffer_time 0
      buffer_size 4096
#      rate 48000
  }
}


# Brauch ich _noch_ nicht, hab's einfach mal übernommen 
pcm.dsnooper {
  type dsnoop
  ipc_key 2048
  ipc_perm 0666
  slave. pcm "hw:0,0"  
  slave
  {
     period_time 0
      period_size 1024
      buffer_size 4096
  }
  bindings {
      0 0
      1 1
  }
}

# Duplex und weiterleitung... so viel versteh ich.
pcm.duplex {
  type asym
  playback.pcm "softvol"  
  capture.pcm "dsnooper"  
}

# Standardgerät, ist klar. Weiterleitung an Duplex, ok.
pcm.!default {
  type plug
  slave.pcm "duplex"  
  slave.channels 8
}


Ich hoffe es kennt sich jemand damit aus! Bin auch gewillt, wenn es endlich geht, eine Anleitung zu schreiben :D (Mach ich sowieso, über den gesamten Umstieg)

Schönen Tag noch face-smile

Content-Key: 57578

Url: https://administrator.de/contentid/57578

Printed on: April 24, 2024 at 09:04 o'clock