Sound Blaster X-Fi v KDE 4.1.x

Jak jsem už varoval, budu pokračovat v popisu jak jsem zprovozňoval moji zvukovku v KDE 4.1. Nejdřív něco na úvod. X-Fi je typicky herní zvukovka primárně určena pro systémy s Windows. Nechám stranou politiku Creativu a komentáře na to, že x-let slibovali alespoň proprietární ovladače a nakonec se zpožděním asi necelých 2 let vydali betu, kterou zprovoznit je mistrovský kousek.

První pokus.

Byl podle návodu v balíčku staženého proprietárního ovladače. Po několika dnech (nemohu u toho sedět celý den v kuse – takže po večerech) se mi povedlo za pomoci různých nechutných hacků do zdrojáků kernelu (aby vůbec kompilace modulu proběhla) jsem dosáhnul, že se modul zkompiloval, natáhnul, ale aplikace, která k vytvořenému zařízení přistupovala zatuhnula. Magořina. Po dnu hledání na googlu jsem se naštval a rezignoval.

Pokus druhý

s ovladači dostupnými z Opensound. Instalace trapně jednoduchá. Stahnete balíček odpovídající používané distr. – takže u mě

wget http://www.4front-tech.com/release/oss-linux-4.0-1016_i386.deb

Je třeba mít nainstalovaný kompilátor,  knihovny potřebné pro kompilaci modulu + zdrojáky jádra. (ohledně alsy doporučuji k nahlédnutí výborný návod na help.ubuntu.com, kde je i seznam modulů, které je vhodné blacklistovat). A můžeme začít. Přejdeme do adresáře kam jsme balíček stáhli a spustíme

apt-get install ./oss-linux-4.0-1016_i386.deb

Pokud vše projde bez problémů, stačí otestovat příkazem ossinfo a měli byste dostat podobný výpis

root@vanion:~# ossinfo
Version info: OSS 4.0 (b1016/200807241529) (0x00040003)
Platform: Linux/i686 2.6.24-19-generic #1 SMP Wed Aug 20 22:56:21 UTC 2008 (vanion)
Number of audio devices:        2
Number of audio engines:        2
Number of mixer devices:        1
Device objects
 0: osscore0 OSS core services
 1: sbxfi0 Sound Blaster X-Fi (SB046x/067x/076x) interrupts=668614 (668614)
    PCI device 1102:0005, subdevice 1102:0021
 2: ossusb0 USB audio core services
Mixer devices
0: Sound Blaster X-Fi (SB046x/067x/ (Mixer 0 of device object 1)
Audio devices
Sound Blaster X-Fi (SB046x/067x/076x) output  /dev/oss/sbxfi0/pcm0  (device index 0)
Sound Blaster X-Fi (SB046x/067x/076x) input  /dev/oss/sbxfi0/pcmin0  (device index 1)

Problém nastává když v systému jsou zbytky oss. Kvůli nim se modul nepřeloží a skončí to chybou a jakýchsi neexistujících souborech. Je pak nutné kompletně vyčistit zsystém od zbytků: na fóru Opensound jsem našel postup

  1. cd /var/lib/dpkg/info
  2. rm oss-linux*
  3. editujte v oblibene editoru /var/lib/dpkg/status a hledejte oss-linux
  4. následně pomažte vše v této sekci týkající se oss-linux (je to následující)

    Package: oss-linux
    Status: install ok installed
    Priority: extra
    Section: alien
    Installed-Size: 8440
    Maintainer: root <root@dev-desktop>
    Architecture: amd64
    Version: v4.0rc9-999
    Depends: libatk1.0-0 (>= 1.12.1), libc6 (>= 2.4-1), libcairo2 (>= 1.2.4), libfontconfig1 (>= 2.3.0), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.10.3), libpango1.0-0 (>= 1.14.5), libx11-6, libxcursor1 (>> 1.1.2), libxext6, libxfixes3, libxi6, libxinerama1, libxrandr2, libxrender1
    Conffiles:
    /etc/oss.conf 055432d38aaf37fc6de3dba4a95accc3
    Description: Open Sound System sound drivers for Linux
    Open Sound System for Linux (OSS/Linux) is a commercial quality sound driver
    distributed by 4Front Technologies (http://www.opensound.com). OSS provides
    support for practically all sound cards on the market including PnP and
    many PCI ones. Installation and configuration is higly automated and easy to
    perform. To obtain technical support and additional features, you will need to
    order a license key from http://www.opensound.com/order.html
    .
    (Converted from a rpm package by alien version 8.64.)
  5. pak provedeme pokusnou odinstalaci  dpkg –purge oss-linux (měl by vyhodit hlášku že oss-linux není nainstalovaný)
  6. No a na závěr instalujeme oss-linux podle návodu na začátku.

Měli bychom být odměněni zvukem při testu

osstest
Sound subsystem and version: OSS 4.0 (b1016/200807241529) (0x00040003)
Platform: Linux/i686 2.6.24-19-generic #1 SMP Wed Aug 20 22:56:21 UTC 2008

*** Scanning sound adapter #-1 ***
/dev/oss/sbxfi0/pcm0 (audio engine 0): Sound Blaster X-Fi (SB046x/067x/076x) output
- Performing audio playback test...
    OK  OK  OK
/dev/oss/sbxfi0/pcmin0 (audio engine 1): Sound Blaster X-Fi (SB046x/067x/076x) input
- Skipping input only device

*** All tests completed OK ***

Aby bylo možné používat zvuk v KDE4.1, stačí

mv /usr/lib/oss/lib/libsalsa.so.2.0.0 /usr/lib/oss/lib/libsalsa.so.2.0.0.bak
ldconfig

Pak by měl být slyšet zvuk i v KDE. Je možné, že v KDE 3.5.x je postup trochu jiný. To už nechám na experimentech

Komentáře zakázány.


Fatal error: Uncaught Error: Call to undefined function is_user_logged_in() in /var/www/html/mzideknet/www/wp-content/plugins/wp-speed-of-light/inc/caches/file-page-cache.php:253 Stack trace: #0 [internal function]: wpsol_cache('<!DOCTYPE html ...', 9) #1 /var/www/html/mzideknet/www/wp-includes/functions.php(4212): ob_end_flush() #2 /var/www/html/mzideknet/www/wp-includes/class-wp-hook.php(286): wp_ob_end_flush_all('') #3 /var/www/html/mzideknet/www/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters('', Array) #4 /var/www/html/mzideknet/www/wp-includes/plugin.php(465): WP_Hook->do_action(Array) #5 /var/www/html/mzideknet/www/wp-includes/load.php(788): do_action('shutdown') #6 [internal function]: shutdown_action_hook() #7 {main} thrown in /var/www/html/mzideknet/www/wp-content/plugins/wp-speed-of-light/inc/caches/file-page-cache.php on line 253