X-Fi: o trochu dále
Přidáno 15 Zář 2009 v 20:50:59Včera večer jsem strávil dost dlouho prohledáváním archivů, mailing listu alsa driverů a konečně mám nějaký pozitivní výsledek. Při testu repráků přes speaker-test -Dplughw:0 -c6 je slyšet šum ze VŠECH kanálů. Co tomu předcházelo? Začneme popořádku.
Odstranit oficiální driver nainstalovaný podle předchozího návodu. Proč odstraňovat oficiální driver? Odpověď je nasnadě: další vývoj podle toho co jsem nalezl s největší pravděpodobností nebude, a tudíž zůstat na 2+0 je u karty typu X-Fi nemyslitelné. Odinstalace se provede takto: osobně mám zdrojáky oficiálního driveru v /usr/src/XFiDrv_Linux_Public_US_1.00. Takže jdeme na to
# cd /usr/src/XFiDrv_Linux_Public_US_1.00 # make uninstall
a je hotovo. Reboot to jistí
Druhý krok je stahnout unstable (opravdu se jedná o nestavbilní vývojovou verzi – práce je tedy na vlastní nebezpečí – ale výsledek za to stojí)
# cd /usr/src # mkdir X-Fi # wget ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-unstable-snapshot.tar.gz # tar xzfv alsa-driver-unstable-snapshot.tar.gz
máme rozbalený archiv a otevřeme vytvořený adresář
# cd alsa-driver-unstable
Následuje vlastní kompilace – pro přeložení s podporou X-Fi je nutný přepínač –with-cards=ctxfi. Samozřejmě můžete zvolit –with-cards=all a budete mít k dispozici komplet vše, což je IMHO zbytečné 🙂 . Pro další detaily je zde oblíbené ./configure –help
# ./configure --with-cards=ctxfi
pokud vše dopadne OK, pak zkompilovat a instalovat.
# make # make install
jestli vše dopadne bez problému, je (skoro) vyhráno. Někde doporučují unload (jak se to sakra řekne správně česky – odnahrát??) aktuálně natažené moduly snd_ přes rmmod – seznam získáte třeba přes
lsmod | grep snd_ | awk '{ print $1}'
ale stačí i vystoupit/nastoupit (reboot 🙂 ). Kernel většinou nový modul detekuje a nahraje ho automaticky. Není nutné „modprobe snd-ctxfi„.
Pokud máte pulseaudio je pro 5+1 zvuk potřeba mít v /etc/pulse/daemon.conf toto:
default-sample-channels = 6
Pak už jen zbývá vyzkoušet
mirek@vanion:~$ speaker-test -Dplughw:0 -c6 speaker-test 1.0.18 Zařízení pro přehrávání je plughw:0 Parametry proudu jsou: 48000Hz, S16_LE, 6 kanálů Používám 16 oktáv z růžového šumu Rate set to 48000Hz (requested 48000Hz) Buffer size range from 86 to 10922 Period size range from 6 to 5461 Using max buffer size 10920 Periods = 4 bylo nastaveno period_size = 2730 bylo nastaveno buffer_size = 10920 0 - Levý přední 4 - Střední 1 - Pravý přední 3 - Pravý zadní 2 - Levý zadní 5 - LFE
a měli byste postupně slyšet šum ze všech repráků – což jsem slyšel. Pohled na mixer v Gnome, KDE nebo alsamixer bude také příjemný
Malý trik – u jezdce označeneho jako Center/LFE rozdělte kanály. Levý jezdec ovládá hlasitost středního repráku, pravý subwoofer.
Až sem spokojenost. Kde je tedy problém? Při přehrávání musiky hraje jen 5 repráků. Ale bez toho nejdůležitějšího – subwooferu. S alsou se moc nekamarádím, pulseaudio také ne, a z toho co jsem zatím vygooglil nic nezabralo 🙁 Kdyby tedy někdo věděl, budu jen rád. Pokud se mi to povede vyřešit, bude další příspěvek.
Zdroje
- Forum Creative: vlákno1 + vlákno2
- Alsa-devel: květnový a červnový thread
- HOWTO: Surround sound in pulseaudio
- google.cz
Komentáře zakázány MiZi | Linux |