<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!--
     The FreeBSD Documentation Project
     The FreeBSD German Documentation Project

     $FreeBSD$
     $FreeBSDde: de-docproj/books/handbook/multimedia/chapter.sgml,v 1.100 2012/04/22 20:49:51 bcr Exp $
     basiert auf: 1.144
-->

<chapter id="multimedia">
  <chapterinfo>
    <authorgroup>
      <author>
	<firstname>Ross</firstname>
	<surname>Lippert</surname>
	<contrib>Überarbeitet von </contrib>
      </author>
    </authorgroup>
  </chapterinfo>

  <title>Multimedia</title>

  <sect1 id="multimedia-synopsis">
    <title>Übersicht</title>

    <para>FreeBSD unterstützt viele unterschiedliche Soundkarten,
      die Ihnen den Genuss von Highfidelity-Klängen auf Ihrem
      Computer ermöglichen.  Dazu gehört unter anderem die
      Möglichkeit, Tonquellen in den Formaten MPEG Audio Layer 3
      (MP3), WAV, Ogg Vorbis und vielen weiteren Formaten aufzunehmen
      und wiederzugeben.  Darüber hinaus enthält die FreeBSD
      Ports-Sammlung Anwendungen, die Ihnen das Bearbeiten Ihrer
      aufgenommenen Tonspuren, das Hinzufügen von Klangeffekten
      und die Kontrolle der angeschlossenen MIDI-Geräte
      erlauben.</para>

    <para>Wenn Sie etwas Zeit investieren, können Sie
      mit &os; auch Videos und DVDs abspielen.  Im Vergleich
      zu Audio-Anwendungen gibt es weniger Anwendungen zum
      Kodieren, Konvertieren und Abspielen von Video-Formaten.
      Es gab, als dieses Kapitel geschrieben wurde, keine
      Anwendung, die einzelne Video-Formate ähnlich wie
      <filename role="package">audio/sox</filename> konvertieren
      konnte.  Allerdings ändert sich die Software in
      diesem Umfeld sehr schnell.</para>

    <para>In diesem Kapitel wird das Einrichten von Soundkarten
      besprochen.  <xref linkend="x11"/> beschreibt die Installation
      und Konfiguration von X11 und das Einrichten von Videokarten.
      Hinweise zur Verbesserung der Wiedergabe finden sich
      in diesem Kapitel.</para>

    <para>Dieses Kapitel behandelt die folgenden Punkte:</para>

    <itemizedlist>
      <listitem>
	<para>Die Konfiguration des Systems damit Ihre
	  Soundkarte erkannt wird.</para>
      </listitem>

      <listitem>
	<para>Wie Sie die Funktion einer Soundkarte testen
	   können.</para>
      </listitem>

      <listitem>
	<para>Wie Sie Fehler in den Einstellungen von
	  Soundkarten finden.</para>
      </listitem>

      <listitem>
	<para>Wie Sie MP3s und andere Audio-Formate wiedergeben
	  und erzeugen.</para>
      </listitem>

      <listitem>
	<para>Die Video-Unterstützung des X-Servers.</para>
      </listitem>

      <listitem>
	<para>Gute Anwendungen, die Videos abspielen und
	  kodieren.</para>
      </listitem>

      <listitem>
	<para>Die Wiedergabe von DVDs, <filename>.mpg</filename>-
	  und <filename>.avi</filename>-Dateien.</para>
      </listitem>

      <listitem>
	<para>Wie Sie CDs und DVDs in Dateien rippen.</para>
      </listitem>

      <listitem>
	<para>Die Konfiguration von TV-Karten.</para>
      </listitem>

      <listitem>
	<para>Das Einrichten von Scannern.</para>
      </listitem>
    </itemizedlist>

    <para>Bevor Sie dieses Kapitel lesen, sollten Sie:</para>

    <itemizedlist>
      <listitem>
	<para>Wissen, wie Sie einen neuen Kernel konfigurieren
	  und installieren (<xref linkend="kernelconfig"/>).</para>
      </listitem>
    </itemizedlist>

    <warning>
      <para>Der Versuch eine Audio-CD mit &man.mount.8;
	einzuhängen erzeugt mindestens einen Fehler;
	schlimmstenfalls kann es zu einer Kernel-Panic
	kommen.  Die Medien besitzen eine andere Kodierung
	als normale ISO-Dateisysteme.</para>
    </warning>
  </sect1>

  <sect1 id="sound-setup">
    <sect1info>
      <authorgroup>
        <author>
	  <firstname>Moses</firstname>
	  <surname>Moore</surname>
	  <contrib>Von </contrib>
          <!-- 20 November 2000 -->
        </author>
      </authorgroup>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Fonvieille</surname>
	  <contrib>Aktualisiert von </contrib>
	  <!-- 13 September 2004 -->
	</author>
      </authorgroup>
      <authorgroup>
        <author>
	  <firstname>Benedikt</firstname>
	  <surname>Köhler</surname>
	  <contrib>Übersetzt von </contrib>
        </author>
        <author>
	  <firstname>Uwe</firstname>
	  <surname>Pierau</surname>
        </author>
      </authorgroup>
    </sect1info>

    <title>Soundkarten einrichten</title>

    <sect2 id="sound-device">
      <title>Den Soundtreiber einrichten</title>

      <indexterm><primary>PCI</primary></indexterm>
      <indexterm><primary>ISA</primary></indexterm>
      <indexterm><primary>Soundkarten</primary></indexterm>

      <para>Zunächst sollten Sie in Erfahrung bringen,
	welches Soundkartenmodell Sie besitzen, welchen Chip
	die Karte benutzt und ob es sich um eine PCI- oder
	ISA-Karte handelt.  &os; unterstützt eine Reihe
	von PCI- als auch von ISA-Karten.  Die
	<ulink url="&rel.current.hardware;">Hardware-Notes</ulink>
	zählen alle unterstützten Karten und deren
	Treiber auf.</para>

      <indexterm>
        <primary>Kernel</primary>
        <secondary>Konfiguration</secondary>
      </indexterm>

      <para>Um Ihre Soundkarte benutzen zu können, müssen Sie
        den richtigen Gerätetreiber laden.  Sie haben zwei
	Möglichkeiten, den Treiber zu laden:  Am einfachsten
	ist es, das Modul mit &man.kldload.8; zu laden.  Sie
	können dazu die Kommandozeile verwenden:</para>

      <screen>&prompt.root; <userinput>kldload snd_emu10k1</userinput></screen>

      <para>Alternativ können Sie auch einen Eintrag
	in der Datei <filename>/boot/loader.conf</filename>
	erstellen:</para>

      <programlisting>snd_emu10k1_load="YES"</programlisting>

      <para>Beide Beispiele gelten für eine Creative &soundblaster;
        Live! Soundkarte.  Weitere ladbare Soundmodule sind in
	der Datei <filename>/boot/defaults/loader.conf</filename>
	aufgeführt.  Wenn Sie nicht sicher sind, welchen
	Gerätetreiber Sie laden müssen, laden Sie den
	Treiber  <filename>snd_driver</filename>:</para>

      <screen>&prompt.root; <userinput>kldload snd_driver</userinput></screen>

      <para>Der Treiber <filename>snd_driver</filename> ist ein
	Meta-Treiber, der alle gebräuchlichen Treiber lädt
	und die Suche nach dem richtigen Treiber vereinfacht.
	Weiterhin können alle Treiber über
	<filename>/boot/loader.conf</filename> geladen werden.</para>

      <para>Wollen Sie feststellen, welcher Treiber für Ihre
	Soundkarte vom Metatreiber <filename>snd_driver</filename>
	geladen wurde, sollten Sie sich mit
	<command>cat /dev/sndstat</command> den Inhalt der Datei
	<filename>/dev/sndstat</filename> ansehen.</para>

      <para>Alternativ können Sie die Unterstützung
	für die Soundkarte direkt in den Kernel einkompilieren.
	Diese Methode im nächsten Abschnitt beschrieben.
	Weiteres über den Bau eines Kernels
	erfahren Sie im Kapitel
	<link linkend="kernelconfig">Kernelkonfiguration</link>.</para>

      <sect3>
	<title>Soundkarten in der Kernelkonfiguration
	  einrichten</title>

	<para>Zuerst müssen Sie &man.sound.4;, den Treiber für
	  das Audio-Framework in die Kernelkonfiguration aufnehmen.
	  Fügen Sie dazu die folgende Zeile in die
          Kernelkonfigurationsdatei ein:</para>

        <programlisting>device sound</programlisting>

	<para>Als Nächstes müssen Sie den richtigen
	  Treiber in die Kernelkonfiguration einfügen.
	  Den Treiber entnehmen Sie bitte der Liste der
	  unterstützen Soundkarten aus den
	  <ulink url="&rel.current.hardware;">Hardware-Notes</ulink>.
	  Zum Beispiel wird die Creative &soundblaster; Live!
	  Soundkarte vom Treiber &man.snd.emu10k1.4;
	  unterstützt.  Für diese Karte verwenden
	  Sie die nachstehende Zeile:</para>

        <programlisting>device snd_emu10k1</programlisting>

	<para>Die richtige Syntax für die Zeile lesen
	  Sie bitte in der Hilfeseite des entsprechenden
	  Treibers nach.  Die korrekte Syntax für alle
	  unterstützten Treiber finden Sie außerdem
	  in der Datei
	  <filename>/usr/src/sys/conf/NOTES</filename>.</para>

	<para>Nicht PnP-fähige ISA-Soundkarten benötigen
	  (wie alle anderen ISA-Karten auch) weiterhin Angaben zu
	  den Karteneinstellungen (wie IRQ und I/O-Port).
	  Die Karteneinstellungen tragen
	  Sie in die Datei <filename>/boot/device.hints</filename>
	  ein.  Während des Systemstarts liest der
	  &man.loader.8; diese Datei und reicht die Einstellungen
	  an den Kernel weiter.  Für eine alte Creative
	  &soundblaster; 16 ISA-Karte, die sowohl den
	  &man.snd.sbc.4;- als auch den
	  <literal>snd_sb16</literal>-Treiber
	  benötigt, fügen Sie folgende Zeilen in die
	  Kernelkonfigurationsdatei ein:</para>

        <programlisting>device snd_sbc
device snd_sb16</programlisting>

	<para>In die Datei <filename>/boot/device.hints</filename>
	  tragen Sie für diese Karte zusätzlich die
	  folgenden Einstellungen ein:</para>

	<programlisting>hint.sbc.0.at="isa"
hint.sbc.0.port="0x220"
hint.sbc.0.irq="5"
hint.sbc.0.drq="1"
hint.sbc.0.flags="0x15"</programlisting>

	<para>In diesem Beispiel benutzt die Karte den
	  I/O-Port <literal>0x220</literal> und den
	  IRQ <literal>5</literal>.</para>

	<para>Die Manualpage &man.sound.4; sowie des jeweiligen
	  Treibers beschreiben die Syntax der Einträge in der
	  Datei <filename>/boot/device.hints</filename>.</para>

	<para>Das Beispiel verwendet die vorgegebenen Werte.
	  Falls Ihre Karteneinstellungen andere Werte vorgeben,
	  müssen Sie die Werte in der Kernelkonfiguration
	  anpassen.  Weitere Informationen zu dieser Soundkarte
	  entnehmen Sie bitte der Manualpage
	  &man.snd.sbc.4;.</para>
      </sect3>
    </sect2>

    <sect2 id="sound-testing">
      <title>Die Soundkarte testen</title>

      <para>Nachdem Sie den neuen Kernel gestartet oder das
	erforderliche Modul geladen haben, sollte Ihre
	Soundkarte in den Systemmeldungen (&man.dmesg.8;)
	auftauchen.  Zum Beispiel:</para>

      <screen>pcm0: &lt;Intel ICH3 (82801CA)&gt; port 0xdc80-0xdcbf,0xd800-0xd8ff irq 5 at device 31.5 on pci0
pcm0: [GIANT-LOCKED]
pcm0: &lt;Cirrus Logic CS4205 AC97 Codec&gt;</screen>

      <para>Den Status der Karte können Sie über
	die Datei <filename>/dev/sndstat</filename>
	prüfen:</para>

      <screen>&prompt.root; <userinput>cat /dev/sndstat</userinput>
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: &lt;Intel ICH3 (82801CA)&gt; at io 0xd800, 0xdc80 irq 5 bufsz
16384
kld snd_ich (1p/2r/0v channels duplex default)</screen>

      <para>Die Ausgaben können auf Ihrem System anders
	aussehen.  Wenn das Gerät <devicename>pcm</devicename>
	nicht erscheint, prüfen Sie bitte Ihre Konfiguration.
	Stellen sie sicher, dass Sie den richtigen Treiber
	gewählt haben.  <xref linkend="troubleshooting"/>
	beschreibt häufig auftretende Probleme.</para>

      <para>Wenn alles glatt lief, haben Sie nun eine
	funktionierende Soundkarte.  Wenn ein CD-ROM
	oder DVD-ROM-Laufwerk an Ihrer Soundkarte angeschlossen
	ist, können Sie jetzt mit &man.cdcontrol.1; eine
	CD abspielen:</para>

      <screen>&prompt.user; <userinput>cdcontrol -f /dev/acd0 play 1</userinput></screen>

      <para>Es gibt viele Anwendungen, wie
	<filename role="package">audio/workman</filename>, die
	eine bessere Benutzerschnittstelle besitzen.  Um sich
	MP3-Audiodateien anzuhören, können Sie
	eine Anwendung wie <filename
	role="package">audio/mpg123</filename> installieren.</para>

      <para>Eine weitere schnelle Möglichkeit die Karte zu
	prüfen, ist es, Daten an das Gerät
	<filename>/dev/dsp</filename> zu senden:</para>

      <screen>&prompt.user; <userinput>cat <replaceable>Datei</replaceable> &gt; /dev/dsp</userinput></screen>

      <para>Für
        <filename><replaceable>Datei</replaceable></filename> können
	Sie eine beliebige Datei verwenden.  Wenn Sie einige
	Geräusche hören, funktioniert die Soundkarte.</para>

      <note>
	<para>Die Gerätedateien <filename>/dev/dsp*</filename>
	  werden automatisch erzeugt, wenn sie das erste Mal benötigt
	  werden.  Werden sie nicht verwendet, sind sie hingegen nicht
	  vorhanden und tauchen daher auch nicht in der Ausgabe von
	  &man.ls.1; auf.</para>
      </note>

      <para>Die Einstellungen des Mixers können Sie
	mit dem Kommando &man.mixer.8; verändern.
	Weiteres lesen Sie bitte in der Hilfeseite
	&man.mixer.8; nach.</para>

      <sect3 id="troubleshooting">
        <title>Häufige Probleme</title>

        <indexterm><primary>Device Node</primary></indexterm>
        <indexterm><primary>Gerätedatei</primary></indexterm>
        <indexterm><primary>I/O port</primary></indexterm>
        <indexterm><primary>IRQ</primary></indexterm>
	<indexterm><primary>DSP</primary></indexterm>

        <informaltable frame="none" pgwide="1">
          <tgroup cols="2">
	    <thead>
	      <row>
	        <entry>Fehler</entry>
	        <entry>Lösung</entry>
	      </row>
            </thead>

	    <tbody>
              <row>
                <entry><errorname>sb_dspwr(XX) timed out</errorname></entry>
                <entry><para>Der I/O Port ist nicht korrekt angegeben.</para></entry>
              </row>

              <row>
                <entry><errorname>bad irq XX</errorname></entry>
	        <entry><para>Der IRQ ist falsch angegeben.  Stellen Sie
	          sicher, dass der angegebene IRQ mit dem Sound IRQ
		  übereinstimmt.</para></entry>
              </row>

              <row>
                <entry><errorname>xxx: gus pcm not attached, out of memory</errorname></entry>
                <entry><para>Es ist nicht genug Speicher verfügbar,
	          um das Gerät zu betreiben.</para></entry>
              </row>

              <row>
                <entry><errorname>xxx: can't open /dev/dsp!</errorname></entry>
	        <entry><para>Überprüfen Sie mit <command>fstat |
	            grep dsp</command> ob eine andere Anwendung das
		  Gerät geöffnet hat.  Häufige
		  Störenfriede sind <application>esound</application>
		  oder die Sound-Unterstützung von
		  <application>KDE</application>.</para></entry>
              </row>
            </tbody>
          </tgroup>
        </informaltable>

        <para>Ein weiterer Fall ist der, dass moderne Graphikkarten oft auch
          ihre eigenen Soundtreiber mit sich führen, um
          <acronym>HDMI</acronym> oder ähnliches zu verwenden.  Diese
          Audiogeräte werden manchmal vor der eigentlichen, separaten
          Soundkarte aufgeführt und dadurch nicht als das
          Standardgerät zum Abspielen von Tönen benutzt.  Um zu
          prüfen, ob das bei Ihnen der Fall ist, führen Sie
          <application>dmesg</application> aus und suchen Sie nach der
          Zeichenfolge <literal>pcm</literal>.  Die Ausgabe sieht in etwa so
          aus wie folgt:</para>

	    <programlisting>...
hdac0: HDA Driver Revision: 20100226_0142
hdac1: HDA Driver Revision: 20100226_0142
hdac0: HDA Codec #0: NVidia (Unknown)
hdac0: HDA Codec #1: NVidia (Unknown)
hdac0: HDA Codec #2: NVidia (Unknown)
hdac0: HDA Codec #3: NVidia (Unknown)
pcm0: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 0 nid 1 on hdac0
pcm1: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 1 nid 1 on hdac0
pcm2: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 2 nid 1 on hdac0
pcm3: &lt;HDA NVidia (Unknown) PCM #0 DisplayPort&gt; at cad 3 nid 1 on hdac0
hdac1: HDA Codec #2: Realtek ALC889
pcm4: &lt;HDA Realtek ALC889 PCM #0 Analog&gt; at cad 2 nid 1 on hdac1
pcm5: &lt;HDA Realtek ALC889 PCM #1 Analog&gt; at cad 2 nid 1 on hdac1
pcm6: &lt;HDA Realtek ALC889 PCM #2 Digital&gt; at cad 2 nid 1 on hdac1
pcm7: &lt;HDA Realtek ALC889 PCM #3 Digital&gt; at cad 2 nid 1 on hdac1
...</programlisting>

   		<para>Hier wurde die Graphikkarte (<literal>NVidia</literal>)
   		  vor der Soundkarte (<literal>Realtek ALC889</literal>)
   		  aufgeführt.  Um die Soundkarte als
   		  Standardabspielgerät einzusetzen, ändern Sie
   		  <literal>hw.snd.default_unit</literal> auf die Einheit,
   		  welche für das Abspielen benutzt werden soll, wie
   		  folgt:</para>

   		<screen>&prompt.root; <userinput>sysctl hw.snd.default_unit=<replaceable>n</replaceable></userinput></screen>

   		<para>Hier repräsentiert <literal>n</literal> die Nummer
   		  der Soundkarte, die verwendet werden soll, in diesem Beispiel
   		  also <literal>4</literal>.  Sie können diese
   		  Änderung dauerhaft machen, indem Sie die folgende Zeile
   		  zu der <filename>/etc/sysctl.conf</filename> Datei
   		  hinzufügen:</para>

        <programlisting>hw.snd.default_unit=<replaceable>4</replaceable></programlisting>
      </sect3>
    </sect2>

    <sect2 id="sound-multiple-sources">
      <sect2info>
       <authorgroup>
        <author>
         <firstname>Munish</firstname>
         <surname>Chopra</surname>
         <contrib>Beigetragen von </contrib>
        </author>
       </authorgroup>
      </sect2info>
      <title>Mehrere Tonquellen abspielen</title>

      <para>Oft sollen mehrere Tonquellen gleichzeitig
	abgespielt werden, auch wenn
	beispielsweise <application>esound</application> oder
	<application>artsd</application> das Audiogerät
	nicht mit einer anderen Anwendung teilen können.</para>

      <para>Unter FreeBSD können mit &man.sysctl.8;
	<firstterm>virtuelle Tonkanäle</firstterm>
	eingerichtet werden.  Virtuelle Kanäle mischen
	die Tonquellen im Kernel (so können mehr
	Kanäle als von der Hardware unterstützt
	benutzt werden).</para>

      <para>Die Anzahl der virtuellen Kanäle können
	Sie als Benutzer <username>root</username> wie folgt
	einstellen:</para>

      <screen>&prompt.root; <userinput>sysctl dev.pcm.0.play.vchans=4</userinput>
&prompt.root; <userinput>sysctl dev.pcm.0.rec.vchans=4</userinput>
&prompt.root; <userinput>sysctl hw.snd.maxautovchans=4</userinput></screen>

      <para>Im Beispiel werden vier virtuelle Kanäle
	eingerichtet, eine im Normalfall ausreichende Anzahl.
	Sowohl <varname>dev.pcm.0.play.vchans=4</varname> und
	<varname>dev.pcm.0.rec.vchans=4</varname> sind die Anzahl
	der virtuellen Kanäle des Geräts
	<devicename>pcm0</devicename>, die fürs Abspielen und Aufnehmen
	verwendet werden und sie können konfiguriert werden, sobald das
	Gerät existiert.
	<literal>hw.snd.maxautovchans</literal> ist die Anzahl der
	virtuellen Kanäle, die einem Gerät zugewiesen
	werden, wenn es durch &man.kldload.8; eingerichtet
	wird.  Da das Modul <devicename>pcm</devicename>
	unabhängig von den Hardware-Treibern geladen werden kann,
	gibt <varname>hw.snd.maxautovchans</varname> die Anzahl
	der virtuellen Kanäle an, die später eingerichtete
	Geräte erhalten. Lesen Sie dazu &man.pcm.4; für weitere
	Informationen.</para>

      <note>
	<para>Sie können die Anzahl der virtuellen Kanäle
	  nur ändern, wenn das Gerät nicht genutzt wird.
	  Schließen Sie daher zuerst alle Programme (etwa
	  Musikabspielprogramme oder Sound-Daemonen), die auf
	  dieses Gerät zugreifen.</para>
      </note>

      <para>Die korrekte <devicename>pcm</devicename>-Gerätedatei
	wird automatisch zugeteilt, wenn ein Programm das Gerät
	<filename>/dev/dsp0</filename> anfordert.</para>
    </sect2>

    <sect2>
      <sect2info>
	<authorgroup>
	  <author>
	    <firstname>Josef</firstname>
	    <surname>El-Rayes</surname>
	    <contrib>Beigetragen von </contrib>
	  </author>
	</authorgroup>
      </sect2info>

      <title>Den Mixer einstellen</title>

      <para>Die Voreinstellungen des Mixers sind im Treiber
	&man.pcm.4; fest kodiert.  Es gibt zwar viele Anwendungen
	und Dienste, die den Mixer einstellen können
	und die eingestellten Werte bei jedem Start wieder
	setzen, am einfachsten ist es allerdings, die
	Standardwerte für den Mixer
	direkt im Treiber einzustellen.  Der Mixer kann in
	der Datei <filename>/boot/device.hints</filename>
	eingestellt werden:</para>

      <programlisting>hint.pcm.0.vol="50"</programlisting>

      <para>Die Zeile setzt die Lautstärke des Mixers
	beim Laden des Moduls &man.pcm.4; auf den Wert
	<literal>50</literal>.</para>
    </sect2>
  </sect1>

  <sect1 id="sound-mp3">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Chern</firstname>
	  <surname>Lee</surname>
	  <contrib>Ein Beitrag von </contrib>
	</author>
      </authorgroup>
      <!-- 11 Sept 2001 -->
      <authorgroup>
	<author>
	  <firstname>Benedikt</firstname>
	  <surname>Köhler</surname>
	  <contrib>Übersetzt von </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>MP3-Audio</title>

    <para>MP3 (MPEG Layer 3 Audio) ermöglicht eine
      Klangwiedergabe in CD-ähnlicher Qualität, was Sie sich
      auf Ihrem FreeBSD-Rechner nicht entgehen lassen sollten.</para>

    <sect2 id="mp3-players">
      <title>MP3-Player</title>

      <para><application>XMMS</application> (X Multimedia System) ist
	bei weitem der beliebteste MP3-Player für X11.
	<application>WinAmp</application>-Skins können auch mit
	<application>XMMS</application> genutzt werden, da die
	Benutzerschnittstelle fast identisch mit der von Nullsofts
	<application>WinAmp</application> ist.  Daneben
	unterstützt <application>XMMS</application> auch eigene
	Plugins.</para>

      <para><application>XMMS</application> kann als
	<filename role="package">multimedia/xmms</filename> Port oder Package installiert
	werden.</para>

      <para>Die Benutzerschnittstelle von
	<application>XMMS</application> ist leicht zu erlernen und
	enthält eine Playlist, einen graphischen Equalizer und
	vieles mehr.  Diejenigen, die mit WinAmp vertraut sind, werden
	<application>XMMS</application> sehr leicht zu benutzen
	finden.</para>

      <para>Der Port <filename role="package">audio/mpg123</filename> ist
	ein alternativer, kommandozeilenorientierter MP3-Player.</para>

      <para><application>mpg123</application> kann ausgeführt
	werden, indem man das zu benutzende Sound Device und die
	abzuspielende MP3-Datei auf der Kommandozeile angibt.  Wenn ihr
	Sound Device beispielsweise <devicename>/dev/dsp1.0</devicename> lautet
	und Sie die MP3-Datei <replaceable>Foobar-GreatestHits.mp3</replaceable>
	hören wollen, geben Sie Folgendes ein:</para>

      <screen>&prompt.root; <userinput>mpg123 -a <devicename>/dev/dsp1.0</devicename> <replaceable>Foobar-GreatestHits.mp3</replaceable></userinput>
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
Version 0.59r (1999/Jun/15).  Written and copyrights by Michael Hipp.
Uses code from various people.  See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!





Playing MPEG stream from Foobar-GreatestHits.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
</screen>
    </sect2>

    <sect2 id="rip-cd">
      <title>CD-Audio Tracks rippen</title>

      <para>Bevor man eine ganze CD oder einen CD-Track in das
	MP3-Format umwandeln kann, müssen die Audiodaten von der
	CD auf die Festplatte gerippt werden.  Dabei werden die CDDA
	(CD Digital Audio) Rohdaten in WAV-Dateien kopiert.</para>

      <para>Die Anwendung <command>cdda2wav</command> die im
	<filename role="package">sysutils/cdrtools</filename> Paket enthalten
	ist, kann zum Rippen der Audiodaten und anderen Informationen von CDs
	genutzt werden.</para>

      <para>Wenn die Audio CD in dem Laufwerk liegt, können Sie
	mit folgendem Befehl (als <username>root</username>) eine
	ganze CD in einzelne WAV-Dateien (eine Datei für jeden
	Track) rippen:</para>

      <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -B</userinput></screen>

      <para><application>cdda2wav</application> unterstützt
	auch ATAPI (IDE) CD-ROM-Laufwerke.  Um von einem IDE-Laufwerk
	zu rippen, übergeben Sie auf der Kommandozeile
	statt der SCSI-IDs den Gerätenamen.  Das folgende
	Kommando rippt den 7.&nbsp;Track:</para>

      <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>/dev/acd0</replaceable> -t 7</userinput></screen>

      <para>Der Schalter <option>-D
	  <replaceable>0,1,0</replaceable></option> bezieht sich auf
	das SCSI Device <devicename>0,1,0</devicename>, das sich aus
	dem Ergebnis des Befehls <command>cdrecord -scanbus</command>
	ergibt.</para>

      <para>Um einzelne Tracks zu rippen, benutzen Sie den
	<option>-t</option> Schalter wie folgt:</para>

      <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 7</userinput></screen>

      <para>Dieses Beispiel rippt den siebten Track der Audio
	CD-ROM.  Um mehrere Tracks zu rippen, zum Beispiel die Tracks
	eins bis sieben, können Sie wie folgt einen Bereich
	angeben:</para>

      <screen>&prompt.root; <userinput>cdda2wav -D <replaceable>0,1,0</replaceable> -t 1+7</userinput></screen>

      <para>Mit  &man.dd.1; können Sie ebenfalls Audio-Stücke
	von ATAPI-Laufwerken kopieren.  Dies wird in
	<xref linkend="duplicating-audiocds"/> erläutert.</para>
    </sect2>

    <sect2 id="mp3-encoding">
      <title>MP3-Dateien kodieren</title>

      <para>Gegenwärtig ist <application>Lame</application> der
	meistbenutzte MP3-Encoder.  <application>Lame</application>
	finden Sie unter <filename role="package">audio/lame</filename> im
	Ports-Verzeichnis.</para>

      <para>Benutzen Sie die WAV-Dateien, die sie von CD gerippt
	haben, und wandeln sie mit dem folgenden Befehl die Datei
	<filename><replaceable>audio01.wav</replaceable></filename> in
	<filename><replaceable>audio01.mp3</replaceable></filename> um:</para>

      <screen>&prompt.root; <userinput>lame -h -b <replaceable>128</replaceable> \
--tt "<replaceable>Foo Liedtitel</replaceable>" \
--ta "<replaceable>FooBar Künstler</replaceable>" \
--tl "<replaceable>FooBar Album</replaceable>" \
--ty "<replaceable>2001</replaceable>" \
--tc "<replaceable>Geripped und kodiert von Foo</replaceable>" \
--tg "<replaceable>Musikrichtung</replaceable>" \
<replaceable>audio01.wav audio01.mp3</replaceable></userinput></screen>

      <para>128&nbsp;kbits ist die gewöhnliche MP3-Bitrate.  Viele
	bevorzugen mit 160 oder 192&nbsp;kbits eine höhere Qualität.
	Je höher die Bitrate ist, desto mehr Speicherplatz
	benötigt die resultierende MP3-Datei, allerdings wird die
	Qualität dadurch auch besser.  Der Schalter
	<option>-h</option> verwendet den <quote>higher quality but a
	  little slower</quote> (höhere Qualität, aber etwas
	  langsamer) Modus.  Die Schalter, die mit
	<option>--t</option> beginnen, sind ID3-Tags, die in der Regel
	Informationen über das Lied enthalten und in die
	MP3-Datei eingebettet sind.  Weitere Optionen können in
	der Manualpage von <application>Lame</application> nachgelesen
	werden.</para>
    </sect2>

    <sect2 id="mp3-decoding">
      <title>MP3-Dateien dekodieren</title>

      <para>Um aus MP3-Dateien eine Audio CD zu erstellen, müssen
      diese in ein nicht komprimiertes WAV-Format umgewandelt
      werden.  Sowohl <application>XMMS</application> als auch
      <application>mpg123</application> unterstützen die Ausgabe
      der MP3-Dateien in unkomprimierte Dateiformate.</para>

      <para>Dekodieren mit <application>XMMS</application>:</para>

      <procedure>
	<step>
	  <para>Starten Sie <application>XMMS</application>.</para>
	</step>

	<step>
	  <para>Klicken Sie mit der rechten Maustaste, um das
	    <application>XMMS</application>-Menu zu öffnen.</para>
	</step>

	<step>
	  <para>Wählen Sie <literal>Preference</literal> im
	    Untermenü <literal>Options</literal>.</para>
	</step>

	<step>
	  <para>Ändern Sie das Output-Plugin in <quote>Disk
	    Writer Plugin</quote>.</para>
	</step>

	<step>
	  <para>Drücken Sie <literal>Configure</literal>.</para>
	</step>

	<step>
	  <para>Geben Sie ein Verzeichnis ein (oder wählen Sie
	    browse), in das Sie die unkomprimierte Datei schreiben
	    wollen.</para>
	</step>

	<step>
	  <para>Laden Sie die MP3-Datei wie gewohnt in
	    <application>XMMS</application> mit einer Lautstärke
	    von 100% und einem abgeschalteten EQ.</para>
	</step>

	<step>
	  <para>Drücken Sie <literal>Play</literal> und es wird
	    so aussehen, als spiele <application>XMMS</application>
	    die MP3-Datei ab, aber keine Musik ist zu hören.  Der
	    Player überspielt die MP3-Datei in eine Datei.</para>
	</step>

	<step>
	  <para>Vergessen Sie nicht, das Output-Plugin wieder in den
	    Ausgangszustand zurückzusetzen um wieder MP3-Dateien
	    anhören zu können.</para>
	</step>
      </procedure>

      <para>Mit <application>mpg123</application> nach stdout schreiben:</para>

      <procedure>
	<step>
	  <para>Geben Sie <command>mpg123 -s
	    <replaceable>audio01.mp3</replaceable> &gt;
	    <replaceable>audio01.pcm</replaceable></command>
	    ein.</para>
	</step>
      </procedure>

      <para><application>XMMS</application> schreibt die Datei im
	WAV-Format aus während <application>mpg123</application> die
	MP3-Datei in rohe PCM-Audiodaten umwandelt.
	<application>cdrecord</application> kann mit beiden Formaten
	Audio-CDs erstellen, &man.burncd.8; kann nur rohe
	PCM-Audiodaten verarbeiten.  Der Dateikopf von WAV-Dateien
	erzeugt am Anfang des Stücks ein Knacken.  Sie können
	den Dateikopf mit dem Werkzeug <application>SoX</application>,
	das sich als Paket oder aus dem Port
	<filename role="package">audio/sox</filename> installieren
	lässt, entfernen:</para>

      <screen>&prompt.user; <userinput>sox -t wav -r 44100 -s -w -c 2 <replaceable>track.wav track.raw</replaceable></userinput></screen>

      <para>Lesen Sie <xref linkend="creating-cds"/> in diesem Handbuch,
	um mehr Informationen zur Benutzung von CD-Brennern mit FreeBSD zu
	erhalten.</para>
    </sect2>
  </sect1>

  <sect1 id="video-playback">
    <sect1info>
      <authorgroup>
        <author>
          <firstname>Ross</firstname>
	  <surname>Lippert</surname>
	  <contrib>Beigetragen von </contrib>
        </author>
      </authorgroup>
      <!-- 5 June 2002 -->
    </sect1info>

    <title>Videos wiedergeben</title>

    <para>Die Wiedergabe von Videos ist ein neues, sich schnell
      entwickelndes, Anwendungsgebiet.  Seien Sie geduldig, es
      wird nicht alles so glatt laufen, wie bei den
      Audio-Anwendungen.</para>

    <para>Bevor Sie beginnen, sollten Sie das Modell Ihrer
      Videokarte und den benutzten Chip kennen.  Obwohl
      <application>&xorg;</application> viele Videokarten
      unterstützt, können nur einige Karten Videos
      schnell genug wiedergeben.  Eine Liste der Erweiterungen,
      die der X-Server für eine Videokarte unterstützt,
      erhalten Sie unter laufendem X11 mit dem Befehl
      &man.xdpyinfo.1;.</para>

    <para>Halten Sie eine kurze MPEG-Datei bereit, mit der
      Sie Wiedergabeprogramme und deren Optionen testen
      können.  Da einige DVD-Spieler in der Voreinstellung
      das DVD-Gerät mit <filename>/dev/dvd</filename> ansprechen
      oder diesen Namen fest einkodiert haben, wollen Sie
      vielleicht symbolische Links auf die richtigen
      Geräte anlegen:</para>

    <screen>&prompt.root; <userinput>ln -sf /dev/acd0 /dev/dvd</userinput>
&prompt.root; <userinput>ln -sf /dev/acd0 /dev/rdvd</userinput></screen>

    <para>Wegen &man.devfs.5; gehen gesondert angelegte Links
      wie diese bei einem Neustart des Systems verloren.
      Damit die symbolischen Links automatisch beim Neustart
      des Systems angelegt werden, fügen Sie die
      folgenden Zeilen in <filename>/etc/devfs.conf</filename>
      ein:</para>

    <programlisting>link acd0 dvd
link acd0 rdvd</programlisting>

    <para>Zum Entschlüsseln von DVDs müssen bestimmte
      DVD-ROM-Funktionen aufgerufen werden und schreibender
      Zugriff auf das DVD-Gerät erlaubt sein.</para>

    <para>X11 benutzt Shared-Memory und Sie sollten die
      nachstehenden  &man.sysctl.8;-Variablen auf die
      gezeigten Werte erhöhen:</para>

    <programlisting>kern.ipc.shmmax=67108864
kern.ipc.shmall=32768</programlisting>

    <sect2 id="video-interface">
      <title>Video-Schnittstellen</title>

      <indexterm><primary>XVideo</primary></indexterm>
      <indexterm><primary>SDL</primary></indexterm>
      <indexterm><primary>DGA</primary></indexterm>

      <para>Es gibt einige Möglichkeiten, Videos unter
        X11 abzuspielen.  Welche Möglichkeit funktioniert,
        hängt stark von der verwendeten Hardware ab.
	Ebenso hängt die erzielte Qualität von der
	Hardware ab.  Die Videowiedergabe unter X11 ist ein
	aktuelles Thema, sodass jede neue Version von
	<application>&xorg;</application> wahrscheinlich
	erhebliche Verbesserungen enthält.</para>

      <para>Gebräuchliche Video-Schnittstellen sind:</para>

      <orderedlist>
	<listitem>
	  <para>X11: normale X11-Ausgabe über Shared-Memory.</para>
	</listitem>
	<listitem>
	  <para>XVideo:  Eine Erweiterung der X11-Schnittstelle,
	    die Videos in jedem X11-Drawable anzeigen kann.</para>
	</listitem>
	<listitem>
	  <para>SDL: Simple Directmedia Layer.</para>
	</listitem>
	<listitem>
	  <para>DGA: Direct Graphics Access.</para>
	</listitem>
	<listitem>
	  <para>SVGAlib: Eine Schnittstelle zur Grafikausgabe auf
	    der Konsole.</para>
	</listitem>
      </orderedlist>

      <sect3 id="video-interface-xvideo">
	<title>XVideo</title>

	<para>Die Erweiterung <firstterm>XVideo</firstterm> (auch Xvideo,
	  Xv oder xv) von <application>&xorg;</application>
	  erlaubt die beschleunigte Wiedergabe von Videos in
	  jedem Drawable.  Diese Erweiterung liefert auch auf
	  weniger leistungsfähigen Systemen
	  (beispielsweise einem PIII&nbsp;400&nbsp;MHz Laptop)
	  eine gute Wiedergabe.</para>

	<para>Ob die Erweiterung läuft, entnehmen Sie der
	  Ausgabe von <command>xvinfo</command>:</para>

	<screen>&prompt.user; <userinput>xvinfo</userinput></screen>

	<para>XVideo wird untertsützt, wenn die Ausgabe wie
	  folgt aussieht:</para>

	<screen>X-Video Extension version 2.2
screen #0
  Adaptor #0: "Savage Streams Engine"
    number of ports: 1
    port base: 43
    operations supported: PutImage
    supported visuals:
      depth 16, visualID 0x22
      depth 16, visualID 0x23
    number of attributes: 5
      "XV_COLORKEY" (range 0 to 16777215)
              client settable attribute
              client gettable attribute (current value is 2110)
      "XV_BRIGHTNESS" (range -128 to 127)
              client settable attribute
              client gettable attribute (current value is 0)
      "XV_CONTRAST" (range 0 to 255)
              client settable attribute
              client gettable attribute (current value is 128)
      "XV_SATURATION" (range 0 to 255)
              client settable attribute
              client gettable attribute (current value is 128)
      "XV_HUE" (range -180 to 180)
              client settable attribute
              client gettable attribute (current value is 0)
    maximum XvImage size: 1024 x 1024
    Number of image formats: 7
      id: 0x32595559 (YUY2)
        guid: 59555932-0000-0010-8000-00aa00389b71
        bits per pixel: 16
        number of planes: 1
        type: YUV (packed)
      id: 0x32315659 (YV12)
        guid: 59563132-0000-0010-8000-00aa00389b71
        bits per pixel: 12
        number of planes: 3
        type: YUV (planar)
      id: 0x30323449 (I420)
        guid: 49343230-0000-0010-8000-00aa00389b71
        bits per pixel: 12
        number of planes: 3
        type: YUV (planar)
      id: 0x36315652 (RV16)
        guid: 52563135-0000-0000-0000-000000000000
        bits per pixel: 16
        number of planes: 1
        type: RGB (packed)
        depth: 0
        red, green, blue masks: 0x1f, 0x3e0, 0x7c00
      id: 0x35315652 (RV15)
        guid: 52563136-0000-0000-0000-000000000000
        bits per pixel: 16
        number of planes: 1
        type: RGB (packed)
        depth: 0
        red, green, blue masks: 0x1f, 0x7e0, 0xf800
      id: 0x31313259 (Y211)
        guid: 59323131-0000-0010-8000-00aa00389b71
        bits per pixel: 6
        number of planes: 3
        type: YUV (packed)
      id: 0x0
        guid: 00000000-0000-0000-0000-000000000000
        bits per pixel: 0
        number of planes: 0
        type: RGB (packed)
        depth: 1
        red, green, blue masks: 0x0, 0x0, 0x0</screen>

	<para>Einige der aufgeführten Formate (wie YUV2 oder YUV12)
	  existieren in machen XVideo-Implementierungen nicht.
	  Dies kann zu Problemen mit einigen Spielern führen.</para>

	<para>XVideo wird wahrscheinlich von Ihrer Karte
	  nicht unterstützt, wenn die die Ausgabe wie
	  folgt aussieht:</para>

	<screen>X-Video Extension version 2.2
screen #0
no adaptors present</screen>

	<para>Wenn die XVideo-Erweiterung auf Ihrer Karte nicht
	  läuft, wird es nur etwas schwieriger, die
	  Anforderungen für die Wiedergabe von Videos zu
	  erfüllen.  Abhängig von Ihrer Videokarte
	  und Ihrem Prozessor können Sie dennoch zufriedenstellende
	  Ergebnisse erzielen.  Sie sollten vielleicht die
	  weiterführenden Quellen in <xref
	    linkend="video-further-reading"/> zu Rate ziehen,
	  um die Geschwindigkeit Ihres Systems zu steigern.</para>
      </sect3>

      <sect3 id="video-interface-SDL">
	<title>Simple Directmedia Layer</title>

	<para>Die Simple Directmedia Layer, <acronym>SDL</acronym>,
	  ist eine zwischen &microsoft.windows;, BeOS und &unix;
	  portable Schnittstelle.  Mit dieser Schnittstelle
	  können Anwendungen plattformunabhängig und
	  effizient Ton und Grafik benutzen.  <acronym>SDL</acronym>
	  bietet eine hardwarenahe Schnittstelle, die manchmal
	  schneller als die X11-Schnittstelle sein kann.</para>

	<para><acronym>SDL</acronym> finden Sie in den Ports
	  im Verzeichnis <filename role="package">devel/sdl12</filename>.</para>
      </sect3>

      <sect3 id="video-interface-DGA">
	<title>Direct Graphics Access</title>

	<para>Die X11-Erweiterung
	  Direct Graphics Access (<acronym>DGA</acronym>) erlaubt es
	  Anwendungen, am X-Server vorbei direkt in den Framebuffer
	  zu schreiben.  Da die Anwendung und der X-Server auf gemeinsame
	  Speicherbereiche zugreifen, müssen die Anwendungen
	  unter dem Benutzer <username>root</username> laufen.</para>

	<para>Die DGA-Erweiterung kann mit &man.dga.1; getestet
	  werden.  Das Kommando <command>dga</command> wechselt,
	  jedes Mal wenn eine Taste gedrückt wird, die Farben
	  der Anzeige.  Sie können das Programm mit der
	  Taste <keycap>q</keycap> verlassen.</para>
      </sect3>
    </sect2>

    <sect2 id="video-ports">
      <title>Video-Anwendungen</title>

      <indexterm>
	<primary>Video-Anwendungen</primary>
      </indexterm>

      <para>Dieser Abschnitt behandelt Anwendungen aus der
	&os;-Ports-Sammlung, die Videos abspielen.  An der
	Videowiedergabe wird derzeit aktiv gearbeitet, sodass
	der Funktionsumfang der Anwendungen von dem hier beschriebenen
	abweichen kann.</para>

      <para>Viele unter &os; laufende Videoanwendungen wurden
	unter Linux entwickelt und befinden
	sich noch im Beta-Status.  Der Betrieb dieser Anwendungen
	unter &os; stößt vielleicht auf einige der
	nachstehenden Probleme:</para>

      <orderedlist>
	<listitem>
	  <para>Eine Anwendung kann eine Datei einer anderen
	    Anwendung nicht abspielen.</para>
	</listitem>

	<listitem>
	  <para>Eine Anwendung kann eine selbst produzierte
	    Datei nicht abspielen.</para>
	</listitem>

	<listitem>
	  <para>Wenn dieselbe Anwendung auf unterschiedlichen
	    Maschinen gebaut wird, wird ein Video unterschiedlich
	    wiedergegeben.</para>
	</listitem>

	<listitem>
	  <para>Ein vergleichsweise einfacher Filter, wie die
	    Skalierung eines Bildes, führt zu deutlichen
	    Artefakten in der Darstellung.</para>
	</listitem>

	<listitem>
	  <para>Eine Anwendung stürzt häufig ab.</para>
	</listitem>

	<listitem>
	  <para>Die Dokumentation wird bei der Installation des Ports
	    nicht installiert.  Sie befindet sich entweder auf
	    dem Internet oder im Verzeichnis
	    <filename class="directory">work</filename> des Ports.</para>
	</listitem>
      </orderedlist>

      <para>Viele Anwendungen sind zudem sehr <quote>Linux-lastig</quote>.
	Probleme entstehen durch die Implementierung von
	Standard-Bibliotheken in Linux-Distributionen oder
	dadurch, dass die Anwendung bestimmte Linux-Kernelfunktionen
	voraussetzt.  Diese Probleme werden nicht immer
	vom Betreuer eines Ports bemerkt und umgangen.
	In der Praxis entstehen dadurch folgende Probleme:</para>

      <orderedlist>
	<listitem>
	  <para>Eigenschaften des Prozessors werden über
	    <filename>/proc/cpuinfo</filename> ermittelt.</para>
	</listitem>

	<listitem>
	  <para>Die falsche Anwendung von Threads führt dazu,
	    dass sich ein Programm aufhängt statt sich
	    zu beenden.</para>
	</listitem>

	<listitem>
	  <para>Die Anwendung hängt von anderen Anwendungen
	    ab, die sich noch nicht in der &os;-Ports-Sammlung
	    befinden.</para>
	</listitem>
      </orderedlist>

      <para>Allerdings arbeiten die Anwendungsentwickler bislang mit
	den Betreuern der Ports zusammen, sodass zusätzlicher
	Portierungsaufwand minimiert wird.</para>

      <sect3 id="video-mplayer">
	<title>MPlayer</title>

	<para><application>MPlayer</application> ist ein kürzlich
	  entstandener und sich stark weiterentwickelnder Video-Spieler.
	  Das Hauptaugenmerk des <application>MPlayer</application>-Teams
	  liegt auf Geschwindigkeit und Flexibilität auf
	  Linux und anderen &unix; Systemen.  Das Projekt entstand
	  weil der Gründer des Teams unzufrieden mit der
	  Geschwindigkeit bestehender Video-Spieler war.  Kritiker
	  behaupten, dass die Benutzeroberfläche der einfachen
	  Gestaltung zum Opfer fiel.  Wenn Sie sich allerdings erstmal
	  an die Kommandozeilenoptionen und die Tastensteuerung
	  gewöhnt haben, funktioniert die Anwendung sehr gut.</para>

	<sect4 id="video-mplayer-building">
	  <title>MPlayer bauen</title>
	  <indexterm>
	    <primary>MPlayer</primary>
	    <secondary>bauen</secondary>
	  </indexterm>

	  <para><application>MPlayer</application> finden Sie in der
	    Ports-Sammlung unter
	    <filename role="package">multimedia/mplayer</filename>.
	    Der Bau von <application>MPlayer</application>
	    berücksichtigt die vorhandene Harware und erzeugt
	    ein Programm, das nicht auf ein anderes System übertragbar
	    ist.  Es ist daher wichtig, dass Sie das Programm aus
	    den Ports bauen und nicht das fertige Paket installieren.
	    Zusätzlich können Sie auf der Kommandozeile
	    von <command>make</command> noch einige Optionen angeben,
	    die im <filename>Makefile</filename> beschrieben sind
	    und am die Anfang des Baus ausgegeben werden:</para>

	  <screen>&prompt.root; <userinput>cd /usr/ports/multimedia/mplayer</userinput>
&prompt.root; <userinput>make</userinput>
N - O - T - E

Take a careful look into the Makefile in order
to learn how to tune mplayer towards you personal preferences!
For example,
make WITH_GTK1
builds MPlayer with GTK1-GUI support.
If you want to use the GUI, you can either install
/usr/ports/multimedia/mplayer-skins
or download official skin collections from
http://www.mplayerhq.hu/homepage/dload.html</screen>

	  <para>Für die meisten Benutzer sind die
	    voreingestellten Option in Ordnung.  Wenn Sie
	    den XviD-Codec benötigen, müssen
	    Sie auf der Kommandozeile die Option
	    <makevar>WITH_XVID</makevar> angeben.  Das
	    DVD-Gerät können Sie mit der
	    Option <makevar>WITH_DVD_DEVICE</makevar>
	    angeben.  Wenn Sie die Option nicht angeben,
	    wird <filename>/dev/acd0</filename> benutzt.</para>

	  <para>Als dieser Abschnitt verfasst wurde, baute der
	    <application>MPlayer</application>-Port die
	    HTML-Dokumentation sowie die beiden Programme
	    <command>mplayer</command> und
	    <command>mencoder</command>.  Mit
	    <command>mencoder</command> können Sie
	    Videodateien umwandeln.</para>

	  <para>Die HTML-Dokumentation von
	    <application>MPlayer</application> ist sehr lehrreich.
	    Wenn Sie in diesem Kapitel Informationen über
	    Video-Hardware oder Schnittstellen vermissen, ist
	    die <application>MPlayer</application>-Dokumentation
	    eine ausgezeichnete Quelle.  Wenn Sie Informationen
	    über die Video-Unterstützung unter &unix;
	    benötigen, sollten Sie die
	    <application>MPlayer</application>-Dokumentation
	    auf jeden Fall lesen.</para>
	</sect4>

	<sect4 id="video-mplayer-using">
	  <title>MPlayer benutzen</title>
	  <indexterm>
	    <primary>MPlayer</primary>
	    <secondary>benutzen</secondary>
	  </indexterm>

	  <para>Jeder Benutzer von <application>MPlayer</application>
	    muss in seinem Heimatverzeichnis das Verzeichnis
	    <filename class="directory">.mplayer</filename>
	    anlegen.  Dieses Verzeichnis können Sie
	    wie folgt anlegen:</para>

	  <screen>&prompt.user; <userinput>cd /usr/ports/multimedia/mplayer</userinput>
&prompt.user; <userinput>make install-user</userinput></screen>

	  <para>Die Kommandozeilenoptionen von <command>mplayer</command>
	    sind in der Hilfeseite aufgeführt.  Eine genaue
	    Beschreibung befindet sich in der HTML-Dokumentation.
	    In diesem Abschnitt wird nur der normale Gebrauch
	    von <command>mplayer</command> beschrieben.</para>

	  <para>Um eine Datei, wie
	    <filename><replaceable>testfile.avi</replaceable></filename>,
	    unter verschiedenen Video-Schnittstellen abzuspielen,
	    benutzen Sie die Option <option>-vo</option>:</para>

	  <screen>&prompt.user; <userinput>mplayer -vo xv <replaceable>testfile.avi</replaceable></userinput></screen>
	  <screen>&prompt.user; <userinput>mplayer -vo sdl <replaceable>testfile.avi</replaceable></userinput></screen>
	  <screen>&prompt.user; <userinput>mplayer -vo x11 <replaceable>testfile.avi</replaceable></userinput></screen>
	  <screen>&prompt.root; <userinput>mplayer -vo dga <replaceable>testfile.avi</replaceable></userinput></screen>
	  <screen>&prompt.root; <userinput>mplayer -vo 'sdl:dga' <replaceable>testfile.avi</replaceable></userinput></screen>

	  <para>Es lohnt sich, alle Option zu testen.  Die
	    erzielte Geschwindigkeit hängt von vielen
	    Faktoren ab und variiert beträchtlich je nach
	    eingesetzter Hardware.</para>

	  <para>Wenn Sie eine DVD abspielen wollen, ersetzen Sie
	    <filename><replaceable>testfile.avi</replaceable></filename> durch
	    <option>-dvd://<replaceable>N</replaceable>
	      <replaceable>Gerät</replaceable></option>.
	    <replaceable>N</replaceable> ist die Nummer des
	    Stücks, das Sie abspielen wollen und
	    <replaceable>Gerät</replaceable> gibt den
	    Gerätenamen des DVD-ROMs an.  Das nachstehende
	    Kommando spielt das dritte Stück von
	    <filename>/dev/dvd</filename>:</para>

	  <screen>&prompt.root; <userinput>mplayer -vo dga -dvd://3 /dev/dvd</userinput></screen>

	  <note>
	    <para>Das standardmäßig verwendete
	      DVD-Laufwerk kann beim Bau des
	      <application>MPlayer</application>-Ports
	      mit der Option <makevar>WITH_DVD_DEVICE</makevar>
	      festgelegt werden.  Die Voreinstellung verwendet
	      das Gerät <filename>/dev/acd0</filename>.
	      Genaueres finden Sie im <filename>Makefile</filename>
	      des Ports.</para>
	  </note>

	  <para>Die Tastenkombinationen zum Abbrechen, Anhalten
	    und Weiterführen der Wiedergabe entnehmen Sie
	    bitte der Ausgabe von <command>mplayer -h</command>
	    oder der Hilfeseite.</para>

	  <para>Weitere nützliche Optionen für die
	    Wiedergabe sind <option>-fs -zoom</option> zur Wiedergabe
	    im Vollbild-Modus und <option>-framedrop</option>
	    zur Steigerung der Geschwindigkeit.</para>

	  <para>Damit die Kommandozeile von <command>mplayer</command>
	    kurz bleibt, kann ein Benutzer Vorgaben in der Datei
	    <filename>.mplayer/config</filename> hinterlegen:</para>

	  <programlisting>vo=xv
fs=yes
zoom=yes</programlisting>

	  <para>Schließlich kann <command>mplayer</command>
	    noch DVD-Stücke in <filename>.vob</filename>-Dateien
	    rippen.  Das zweite Stück einer DVD wandeln Sie
	    wie folgt in eine Datei um:</para>

	  <screen>&prompt.root; <userinput>mplayer -dumpstream -dumpfile out.vob -dvd://2 /dev/dvd</userinput></screen>

	  <para>Die Ausgabedatei <filename>out.vob</filename>
	    wird im MPEG-Format abgespeichert und kann mit
	    anderen Werkzeugen aus diesem Abschnitt bearbeitet
	    werden.</para>
	</sect4>

	<sect4 id="video-mencoder">
	  <title>mencoder</title>
	  <indexterm>
	    <primary>mencoder</primary>
	  </indexterm>

	  <para>Sie sollten die HTML-Dokumentation lesen, bevor
	    Sie <command>mencoder</command> benutzen.  Es gibt
	    zwar eine Hilfeseite, die aber ohne die HTML-Dokumentation
	    nur eingeschräkt nützlich ist.  Es gibt
	    viele Möglichkeiten die Qualität zu verbessern,
	    die Bitrate zu verringern und Formate zu konvertieren.
	    Einige davon haben erhebliche Auswirkungen auf die
	    Geschwindigkeit der Wiedergabe.  Zum Start finden
	    Sie im Folgenden einige Kommandozeilen.  Die erste
	    kopiert einfach eine Datei:</para>

	  <screen>&prompt.user; <userinput>mencoder <replaceable>input.avi</replaceable> -oac copy -ovc copy -o <replaceable>output.avi</replaceable></userinput></screen>

	  <para>Falsche Kombinationen von Kommandozeilenparametern
	    ergeben eventuell Dateien, die selbst
	    <command>mplayer</command> nicht mehr abspielen kann.
	    Wenn Sie in eine Datei rippen, sollten Sie daher auf
	    jeden Fall die Option <option>-dumpfile</option> von
	    <command>mplayer</command> verwenden.</para>

	  <para>Die nachstehende Kommandozeile wandelt die Datei
	    <filename><replaceable>input.avi</replaceable></filename> nach
	    MPEG4 mit MPEG3 für den Ton um (hierfür wird der Ports
	    <filename role="package">audio/lame</filename>
	    benötigt):</para>

	  <screen>&prompt.user; <userinput>mencoder <replaceable>input.avi</replaceable> -oac mp3lame -lameopts br=192 \
	 -ovc lavc -lavcopts vcodec=mpeg4:vhq -o <replaceable>output.avi</replaceable></userinput></screen>

	  <para>Die Ausgabedatei lässt sowohl mit
	    <command>mplayer</command> als auch
	    <command>xine</command> abspielen.</para>

	  <para>Wenn Sie
	    <filename><replaceable>input.avi</replaceable></filename> durch
	    <option>-dvd://1 /dev/dvd</option> ersetzen und das
	    Kommando unter <username>root</username> laufen lassen,
	    können Sie ein DVD-Stück direkt konvertieren.
	    Da Sie wahrscheinlich beim ersten Mal unzufrieden mit
	    den Ergebnissen sind, sollten Sie das Stück zuerst
	    in eine Datei schreiben und anschließend
	    die Datei weiterverarbeiten.</para>
	</sect4>
      </sect3>

      <sect3 id="video-xine">
	<title>Der Video-Spieler xine</title>

	<para>Der Video-Spieler <application>xine</application>
	  ist ein Projekt mit großem Umfang.  Das Projekt
	  will nicht nur ein Programm für alle Video-Anwendungen
	  bieten, sondern auch eine wiederverwendbare Bibliothek
	  und ein Programm, das durch Plugins erweiterbar ist.
	  Das Programm steht als fertiges Paket oder als Port
	  unter <filename role="package">multimedia/xine</filename>
	  zur Verfügung.</para>

	<para>Der <filename role="package">multimedia/xine</filename>-Spieler
	  hat noch ein paar Ecken und Kanten, macht aber insgesamt
	  einen guten Eindruck.  Für einen reibungslosen
	  Betrieb benötigt <application>xine</application>
	  entweder eine schnelle <acronym>CPU</acronym> oder
	  die XVideo-Erweiterung.  Das <acronym>GUI</acronym>
	  ist etwas schwerfällig.</para>

	<para>Zurzeit gibt es kein <application>xine</application>-Modul,
	  das CSS-kodierte DVDs abspielen kann und sich in
	  der &os; Ports-Sammlung befindet.</para>

	<para><application>xine</application> ist benutzerfreundlicher
	  als <application>MPlayer</application>, bietet allerdings
	  nicht soviele Möglichkeiten.  Am schnellsten läuft
	  <application>xine</application> mit der
	  XVideo-Erweiterung.</para>

	<para>In der Voreinstellung startet <application>xine</application>
	  eine grafische Benutzeroberfläche.  Über
	  Menüs können Sie Dateien öffnen:</para>

	<screen>&prompt.user; <userinput>xine</userinput></screen>

	<para>Alternativ können Sie das Programm auch ohne
	  GUI aufrufen und Dateien direkt abspielen:</para>

	<screen>&prompt.user; <userinput>xine -g -p <replaceable>mymovie.avi</replaceable></userinput></screen>
      </sect3>

      <sect3 id="video-ports-transcode">
	<title>Die transcode-Werkzeuge</title>

	<para><application>transcode</application> ist kein Spieler,
	  sondern eine Sammlung von Werkzeugen zur Umwandlung von
	  Video- und Sounddateien.
	  <application>transcode</application> mischt Video-Dateien
	  und kann kaputte Video-Dateien reparieren.  Die
	  Werkzeuge werden als Filter verwendet, das heißt
	  die Ein- und Ausgaben verwenden
	  <filename>stdin/stdout</filename>.</para>

	<para>Beim Bau von <application>transcode</application>
	  über den Port <filename
	  role="package">multimedia/transcode</filename> können
	  zwar zahreiche Optionen angegeben werden.  Empfehlenswert
	  ist es aber, den Bau mit folgendem Befehl zu starten:</para>

	<screen>&prompt.root; <userinput>make WITH_OPTIMIZED_CFLAGS=yes WITH_LIBA52=yes WITH_LAME=yes WITH_OGG=yes \
WITH_MJPEG=yes -DWITH_XVID=yes</userinput></screen>

	<para>Diese Einstellungen sollen für die meisten Anwender
	  ausreichend sein.</para>

	<para>Um die Fähigkeiten von
	  <command>transcode</command> zu illustrieren, wird im
	  folgenden Beispiel eine DivX-Datei in eine PAL MPEG-1-Datei
	  konvertiert:</para>

	<screen>&prompt.user; <userinput>transcode -i <replaceable>input.avi</replaceable> -V --export_prof vcd-pal -o output_vcd</userinput>
&prompt.user; <userinput>mplex -f 1 -o <replaceable>output_vcd.mpg output_vcd.m1v output_vcd.mpa</replaceable></userinput></screen>

	<para>Die daraus resultierende MPEG-Datei,
	  <filename><replaceable>output_vcd.mpg</replaceable></filename>,
	  kann beispielsweise mit <application>MPlayer</application> abgespielt
	  werden.  Sie können sie sogar als Video-CD auf eine CD-R brennen.
	  Wenn Sie diese Funktion benötigen, müssen Sie
	  zusätzlich die beiden Programme <filename
	   role="package">multimedia/vcdimager</filename> und <filename
	   role="package">sysutils/cdrdao</filename> installieren.</para>

	<para>Zwar gibt es eine Manualpage zu
	  <command>transcode</command>, Sie sollen aber auf jeden Fall
	  auch die Informationen und Beispiele im <ulink
	  url="http://www.transcoding.org/cgi-bin/transcode">
	  transcode-Wiki</ulink> lesen.</para>
      </sect3>
    </sect2>

    <sect2 id="video-further-reading">
      <title>Weiterführende Quellen</title>

      <para>Die Video-Software für &os; entwickelt sich
	sehr schnell.  Es ist wahrscheinlich, dass die hier
	angesprochenen Probleme bald gelöst sind.  Bis dahin
	müssen Anwender, die das meiste aus den Audio- und
	Video-Fähigkeiten von &os; machen wollen, Informationen
	aus mehreren FAQs und Tutorien zusammensuchen und
	verschiedene Anwendungen nebeneinander betreiben.  Dieser
	Abschnitt weist auf weitere Informationsquellen hin.</para>

      <para>Die
        <ulink url="http://www.mplayerhq.hu/DOCS/">MPlayer-Dokumentation</ulink>
	ist sehr aufschlussreich.  Die Dokumente sollten wahrscheinlich
	von jedem gelesen werden, der hohe Fachkenntnisse über
	Video auf &unix; Systemen erlangen will.  Die
	<application>MPlayer</application>-Mailinglisten reagiert
	feindselig auf Personen, die es nicht für nötig
	halten, die Dokumentation zu lesen.  Wenn Sie Fehlerberichte
	an die Liste schicken wollen, lesen Sie bitte vorher die
	ausgezeichnete Dokumentation (RTFM).</para>

      <para>Das
        <ulink url="http://dvd.sourceforge.net/xine-howto/en_GB/html/howto.html">xine HOWTO</ulink>
	enthält allgemein gültige Hinweise zur
	Verbesserung der Wiedergabegeschwindigkeit.</para>

      <para>Schließlich gibt es noch weitere vielversprechende
	Anwendungen, die Sie vielleicht ausprobieren wollen:</para>

      <itemizedlist>
	<listitem>
	  <para><ulink
	      url="http://avifile.sourceforge.net/">Avifile</ulink>
	    gibt es schon als Port
	    <filename role='package'>multimedia/avifile</filename>.</para>
	</listitem>

	<listitem>
	  <para><ulink
	      url="http://www.dtek.chalmers.se/groups/dvd/">Ogle</ulink>
	    wurde ebenfalls schon portiert:
	    <filename role='package'>multimedia/ogle</filename>.</para>
	</listitem>

	<listitem>
	  <para><ulink url="http://xtheater.sourceforge.net/">Xtheater</ulink>.</para>
	</listitem>

	<listitem>
	  <para><filename role="package">multimedia/dvdauthor</filename>,
	    ist ein Open-Source-Paket, mit dem Sie DVDs erstellen
	    können.</para>
	</listitem>
      </itemizedlist>
    </sect2>
  </sect1>

  <sect1 id="tvcard">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Josef</firstname>
	  <surname>El-Rayes</surname>
	  <contrib>Beigetragen von </contrib>
	</author>
      </authorgroup>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Fonvieille</surname>
	  <contrib>Überarbeitet von </contrib>
	  <!-- 02 January 2004 -->
	</author>
      </authorgroup>
    </sect1info>

    <title>TV-Karten einrichten</title>
    <indexterm>
      <primary>TV-Karten</primary>
    </indexterm>

    <sect2>
      <title>Einführung</title>

      <para>Mit TV-Karten können Sie mit Ihrem Rechner
	über Kabel oder Antenne fernsehen.  Die meisten
	Karten besitzen einen RCA- oder S-Video-Eingang.
	Einige Karten haben auch einen FM-Radio-Empfänger.</para>

      <para>Der &man.bktr.4;-Treiber von &os; unterstützt
	PCI-TV-Karten mit einem Brooktree Bt848/849/878/879 oder
	einem Conexant CN-878/Fusion 878a Chip.  Die Karte sollte
	einen der unterstützten Empfänger besitzen, die in
	der Hilfeseite &man.bktr.4; aufgeführt sind.</para>
    </sect2>

    <sect2>
      <title>Den Treiber einrichten</title>

      <para>Um Ihre Karte zu benutzen, müssen Sie den
	&man.bktr.4;-Treiber laden.  Fügen Sie die
	nachstehende Zeile in die Datei
	<filename>/boot/loader.conf</filename> ein:</para>

      <programlisting>bktr_load="YES"</programlisting>

      <para>Sie können den Treiber für die TV-Karte
	auch fest in den Kernel compilieren.  Erweitern Sie
	dazu Ihre Kernelkonfiguration um die folgenden Zeilen:</para>

      <programlisting>device	 bktr
device	iicbus
device	iicbb
device	smbus</programlisting>

      <para>Die zusätzlichen Treiber werden benötigt,
	da die Komponenten der Karte über einen I2C-Bus
	verbunden sind.  Bauen und installieren Sie dann den
	neuen Kernel.</para>

      <para>Anschließend müssen Sie Ihr System
	neu starten.  Während des Neustarts sollte
	Ihre TV-Karte erkannt werden:</para>

      <programlisting>bktr0: &lt;BrookTree 848A&gt; mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
iicbb0: &lt;I2C bit-banging driver&gt; on bti2c0
iicbus0: &lt;Philips I2C bus&gt; on iicbb0 master-only
iicbus1: &lt;Philips I2C bus&gt; on iicbb0 master-only
smbus0: &lt;System Management Bus&gt; on bti2c0
bktr0: Pinnacle/Miro TV, Philips SECAM tuner.</programlisting>

      <para>Abhängig von Ihrer Hardware können die
	Meldungen natürlich anders aussehen.  Sie sollten
	aber prüfen, dass der Empfänger richtig erkannt wird.
	Die entdeckten Geräte lassen sich mit &man.sysctl.8;
	oder in der Kernelkonfigurationsdatei überschreiben.
	Wenn Sie beispielsweise einen Philips-SECAM-Empfänger
	erzwingen wollen, fügen Sie die folgende Zeile
	zur Kernelkonfigurationsdatei hinzu:</para>

      <programlisting>options OVERRIDE_TUNER=6</programlisting>

      <para>Alternativ können Sie direkt &man.sysctl.8; benutzen:</para>

      <screen>&prompt.root; <userinput>sysctl hw.bt848.tuner=6</userinput></screen>

      <para>Weitere Informationen zu den verschiedenen Optionen finden
	Sie in &man.bktr.4; sowie in der Datei
	<filename>/usr/src/sys/conf/NOTES</filename>.</para>
    </sect2>

    <sect2>
      <title>Nützliche Anwendungen</title>

      <para>Um die TV-Karte zu benutzen, müssen Sie eine
	der nachstehenden Anwendungen installieren:</para>

      <itemizedlist>
	<listitem>
	  <para><filename role="package">multimedia/fxtv</filename>
	    lässt das Fernsehprogramm in einem Fenster laufen
	    und kann Bilder, Audio und Video aufzeichnen.</para>
	</listitem>
	<listitem>
	  <para><filename role="package">multimedia/xawtv</filename>
	    eine weitere TV-Anwendung, mit den gleichen Funktionen
	    wie <application>fxtv</application>.</para>
	</listitem>
	<listitem>
	  <para><filename role="package">misc/alevt</filename> dekodiert
	    und zeigt Videotext/Teletext an.</para>
	</listitem>
	<listitem>
	  <para>Mit <filename role="package">audio/xmradio</filename>
	    lässt sich der FM-Radio-Empfänger, der sich
	    auf einigen TV-Karten befindet, benutzen.</para>
	</listitem>
	<listitem>
	  <para><filename role="package">audio/wmtune</filename>
	    ein leicht zu bedienender Radio-Empfänger.</para>
	</listitem>
      </itemizedlist>

      <para>Weitere Anwendungen finden Sie in der &os;
	Ports-Sammlung.</para>
    </sect2>

    <sect2>
      <title>Fehlersuche</title>

      <para>Wenn Sie Probleme mit Ihrer TV-Karte haben, prüfen
	Sie zuerst, ob der Video-Capture-Chip und der Empfänger
	auch wirklich vom &man.bktr.4;-Treiber unterstützt
	werden.  Prüfen Sie dann, ob Sie die richtigen
	Optionen verwenden.  Weitere Hilfe erhalten Sie auf
	der Mailingliste &a.multimedia.name; und in deren
	Archiven.</para>
    </sect2>
  </sect1>

  <sect1 id="mythtv">
    <title>MythTV</title>

    <para>MythTV ist ein Open Source <acronym role="Personal Video
      Recorder">PVR</acronym>-Softwareprojekt.</para>

    <para>Es ist in der &linux;-Welt als komplexe Anwendung mit vielen
      Abhängigkeiten bekannt und deshalb schwierig zu
      installieren.  Das &os; Portssystem vereinfacht diesen Prozess
      sehr stark, jedoch müssen manche Komponenten manuell
      eingerichtet werden.  Dieser Abschnitt soll dazu dienen, bei der
      Einrichtung von MythTV zu helfen.</para>

    <sect2>
      <title>Hardware</title>

      <para>MythTV wurde entwickelt, um <acronym
        role="Video for Linux">V4L</acronym> zu verwenden, so dass auf
        Videoeingabegeräte wie Kodierer und Empfänger
        zugegriffen werden kann.  Aktuell funktioniert MythTV am besten
        mit <acronym role="Universal Serial Bus">USB</acronym> DVB-S/C/T
        Karten, die von <filename
        role="package">multimedia/webcamd</filename> unterstützt
        werden, weil <application>webcamd</application> eine
        <acronym role="Video for Linux">V4L</acronym>-Anwendung zur
        Verfügung stellt, die als Benutzerprogramm läft.  Jede
        <acronym role="Digital Video Broadcasting">DVB</acronym>-Karte,
        welche von <application>webcamd</application> unterstützt
        wird, sollte mit MythTV funktionieren, jedoch gibt es eine Liste
        von Karten, die <ulink
        url="http://wiki.freebsd.org/WebcamCompat">hier</ulink>
        abgerufen werden kann.  Es existieren auch Treiber für
        Hauppauge-Karten in den folgenden Paketen: <filename
        role="package">multimedia/pvr250</filename> und <filename
        role="package">multimedia/pvrxxx</filename>, allerdings liefern
        diese nur eine Treiberschnittstelle, die nicht dem Standard
        entspricht und die nicht mit MythTV-Versionen grösser als
        0.23 funktionieren.</para>

      <para><ulink url="http://wiki.freebsd.org/HTPC">HTPC</ulink>
        enthält eine Liste von allen verfügbaren <acronym
        role="Digital Video Broadcasting">DVB</acronym>-Treibern.</para>
    </sect2>

    <sect2>
      <title>Abhängigkeiten</title>

      <para>Da MythTV flexibel und modular aufgebaut ist, ist der Benutzer
        in der Lage, das Frontend und Backend auf unterschiedlichen
        Rechnern laufen zu lassen.</para>

      <para>Für das Frontend wird <filename
        role="package">multimedia/mythtv-frontend</filename>, sowie
        ein X-Server benötigt, welcher in <filename
        role="package">x11/xorg</filename> zu finden ist.  Idealerweise
        besitzt der Frontend-Computer auch eine Videokarte, die <acronym
        role="X-Video Motion Compensation">XvMC</acronym>
        unterstützt, sowie optional eine <acronym
        role="Linux Infrared Remote Control">LIRC</acronym>-kompatible
        Fernbedienung.</para>

      <para>Für das Backend wird <filename
        role="package">multimedia/mythtv</filename> benötigt, ebenso
        wie eine &mysql;-Datenbank, sowie zusätzlich einen
        Empfänger und Speicherplatz für Aufzeichnungen.  Das
        &mysql;-Paket sollte automatisch als Abhängigkeit
        mitinstalliert werden, wenn <filename
        role="package">multimedia/mythtv</filename> gebaut wird.</para>
    </sect2>

    <sect2>
      <title>MythTV einrichten</title>

      <para>Um MythTV zu installieren, befolgen Sie die hier
        aufgeführten Schritte. Zuerst installieren Sie MythTV aus
        der Ports-Sammlung:</para>

      <screen>&prompt.root; <userinput>cd /usr/ports/multimedia/mythtv</userinput>
&prompt.root; <userinput>make install</userinput></screen>

      <para>Richten Sie anschliessend die MythTV-Datenbank ein:</para>

      <screen>&prompt.root; <userinput>mysql -uroot -p < /usr/local/share/mythtv/database/mc.sql</userinput></screen>

      <para>Konfigurieren Sie dann das Backend:</para>

      <screen>&prompt.root; <userinput>mythtv-setup</userinput></screen>

      <para>Zum Schluss starten Sie das Backend:</para>

      <screen>&prompt.root; <userinput>echo 'mythbackend_enable="YES"' >> /etc/rc.conf</userinput>
&prompt.root; <userinput>/usr/local/etc/rc.d/mythbackend start</userinput></screen>
    </sect2>
  </sect1>

  <sect1 id="scanners">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Marc</firstname>
	  <surname>Fonvieille</surname>
	  <contrib>Beigetragen von </contrib>
	  <!-- 04 August 2004 -->
	</author>
      </authorgroup>
    </sect1info>

    <title>Scanner</title>
    <indexterm>
      <primary>Scanner</primary>
    </indexterm>

    <sect2>
      <title>Einführung</title>

      <para>Unter &os; stellt
	<application>SANE</application> (Scanner Access Now Easy)
	aus der Ports-Sammlung eine einheitliche Schnittstelle
	(<acronym role="Application Programming Interface">API</acronym>)
	für den Zugriff auf Scanner bereit.
	<application>SANE</application> wiederum greift auf Scanner
	mithilfe einiger &os;-Treiber zu.</para>

      <para>&os; unterstützt sowohl SCSI- als auch USB-Scanner.
	Prüfen Sie vor der Konfiguration mithilfe der
	<ulink url="http://www.sane-project.org/sane-supported-devices.html">
	Liste der unterstützten Geräte</ulink> ob Ihr Scanner
	von <application>SANE</application> unterstützt wird.  Bei
	Systemen vor &os;&nbsp;8.X zählt die Hilfeseite &man.uscanner.4;
	ebenfalls die unterstützten USB-Scanner auf.</para>
    </sect2>

    <sect2>
      <title>Den Kernel für Scanner einrichten</title>

      <para>Da sowohl SCSI- als auch USB-Scanner unterstützt
	werden, werden abhängig von der Schnittstelle
	unterschiedliche Treiber benötigt.</para>

      <sect3 id="scanners-kernel-usb">
	<title>USB-Scanner</title>

	<para>Im <filename>GENERIC</filename>-Kernel sind
	  schon alle, für einen USB-Scanner notwendigen,
	  Treiber enthalten.  Wenn Sie einen angepassten Kernel
	  benutzen, prüfen Sie, dass die Kernelkonfiguration
	  die nachstehenden Zeilen enthält:</para>

	<programlisting>device usb
device uhci
device ohci
device ehci</programlisting>

        <para>Bei Systemen vor &os;&nbsp;8.X wird ausserdem noch die folgende
          Zeile benötigt:</para>

        <programlisting>device uscanner</programlisting>

        <para>Bei diesen &os;-Versionen liefert das &man.uscanner.4;-Gerät
          die Unterstützung für USB-Scanner.  Seit &os;&nbsp;8.0 ist
          diese Unterstützung direkt in der &man.libusb.3;-Bibliothek
          enthalten.</para>

	<para>Nachdem Sie das System mit dem richtigen Kernel neu gestartet
	  haben, stecken Sie den USB-Scanner ein.  Danach sollte in den
	  Systemmeldungen (die Sie mit &man.dmesg.8; betrachten
	  können) eine Zeile ähnlich der folgenden
	  erscheinen:</para>

	<screen>ugen0.2: &lt;EPSON&gt; at usbus0</screen>

        <para>bzw. auf einem &os;&nbsp;7.X System:</para>

	<screen>uscanner0: EPSON EPSON Scanner, rev 1.10/3.02, addr 2</screen>

	<para>Diese Meldung besagt, dass der Scanner entweder die
	  Gerätedatei <filename>/dev/ugen0.2</filename> oder
	  <filename>/dev/uscanner0</filename> benutzt, je nachdem, welche
	  &os;-Version eingesetzt wird.  In diesem Beispiel wurde ein
	  &epson.perfection;&nbsp;1650 USB-Scanner verwendet.</para>
      </sect3>

      <sect3>
	<title>SCSI-Scanner</title>

	<para>Wenn Ihr Scanner eine SCSI-Schnittstelle besitzt,
	  ist die Kernelkonfiguration abhängig vom
	  verwendeten SCSI-Controller.  Der
	  <filename>GENERIC</filename>-Kernel unterstützt
	  die gebräuchlichen SCSI-Controller.  Den richtigen
	  Treiber finden Sie in der Datei <filename>NOTES</filename>.
	  Neben dem Treiber muss Ihre Kernelkonfiguration
	  noch die nachstehenden Zeilen enthalten:</para>

	<programlisting>device scbus
device pass</programlisting>

	<para>Nachdem Sie einen Kernel gebaut und installiert haben,
	  sollte der Scanner beim Neustart in den Systemmeldungen
	  erscheinen:</para>

	<screen>pass2 at aic0 bus 0 target 2 lun 0
pass2: &lt;AGFA SNAPSCAN 600 1.10&gt; Fixed Scanner SCSI-2 device
pass2: 3.300MB/s transfers</screen>

	<para>Wenn der Scanner während des Systemstarts
	  ausgeschaltet war, können Sie die Geräteerkennung
	  erzwingen, indem Sie den SCSI-Bus erneut absuchen.
	  Verwenden Sie dazu das Kommando &man.camcontrol.8;:</para>

	<screen>&prompt.root; <userinput>camcontrol rescan all</userinput>
Re-scan of bus 0 was successful
Re-scan of bus 1 was successful
Re-scan of bus 2 was successful
Re-scan of bus 3 was successful</screen>

	<para>Der Scanner wird anschließend in der
	  SCSI-Geräteliste angezeigt:</para>

	<screen>&prompt.root; <userinput>camcontrol devlist</userinput>
&lt;IBM DDRS-34560 S97B&gt;              at scbus0 target 5 lun 0 (pass0,da0)
&lt;IBM DDRS-34560 S97B&gt;              at scbus0 target 6 lun 0 (pass1,da1)
&lt;AGFA SNAPSCAN 600 1.10&gt;           at scbus1 target 2 lun 0 (pass3)
&lt;PHILIPS CDD3610 CD-R/RW 1.00&gt;     at scbus2 target 0 lun 0 (pass2,cd0)</screen>

	<para>Weiteres über SCSI-Geräte lesen Sie
	  bitte in den Hilfeseiten &man.scsi.4; und &man.camcontrol.8;
	  nach.</para>
      </sect3>
    </sect2>

    <sect2>
      <title>SANE konfigurieren</title>

      <para><application>SANE</application> besteht aus zwei
	Teilen, den Backends
	(<filename role="package">graphics/sane-backends</filename>)
	und den Frontends
	(<filename role="package">graphics/sane-frontends</filename>).
	Das Backend greift auf den Scanner zu.  Welches Backend
	welchen Scanner unterstützt, entnehmen Sie der
	<ulink url="http://www.sane-project.org/sane-supported-devices.html">
	Liste der unterstützten Geräte</ulink>.
	Der Betrieb eines Scanners ist nur mit dem richtigen
	Backend möglich.  Die Frontends sind die Anwendungen,
	mit denen gescannt wird (<application>xscanimage</application>).</para>

      <para>Installieren Sie zuerst den Port oder das Paket
	<filename role="package">graphics/sane-backends</filename>.
	Anschließend können Sie mit dem Befehl
	<command>sane-find-scanner</command> prüfen, ob
	<application>SANE</application> Ihren Scanner erkennt:</para>

      <screen>&prompt.root; <userinput>sane-find-scanner -q</userinput>
found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3</screen>

      <para>Die Ausgabe zeigt die Schnittstelle und die verwendete
	Gerätedatei des Scanners.  Der Hersteller und das
	Modell können in der Ausgabe fehlen.</para>

      <note>
	<para>Bei einigen USB-Scannern müssen Sie die
	  Firmware aktualisieren, dies wird in der Hilfeseite
	  des Backends erklärt.  Lesen Sie bitte auch
	  die Hilfeseiten &man.sane-find-scanner.1; und
	  &man.sane.7;.</para>
      </note>

      <para>Als nächstes müssen Sie prüfen, ob
	der Scanner vom Frontend erkannt wird.  Die
	<application>SANE</application>-Backends werden
	mit dem Kommandozeilenwerkzeug &man.scanimage.1;
	geliefert.  Mit diesem Werkzeug können Sie
	sich Scanner anzeigen lassen und den Scan-Prozess
	von der Kommandozeile starten.  Die Option
	<option>-L</option> zeigt die Scanner an:</para>

      <screen>&prompt.root; <userinput>scanimage -L</userinput>
device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner</screen>

      <para>Oder, für das Beispiel mit dem USB-Scanner in <xref
        linkend="scanners-kernel-usb"/>:</para>

      <screen>&prompt.root; <userinput>scanimage -L</userinput>
device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner</screen>

      <para>Diese Ausgabe stammt von einem &os;&nbsp;8.X System, die Zeile
        <literal>'epson2:libusb:/dev/usb:/dev/ugen0.2'</literal> nennt das
        Backend (<literal>epson2</literal>) und die Gerätedatei
        (<literal>/dev/ugen0.2</literal>), die der Scanner verwendet.</para>

      <note>
        <para>Erscheint die Meldung, dass kein Scanner gefunden
	  wurde oder wird gar keine Ausgabe erzeugt, konnte
	  &man.scanimage.1; keinen Scanner erkennen.  In diesem
	  Fall müssen Sie in der Konfigurationsdatei des Backends
	  das zu benutzende Gerät eintragen.  Die
	  Konfigurationsdateien der Backends befinden sich
	  im Verzeichnis <filename
	  class="directory">/usr/local/etc/sane.d/</filename>.
	  Erkennungsprobleme treten bei bestimmten USB-Scannern	auf.</para>

      <para>Mit dem USB-Scanner aus <xref linkend="scanners-kernel-usb"/>
	zeigt <command>sane-find-scanner</command> unter &os;&nbsp;8.X die
	folgende Ausgabe:</para>

      <screen>&prompt.root; <userinput>sane-find-scanner -q</userinput>
found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0</screen>

      <para>Der Scanner wurde richtig erkennt, er benutzt eine
	USB-Schnittstelle und verwendet die Gerätedatei
	<filename>/dev/uscanner0</filename>.  Ob der Scanner
	vom Frontend erkannt wird, zeigt das nachstehende
	Kommando:</para>

      <screen>&prompt.root; <userinput>scanimage -L</userinput>

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).</screen>

      <para>Da der Scanner nicht erkannt wurde, muss die Datei
	<filename>/usr/local/etc/sane.d/epson2.conf</filename> editiert
	werden.  Der verwendete Scanner war ein
	&epson.perfection;&nbsp;1650, daher wird das
	<literal>epson2</literal>-Backend benutzt.  Lesen Sie
	bitte alle Kommentare in der Konfigurationsdatei des
	Backends.  Die durchzuführenden Änderungen
	sind einfach.  Kommentieren Sie zunächst alle
	Zeilen mit der falschen Schnittstelle aus.  Da der
	Scanner eine USB-Schnittstelle besitzt, wurden im
	Beispiel alle Zeilen, die mit <literal>scsi</literal>
	anfingen, auskommentiert.  Fügen Sie dann die
	Schnittstelle und den Gerätenamen am Ende der
	Datei ein.  In diesem Beispiel wurde die nachstehende
	Zeile eingefügt:</para>

      <programlisting>usb /dev/uscanner0</programlisting>

      <para>Weitere Hinweise entnehmen Sie bitte der Hilfeseite
	des Backends.  Jetzt können Sie prüfen,
	ob der Scanner richtig erkannt wird:</para>

      <screen>&prompt.root; <userinput>scanimage -L</userinput>
device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner</screen>

      <para>Der Scanner wurde nun erkannt.  Es ist nicht wichtig,
	ob der Hersteller oder das Modell Ihres Scanners korrekt
	angezeigt werden.   Wichtig ist nur die Ausgabe
	<literal>`epson:/dev/uscanner0'</literal>,
	die das richtige Backend und den richtigen Gerätenamen
	anzeigt.</para>
      </note>

      <para>Wenn <command>scanimage -L</command> den Scanner erkannt
	hat, ist der Scanner eingerichtet und bereit, zu
	scannen.</para>

      <para>Obwohl wir mit &man.scanimage.1; von der Kommandozeile
	scannen können, ist eine graphische Anwendung
	zum Scannen besser geeignet.  <application>SANE</application>
	bietet ein einfaches und effizientes Werkzeug:
	<application>xscanimage</application> (<filename
	  role="package">graphics/sane-frontends</filename>).</para>

      <para><application>Xsane</application>
	(<filename role="package">graphics/xsane</filename>)
	ist eine weitere beliebte graphische Anwendung.
	Dieses Frontend besitzt erweiterte Funktionen
	wie den Scan-Modus (beispielsweise Photo, Fax),
	eine Farbkorrektur und Batch-Scans.  Beide Anwendungen
	lassen sich als
	<application>GIMP</application>-Plugin verwenden.</para>
    </sect2>

    <sect2>
      <title>Den Scanner für Benutzerkonten freigeben</title>

      <para>Zuvor wurden alle Tätigkeiten mit
        <username>root</username>-Rechten ausgeführt.
	Wenn andere Benutzer den Scanner benutzen sollen,
	müssen sie Lese- und Schreibrechte auf die
	Gerätedatei des Scanners besitzen.  Im
	Beispiel wird die Datei <filename>/dev/ugen0.2</filename>
	verwendet, die faktisch nur ein Symlink auf die echte Gerätedatei,
	<filename>/dev/usb/0.2.0</filename> genannt, darstellt (ein kurzer
	Blick auf das <filename class="directory">/dev</filename>-Verzeichnis
	bestätigt dies).  Sowohl der Symlink als auch die
	Gerätedatei sind jeweils im Besitz der Gruppen
	<groupname>wheel</groupname> und <groupname>operator</groupname>.
	Damit der Benutzer <username><replaceable>joe</replaceable></username>
	auf den Scanner zugreifen kann, muss das Konto in
	die Gruppe <groupname>operator</groupname> aufgenommen
	werden. Allerdings sollten Sie, aus Sicherheitsgründen, genau
	überlegen, welche Benutzer Sie zu welcher Gruppe hinzufügen,
	besonders bei der Gruppe <groupname>wheel</groupname>.  Eine bessere
	Lösung ist es, eine spezielle Gruppe für den Zugriff auf
	USB-Geräte anzulegen und den Scanner für Mitglieder dieser
	Gruppe zugänglich zu machen.</para>

      <para>Beispielsweise kann man eine
        <groupname><replaceable>usb</replaceable></groupname>-Gruppe
        verwenden.  Der erste Schritt dazu ist das erstellen der Gruppe mit
        Hilfe des &man.pw.8;-Kommandos:</para>

      <screen>&prompt.root; <userinput>pw groupadd usb</userinput></screen>

      <para>Anschliessend muss der <filename>/dev/ugen0.2</filename>-Symlink
        und der Gerätename <filename>/dev/usb/0.2.0</filename> für
        die <groupname>usb</groupname>-Gruppe mit den richtigen
        Schreibrechten (<literal>0660</literal> oder <literal>0664</literal>)
        ausgestattet werden, denn standardmässig kann nur der Besitzer
        dieser Dateien (<username>root</username>) darauf schreiben.  All
        dies kann durch das Hinzufügen der folgenden Zeile in die
        <filename>/etc/devfs.rules</filename>-Datei erreicht werden:</para>

      <programlisting>[system=5]
add path ugen0.2 mode 0660 group usb
add path usb/0.2.0 mode 0660 group usb</programlisting>

      <para>&os;&nbsp;7.X-Anwender benötigen unter Umständen die
        folgenden Zeilen mit der korrekten Gerätedatei
        <filename>/dev/uscanner0</filename>:</para>

      <programlisting>[system=5]
add path uscanner0 mode 660 group usb</programlisting>

      <para>In die Datei <filename>/etc/rc.conf</filename>
	fügen Sie noch die folgende Zeile ein:</para>

      <programlisting>devfs_system_ruleset="system"</programlisting>

      <para>Starten Sie anschließend Ihr System neu.</para>

      <para>Weitere Informationen finden Sie in &man.devfs.8;.</para>

      <para>Jetzt braucht man nur noch Benutzer der Gruppe
        <groupname><replaceable>usb</replaceable></groupname> hinzufügen,
        um ihnen Zugriff auf den Scanner zu erlauben:</para>

      <screen>&prompt.root;<userinput>pw groupmod usb -m <replaceable>joe</replaceable></userinput></screen>

      <para>Weitere Details können Sie in der &man.pw.8;-Manualpage
        nachlesen.</para>
    </sect2>
  </sect1>
</chapter>