[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Erweiterte .asoundrc Datei erstellen



Bitte stell deine Zeilenbreite auf unter 80 Zeichen (empfohlen: 72) ein,
danke. Nicht jeder Editor kann Zitate auf Knopfdruck korrekt
umformatieren. Außerdem wäre es höflicher, würdest du deinen Namen
nennen.

* roterstern@arcor.de <roterstern@arcor.de> [20041207 17:05]:
> 1.  Alle Soundausgaben von Alsa fähigen Programmen (z.B. Mplayer)
> sollen bei Bedarf zusammen gemixt (z.B. gleichzeitiges Benutzen von
> Mplayer & Gaim usw.) und auf der Soundkarte ausgegeben werden, ohne
> das die betreffenden Programme etwas bemerken. Auch wenn Punkt 2.
> schon eingetreten ist.
> 
> 2.  Alle Soundausgaben von NICHT Alsa fähigen Programmen sollen bei
> Bedarf zusammen gemixt und auf der Soundkarte ausgegeben werden, ohne
> das die betreffenden Programme etwas bemerken. Auch wenn Punkt 1.
> schon eingetreten ist.

Diese beiden Punkte sind mit dmix möglich. Ich habe dazu folgende
systemweite Konfiguration:

,--[ /etc/asound.conf ]--
| pcm.card0 {
|         type hw
|         card 0
| }
| 
| pcm.!default {
|         type plug
|         slave.pcm "dmixer"
| }
| 
| pcm.dsp0 {
|         type plug
|         slave.pcm "dmixer"
| }
| 
| pcm.dmixer {
|         type dmix
|         ipc_key 1024
|         ipc_perm 0666
|         slave {
|                 pcm "hw:0,0"
|                 period_time 0
|                 period_size 1024
|                 buffer_size 4096
|                 #periods 128
|                 rate 44100
|         }
|         bindings {
|                 0 0
|                 1 1
|         }
| }
`--

Dabei wird "default" umdefiniert, so dass jedes Alsa-Programm ohne
weitere Konfiguration über dmix läuft. Full-Duplex ist dann aber soweit
ich weiß nicht mehr möglich.

ipc_perm ist bei mir so gesetzt, dass verschiedene user gleichzeitig
Sound abspielen können. Je nach Rechner will man das aus
Sicherheitsgründen vielleicht nicht haben, dann kann nur der User
abspielen, der das Sound-Device zuerst geöffnet hat, bis alle seine
Tasks es wieder freigeben.

Eventuell musst du für deine Soundkarte auch mit dem dmix-Parametern im
slave { } Block herumspielen, bis es gut klingt.

Was OSS angeht, das ganze läuft im Userspace ab und kann nur
funktionieren, wenn die Userspace-OSS-Emulation genutzt wird (also
libaoss, einfach mit dem aoss wrapper-script starten). Leider gibt es
Software, die damit "ums Verrecken" nicht klarkommt, z.B. Dosemu. Wenn
aber ein Programm die Kernel-OSS-Emulation (über die *-oss Module)
nutzt, ist die Soundkarte so lange belegt, daran führt leider kein Weg
vorbei.

Grüße, Felix

-- 
 | /"\   ASCII Ribbon   | Felix M. Palmen (Zirias)    http://zirias.ath.cx/ |
 | \ / Campaign Against | fmp@palmen.homeip.net      encrypted mail welcome |
 |  X    HTML In Mail   | PGP key: http://zirias.ath.cx/pub.txt             |
 | / \     And News     | ED9B 62D0 BE39 32F9 2488 5D0C 8177 9D80 5ECF F683 |

Attachment: signature.asc
Description: Digital signature


Reply to: