Második hangkártyát szerettem volna beállítani, úgy, hogy a címben említett dolgok mindegyike működjön.
Van egy ilyen konfig fájlom:
ctl.equal {
type equal;
}
pcm.swmixer {
type dmix
ipc_key 1234
slave {
pcm "hw:1,0"
period_size 1024
buffer_size 4096
rate 96000
}
}
pcm.plugequal {
type equal;
slave.pcm "plug:pcm.swmixer"
}
pcm.!default {
type softvol
slave {
pcm "plug:plugequal"
}
control {
name "Masteraudigy"
card 1
}
}
Nem tudom, követtem-e el hibát, de tény, hogy ez így működik, csakhogy az xmms-en kívül semmi nem hajlandó a default eszközt default eszköznek felismerni.
(Szerk: vagyis a vlc és az mplayer akad fenn rajta, úgy tűnik az Adobe flash is jó helyre küldi a hangot.)
Aztán van egy másik változatom is:
ctl.equal {
type equal;
}
pcm.swmixer {
type dmix
ipc_key 1234
slave {
pcm "hw:1,0"
period_size 1024
buffer_size 4096
rate 96000
}
}
pcm.plugequal {
type equal;
slave.pcm "plug:pcm.swmixer"
}
pcm.relay{
type softvol
slave {
pcm "plug:plugequal"
}
control {
name "Masteraudigy"
card 1
}
}
pcm.!default {
type plug;
slave{
pcm "relay"
}
}
Ettől bármelyik program, ami alsa-val szeretne hangot lejátszani, egész egyszerűen segfaultol.
Ha a softvol előtt keresztülküldöm még egy sample rate konverzión is, akkor ugyanúgy nem ismerik fel a programok default eszköznek, mint az első konfiggal, de itt legalább még a hangminőség is romlik.
Aztán van egy harmadik is:
ctl.equal {
type equal;
}
pcm.swmixer {
type dmix
ipc_key 1234
slave {
pcm "hw:1,0"
period_size 1024
buffer_size 4096
rate 96000
}
}
pcm.plugequal {
type equal;
slave.pcm "plug:pcm.swmixer"
}
pcm.!default {
type plug;
slave{
pcm "plug:plugequal"
}
}
Ez működik, minden program felismeri defaultnak, viszont nincs szoftveres hangerőszabályozás.
Mit rontok el? Hogyan lehetne megoldani?
Előre is köszi és bocsi a kissé hosszú topicindítóért!
- 2258 megtekintés
Hozzászólások
Ok. Megoldódott.
Az swmixerből kivettem a 96 kHz-es beállítást. Így a sample rate az alapértelmezett 48 kHz. Mivel úgysincs túl sok 96k-s zeném, ezzel együtt tudok élni.
Amit nem igazán értek, hogy az mplayer és a vlc miért önállósította magát és kezdte használni a másik hangkártyát, ahelyett, hogy adott volna valami hibaüzenetet.
A "kártyán" (Sound Blaster X-Fi Surround 5.1 Pro) egyébként van egy hangerőszabályzó gomb is, illetve járt hozzá egy távirányító, amiket szintén sikerült életrekeltenem.
ALSA WIKI-ből, fórumokról és innen-onnan összeszedett megoldás, ha érdekel valakit:
Állítólag legalább 1.0.24-es ALSA kell hozzá. Nálam 1.0.25 van fenn, tehát azzal biztosan működik.
Továbbá kell lirc. Telepítéskor a konfigurálásnál Remote Controlnak a Creative USB receiver-t kell kiválasztani, IR Transmitternek None-t.
A /etc/lirc/hardware.conf REMOTE_DRIVER értékét "alsa_usb"-re kell átírni.
Így a lirc már kezeli, a beérkező eseményekre pedig mindenki ízlése szerint reagálhat. Én például szintén a WIKI-ről irexec-et állítotam be:
.lircrc tartalma:
# $HOME/.lircrc
#S51 Volume Knob
begin
prog = irexec
remote = RM-1500
button = vol-
repeat = 1
config = amixer -c Pro sset Masteraudigy 1-
end
begin
prog = irexec
remote = RM-1500
button = mute
repeat = 1
config = if [ `amixer -c Pro sget Masteraudigy|grep "Front Left:"|awk '{print $3}'` -gt 0 ]; then alsactl store -f ~/.asound.state; amixer -c Pro sset Masteraudigy 0; amixer -c Pro sset 'Power LED' off; else alsactl restore -f ~/.asound.state; amixer -c Pro sset 'Power LED' on; fi
end
begin
prog = irexec
remote = RM-1500
button = vol+
repeat = 1
config = amixer -c Pro sset Masteraudigy 1+
end
Ha nagyon unatkozok, majd még hozzáírok annyit, hogy a távirányítóval lehessen XMMS-t vezérelni.
- A hozzászóláshoz be kell jelentkezni