Archiv/OSS4

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Installation von Programmen

  2. Pakete aus dem Quellcode erstellen

  3. Ein Terminal öffnen

  4. Einen Editor öffnen

  5. Umgang mit Kernelmodulen (Treibern)

  6. Umgang mit Mercurial

  7. Ein einzelnes Paket manuell installieren

Inhaltsverzeichnis
  1. Unterstützte Hardware
  2. Installation
    1. Benötigte Pakete
    2. OSS aus einzelnem Paket installieren
    3. OSS aus dem Quelltext installieren
  3. Konfiguration
    1. ALSA abschalten
    2. OSS als Standard-System auswählen
    3. Anwendungen konfigurieren
    4. Zurück zu ALSA
  4. Links

Das Open Sound System (OSS) stellt Gerätetreiber für Soundkarten bereit. Normalerweise wird unter Ubuntu das neuere ALSA verwendet. Allerdings unterstützt OSS einige ältere Soundkarten, die von ALSA nicht oder nur schlecht unterstützt werden. Außerdem hat OSS 4 Funktionen, die bei ALSA fehlen, wie z.B. die Möglichkeit die Lautstärke einzelner Anwendungen und Ausgänge getrennt zu regeln (mit PulseAudio inzwischen standardmäßig möglich). In diesem Artikel wird beschrieben, wie man OSS unter Ubuntu installiert und konfiguriert.

Hinweis:

Es ist möglich, mit alsa-oss Programme, die für OSS entworfen wurden, dennoch mit ALSA zu betreiben. Dann kann man sich den hier beschriebenen Aufwand sparen.

Unterstützte Hardware

Eine Liste mit unterstützten Soundkarten findet man hier: devices.list 🇬🇧

Installation

Das Programm kann aus den Paketquellen installiert werden.

Paketliste zum Kopieren:

sudo apt-get install OSS4-gtk 

Oder mit apturl die Pakete installieren. Link: apt://OSS4-gtk

Die folgenden Schritte zur Installation sind nicht mehr nötig.

Benötigte Pakete

Folgende Pakete müssen installiert [1] werden:

Paketliste zum Kopieren:

sudo apt-get install build-essential binutils linux-headers gawk libtool libgtk2.0-dev mercurial libesd0 libsdl1.2debian-oss 

Die Frage, ob libesd-alsa0 entfernt werden soll, kann mit ja beantwortet werden.

Für die GNOME-Systemklänge muss noch ESD installiert werden:

Paketliste zum Kopieren:

sudo apt-get install esound esound-clients esound-common libesd0 

Für KDE-Systemklänge noch aRts

OSS aus einzelnem Paket installieren

Es gibt aktuelle Debian-Pakete für OSS 4.2 beim Entwickler 4Front Technologies: Assistent zur Paketauswahl 🇬🇧 bzw. Verzeichnis aller Pakete 🇬🇧 zum installieren nach [7].

OSS aus dem Quelltext installieren

Falls es einmal keine aktuellen Pakete geben sollte, ist es vorzuziehen, OSS aus dem Quelltext [2] zu erstellen. Bevor man das tut, sollte das System neu gestartet werden, damit die ALSA-Module nicht mehr geladen sind.

Quellcode herunterladen

Man kann den aktuellen Quellcode mit Mercurial [6] herunterladen:

cd /usr/src
sudo hg clone http://opensound.hg.sourceforge.net:8000/hgroot/opensound/opensound oss-devel 

Build-Verzeichnis

OSS muss in einem extra Verzeichnis erstellt werden. Also legt man beispielsweise das Verzeichnis oss4build im Home-Ordner an:

cd
mkdir oss41build
cd oss41build/ 

Quellcode kompilieren

Um den Quellcode zu kompilieren, gibt man nun Folgendes ein:

/usr/src/oss-devel/configure
make
sudo checkinstall 

Der checkinstall-Befehl bricht möglicher Weise mit einer Fehlermeldung ab, da zwischen den Schritten, die dabei vorgenommen werden ein Neustart des Systems oder das Nachladen des neuen Treibers fehlt. Als Workaround kann der Rechner neu gestartet und der checkinstall-Befehl wiederholt werden.

Experten-Info:

Auf Multicore-Systemen kann man den zweiten Befehl mit dem Parameter -j beschleunigen (z.B. make -j2 für ein Dualcore-System).

Jetzt sollte OSS4 auf dem System installiert sein.

Konfiguration

ALSA abschalten

Als erstes öffnet man einen Terminal [3]. Danach kann man die ALSA-Module in die Blacklist eintragen. [5]

sudo bash -c 'cat /lib/linux-sound-base/noALSA.modprobe.conf >> /etc/modprobe.d/blacklist' 

Jetzt öffnet man die Datei /etc/modprobe.d/blacklist mit einem Editor [4] und fügt Folgendes an:

blacklist snd_hda_intel 
blacklist snd_mixer_oss 
blacklist snd_pcm
blacklist snd_timer
blacklist snd_page_alloc
blacklist snd_hwdep
blacklist snd
blacklist soundcore

OSS als Standard-System auswählen

In einem Terminal gibt man nun Folgendes ein, um OSS als Soundsystem auszuwählen:

sudo dpkg-reconfigure linux-sound-base 

In dem folgenden Bildschirm steht eine kurze Erklärung, was OSS und ALSA sind. Diese kann man mit "Ok" bestätigen. Darauf folgt eine Liste, in der man mit den Pfeiltasten "OSS" auswählen sollte. Die Bestätigung folgt wieder mit "Ok".

Anwendungen konfigurieren

Wenn OSS installiert ist, muss man seinen Anwendungen noch sagen, dass sie es benutzen sollen. Viele Anwendungen bieten in ihren Einstellungen eine Option dafür an oder erkennen das gewünschte Soundsystem automatisch. Einige andere brauchen allerdings etwas mehr Pflege.

GNOME 2

Damit der Mixer funktioniert, muss das Paket gstreamer0.10-plugins-bad installiert werden. Unter "System -> Einstellungen -> Audio" sollte für jeden Ein- und Ausgang ein OSS-Eintrag gewählt werden.

Pidgin

Unter "Werkzeuge -> Einstellungen -> Klänge" wählt man als Methode "Kommando" und ossplay %s als Klang-Abspielbefehl.

Zurück zu ALSA

Mit folgender Prozedur kann man wieder zum ALSA-System zurückkehren [3]:

sudo sh /usr/lib/oss/scripts/restore_drv.sh
sudo soundoff
sudo dpkg -r oss-linux
sudo dpkg-reconfigure linux-sound-base 

Paketliste zum Kopieren:

sudo apt-get install libesd-alsa0 alsa-oss alsa-base libsdl1.2debian-alsa 

Nun öffnet man /etc/modprobe.d/blacklist mit Root-Rechten und entfernt alle Einträge ab "blacklist snd-seq".

Jetzt setzt man im Gegenzug die OSS-Module auf die Schwarzliste:

sudo su
sudo cat /lib/linux-sound-base/noOSS.modprobe.conf >> /etc/modprobe.d/blacklist
exit 

Jetzt startet man den PC neu und wählt bei "System -> Einstellungen -> Sound" ALSA oder automatisch aus. Falls es immer noch Probleme gibt, müssen die ALSA-Kernelmodule neu installiert werden: ALSA Module - Reinstallation und das gesamte Soundsystem auf ALSA umgestellt werden.