Unterschiede zwischen den Revisionen 1 und 3 (über 2 Versionen hinweg)
Revision 1 vom 2007-04-22 16:11:22
Größe: 10224
Kommentar:
Revision 3 vom 2007-04-22 16:25:02
Größe: 9776
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
<h1>
  Fernsehen mit einer TV Karte
</h1>
= Fernsehen mit einer TV Karte =
== Inhalt ==
 * [#ware Benutze Hard- und Software]
 * [#kernel Die Konfiguration des Kernels]
 * [#laden Das Laden der Kernel Module]
 * [#progs Die Programme und XFree86]
 * [#radio Radio]
 * [#videotext VideoText]
 * [#links Links]
 * [#hinweise Hinweise]
Zeile 5: Zeile 12:
<h2> Inhalt </h2> == Benutze Hard- und Software ==
Zeile 7: Zeile 15:
  <li> <a href="#ware">Benutze Hard- und Software</a></li>
  <li> <a href="#kernel">Die Konfiguration des Kernels</a></li>
  <li> <a href="#laden">Das Laden der Kernel Module</a></li>
  <li> <a href="#progs">Die Programme und XFree86</a></li>
  <li> <a href="#radio">Radio</a></li>
  <li> <a href="#videotext">VideoText</a></li>
  <li> <a href="#links">Links</a></li>
  <li> <a href="#hinweise">Hinweise</a></li>

 . <li>Computer auf Basis von ia32 (Pentium III) mit PCI Bus</li> <li>Hauppage WinTV/Radio (neues Modell mit Fernbedienung auf Basis
  . des bt878 Chips)</li>
 <li>Distribution: Debian unstable (sid, 28. März 2001)</li> <li>Kernel 2.4.2-ac26</li> <li>XFree86 4.0.2</li> <li>xawtv 3.40</li>
</ul> <p>

 . Diese Auswahl von Software spiegelt den aktuellen Stand am Zeitpunkt
 der Erstellung wieder. So ähnlich funktionierte dies auch mit der Kernel Serie 2.2.x, XFree86 3.3.x und Debian 2.2r0 ("potato").
</p>

<a name="kernel"></a> <h2> Die Konfiguration des Kernels </h2> <p>

 . Wer bisher noch nie einen Kernel kompiliert hat, der sollte sich an geeingneter Stelle zuerst Informationen einholen. Im Normalfalle sind die bei den Distributionen mitgelieferten Kernel auch mit den
 passenden Modulen ausgestattet. Wer diese einsetzen möchte, kann direkt zum nächsten Thema <a href="#laden">Das Laden der Kernel Module</a> springen.
<p>

 . Im Untermenü <strong>Character devices/I2C support</strong> muß folgendes aktiviert sein, da der BTTV Treiber diese benötigt (Bei den Kerneln der Reihe 2.2 ist diese Option nicht vorhanden und wird auch nicht benötigt).
</p> <tt> <M> I2C support<br> <M> I2C bit-banging interfaces<br> </tt> <p>

 . Nun kann im Untermenü <strong>Multimedia devices/Video For Linux</strong> der BTTV Treiber aktiviert werden:
</p> <tt><M> BT848 Video For Linux</tt> <p>

 . Damit man nicht ohne Ton fernsehen muß muß nun auch noch unter "Sound" folgendes aktiviert sein:
</p> <tt> <M> Sound card support<br> [...]<br> <M> TV card (bt848) mixer support<br> </tt> <p>

 . Der Kernel und die Module werden auf dem üblichen Wege installiert.
</p>

<a name="laden"></a> <h2>Das Laden der Kernel Module</h2> <p>

 . In einigen Fällen kann durch einfaches Laden des BTTV Moduls schon durch automatische Konfiguration erfolgreich zur Mitarbeit überredet werden. Leider nicht so in meinem Fall.
</p> <tt> marvin:~# insmod bttv<br> Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br> bttv: driver version 0.7.57 loaded<br> bttv: using 2 buffers with 2080k (4160k total) for capture<br> bttv: Host bridge needs ETBF enabled.<br> bttv: Bt8xx card found (0).<br> bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br> bttv0: subsystem: 0070:13ab (UNKNOWN)<br> bttv0: model: BT878( *** UNKNOWN *** ) [autodetected]<br> bttv0: enabling 430FX/VP3 compatibilty<br> tuner: chip found @ 0x61<br> bttv0: i2c attach [(unset)]<br> i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br> i2c-core.o: adapter bt848 #0 registered as adapter 0.<br> bttv0: i2c: checking for MSP34xx @ 0x80... not found<br> bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br> bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br> </tt> <p>

 . Will der Treiber wie in meinem Fall die Karte nicht automatisch
 erkennen, dann steht nun die Lektüre von <strong>Documentation/video4linux/bttv/CARDLIST</strong> der Kernel Dokumentation an und suchen nun dort eine Karte, die der benutzten möglichst gleicht. In meinem Falle exisitiert der Eintrag <strong>card=10 - Hauppauge new (bt878)</strong>. Benutze ich diesen, dann sieht das Ergebnis schon besser aus (vor dem Laden, muß das schon geladene Modul erst mittels <em> rmmod bttv </em> entfernt werden):
</p> <tt> marvin:~# insmod bttv card=10<br> Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br> bttv: driver version 0.7.57 loaded<br> bttv: using 2 buffers with 2080k (4160k total) for capture<br> bttv: Host bridge needs ETBF enabled.<br> bttv: Bt8xx card found (0).<br> bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br> bttv0: subsystem: 0070:13ab (UNKNOWN)<br> bttv0: model: BT878(Hauppauge new (bt878)) [insmod option]<br> bttv0: enabling 430FX/VP3 compatibilty<br> bttv0: Hauppauge msp34xx: reset line init<br> tuner: chip found @ 0x61<br> bttv0: i2c attach [(unset)]<br> i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br> msp34xx: init: chip=MSP3415D-B3, has NICAM support<br> msp3410: daemon started<br> bttv0: i2c attach [MSP3415D-B3]<br> i2c-core.o: client [MSP3415D-B3] registered to adapter [bt848 #0](pos. 1).<br> i2c-core.o: adapter bt848 #0 registered as adapter 0.<br> bttv0: Hauppauge eeprom: model=61344, tuner=Philips FM1216 (5), radio=yes<br> bttv0: i2c: checking for MSP34xx @ 0x80... found<br> bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br> bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br> </tt> <p>

 . Nun werden direkt die passenden Untermodule mit den passenden Optionen
 geladen: tuner und msp34xx. Ein <em> lsmod </em> sollte nun so aussehen:
</p> <tt> marvin:~# lsmod<br> Module Size Used by<br> bttv 52880 0 (unused)<br> tvaudio 8000 0 (autoclean) (unused)<br> msp3400 13392 1 (autoclean)<br> tuner 3984 1 (autoclean)<br> i2c-algo-bit 7040 1 [bttv]<br> i2c-core 12176 0 [bttv tvaudio msp3400 tuner i2c-algo-bit]<br> videodev 4736 3 [bttv]<br> </tt> <p>

 . Sollte wiedererwarten die TV-Karte nicht so leicht zum laufen zu bewegen zu sein, dann kann ich nur empfehlen die Dokumentation unter
 <strong>Documentation/video4linux/bttv/</strong> zu lesen und mit den Optionen <em>tuner=</em>, <em>card=</em> und <em>pll=</em> herum zu spielen.
</p>

<a name="progs"></a> <h2> Die Programme und XFree86</h2> <p>

 . Zum Test empfehle ich das Programm <a href="http://www.strusel007.de/linux/xawtv/">xawtv</a> - dieses wird vom Mitauthor des BTTV Kernel Treibers gepflegt, sollte also in jedem Fall funktionieren. Der Author <a href="[mailto:kraxel@strusel007.de"> mailto:kraxel@strusel007.de">] Gerd Knorr</a> pflegt auch das Debian Packet.
</p> <p>

 . Benutzer von XFree86 in der Version 3.3.x, sollten nun direkt
 fernsehen können. Benutzer von XFree86 4.0.x müssen darauf achten, daß das (XFree86) Modul "v4l" geladen wird. Dazu muß folgendes in der XF86Config (zu finden unter /etc, /etc/X11 oder als /etc/X11/XF86Config-4 - je nach Distribution) stehen:
</p> <tt> Section "Module"<br> [...]<br>

 . Load "v4l"<br>
[...]<br> EndSection<br> </tt> <p>

 . Dies ist allerdings nicht nötig, wenn der sogenannte Overlay Modus nicht benutzt werden soll. Dieser ist aber sehr zu empfehlen. In diesem Modus kopiert die TV-Karte aus eigener Kraft das TV-Bild in den Speicher der Grafikkarte. Dadurch wird nur der PCI Bus belastet und der Prozessor hat keine Arbeit zu leisten, außer gelegentlich die aktuellen Fensterdaten zu aktualisieren.
</p> <p> Bei <em>xawtv</em> können mittels der Hoch und Runter Tasten

 . zwischen den Kanälen umschalten. Mit der Taste "E" kann der "Channel Editor" zum dauerhaften Abspeichern der einzelnen Kanäle benutzt werden.
</p>

<a name="radio"></a> <h2> Radio </h2> <p>

 . Wer Radio mit seiner TV Karte hören möchte der muß dem Treiber den Parameter "radio=1" übergeben, wenn dies nicht schon automatisch passiert. Mit den Programmen <em>radio</em> (aus dem xawtv Packet) und <em>gradio</em> sollte nun problemlos durch die Radioprogramme schaltbar sein.
</p>

<a name="videotext"></a> <h2> VideoText </h2> <p>

 . Mit dem Programm <a href="http://user.exit.de/froese">alevt</a> kann bequem durch den VideoText des jeweilig eingeschalteten Senders geschaut werden.
</p>

<a name="links"></a> <h2> Links </h2> <ul>

 . <li> <a href="http://user.exit.de/froese">alevt</a> - Dies ist ein sehr
  . guter VideoText Betrachter. (leider zum Zeitpunkt des Schreibens nicht erreichbar)</li>
 <li> <a href="http://www.linuxdoc.org/HOWTO/mini/BTTV-Mini-HOWTO-0.3.html">
  . BTTV Mini-HOWTO</a> - Ein englisches HowTo (Wie zu tun...)</li>
 <li> <a href="http://www.linuxvideo.org/gatos/">Gatos</a> - Das Gatos
  . Projekt versucht Treiber für ATIs All-In-Wonder zu erstellen.</li>
 <li> <a href="http://www-unix.ecs.umass.edu/~mcrichto/gvision.html">Gnomovision</a>
  . - Ein Projekt, um ein Programm zum Fernsehen unter
  <a href="http://www.gnome.org">GNOME</a> zu entwickeln. Leider noch nicht fertig.</li>
 <li> <a href="http://www.mathematik.uni-kl.de/~wenk/kwintv/">kwintv</a>
  . - Ein <a href="http://www.kde.org">KDE</a> Programm zum Fernsehen.</li>
 <li> <a href="http://home.arcor-online.de/holger.klemm/DE-Video-TV-HOWTO/DE-Video-TV-HOWTO.html">Video TV HowTo</a> -
  . ein deutsches HowTo (Wie zu tun...)</li>
 <li> <a href="http://www.student.uwa.edu.au/~wliang/">WMtv</a> - Ein
  . <a href="http://www.windowmaker.org/">Window Maker</a> Dockapp, welches ein TV Bild bietet.</li>
 <li> <a href="http://www.strusel007.de/linux/xawtv/">XawTV</a> - Das
  . Programm. Da es vom BTTV Entwickler entwickelt wird. sollte
  dieses Programm zur Überprüfung einer TV Karte benutzt werden.</li>
Zeile 17: Zeile 110:
<a name="ware"></a>
<h2> Benutze Hard- und Software </h2>
<ul>
  <li>Computer auf Basis von ia32 (Pentium III) mit PCI Bus</li>
  <li>Hauppage WinTV/Radio (neues Modell mit Fernbedienung auf Basis
      des bt878 Chips)</li>
  <li>Distribution: Debian unstable (sid, 28. M&auml;rz 2001)</li>
  <li>Kernel 2.4.2-ac26</li>
  <li>XFree86 4.0.2</li>
  <li>xawtv 3.40</li>
</ul>
<p>
  Diese Auswahl von Software spiegelt den aktuellen Stand am Zeitpunkt
  der Erstellung wieder. So &auml;hnlich funktionierte dies auch
  mit der Kernel Serie 2.2.x, XFree86 3.3.x und Debian 2.2r0
  (&quot;potato&quot;).
</p>
<a name="hinweise"></a> <h2> Hinweise </h2> <p>
Zeile 35: Zeile 112:
<a name="kernel"></a>
<h2> Die Konfiguration des Kernels </h2>
<p>
  Wer bisher noch nie einen Kernel kompiliert hat, der sollte sich an
  geeingneter Stelle zuerst Informationen einholen. Im Normalfalle sind
  die bei den Distributionen mitgelieferten Kernel auch mit den
  passenden Modulen ausgestattet. Wer diese einsetzen m&ouml;chte,
  kann direkt zum n&auml;chsten Thema <a href="#laden">Das Laden der
  Kernel Module</a> springen.
<p>
  Im Untermen&uuml; <strong>Character devices/I2C support</strong> mu&szlig;
  folgendes aktiviert sein, da der BTTV Treiber diese ben&ouml;tigt
  (Bei den Kerneln der Reihe 2.2 ist diese Option nicht vorhanden und
  wird auch nicht ben&ouml;tigt).
</p>
<tt>
&lt;M&gt; I2C support<br>
&lt;M&gt; I2C bit-banging interfaces<br>
</tt>
<p>
  Nun kann im Untermen&uuml; <strong>Multimedia devices/Video For
  Linux</strong> der BTTV Treiber aktiviert werden:
</p>
<tt>&lt;M&gt; BT848 Video For Linux</tt>
<p>
  Damit man nicht ohne Ton fernsehen mu&szlig; mu&szlig; nun auch noch
  unter &quot;Sound&quot; folgendes aktiviert sein:
</p>
<tt>
&lt;M&gt; Sound card support<br>
[...]<br>
&lt;M&gt; TV card (bt848) mixer support<br>
</tt>
<p>
  Der Kernel und die Module werden auf dem &uuml;blichen Wege installiert.
</p>
 . Der Author ist <a href="http://www.parkautomat.net">Alain Schröder</a>. Hinweise, Ergänzungen, etc sind immer willkommen. Einfach per <a href="[mailto:alain@mini.gt.owl.de">eMail mailto:alain@mini.gt.owl.de">eMail]</a>. Der Author übernimmt keinerlei Haftung!
</p> <p>
Zeile 72: Zeile 115:
<a name="laden"></a>
<h2>Das Laden der Kernel Module</h2>
<p>
  In einigen F&auml;llen kann durch einfaches Laden des BTTV Moduls
  schon durch automatische Konfiguration erfolgreich zur Mitarbeit
  &uuml;berredet werden. Leider nicht so in meinem Fall.
</p>
<tt>
marvin:~# insmod bttv<br>
Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br>
bttv: driver version 0.7.57 loaded<br>
bttv: using 2 buffers with 2080k (4160k total) for capture<br>
bttv: Host bridge needs ETBF enabled.<br>
bttv: Bt8xx card found (0).<br>
bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br>
bttv0: subsystem: 0070:13ab (UNKNOWN)<br>
bttv0: model: BT878( *** UNKNOWN *** ) [autodetected]<br>
bttv0: enabling 430FX/VP3 compatibilty<br>
tuner: chip found @ 0x61<br>
bttv0: i2c attach [(unset)]<br>
i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br>
i2c-core.o: adapter bt848 #0 registered as adapter 0.<br>
bttv0: i2c: checking for MSP34xx @ 0x80... not found<br>
bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br>
bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br>
</tt>
<p>
  Will der Treiber wie in meinem Fall die Karte nicht automatisch
  erkennen, dann steht nun die Lekt&uuml;re von
  <strong>Documentation/video4linux/bttv/CARDLIST</strong> der Kernel
  Dokumentation an und suchen nun
  dort eine Karte, die der benutzten m&ouml;glichst gleicht. In meinem
  Falle exisitiert der Eintrag <strong>card=10 - Hauppauge new
  (bt878)</strong>. Benutze ich diesen, dann sieht das Ergebnis schon
  besser aus (vor dem Laden, mu&szlig; das schon geladene Modul erst
  mittels <em> rmmod bttv </em> entfernt werden):
</p>
<tt>
marvin:~# insmod bttv card=10<br>
Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br>
bttv: driver version 0.7.57 loaded<br>
bttv: using 2 buffers with 2080k (4160k total) for capture<br>
bttv: Host bridge needs ETBF enabled.<br>
bttv: Bt8xx card found (0).<br>
bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br>
bttv0: subsystem: 0070:13ab (UNKNOWN)<br>
bttv0: model: BT878(Hauppauge new (bt878)) [insmod option]<br>
bttv0: enabling 430FX/VP3 compatibilty<br>
bttv0: Hauppauge msp34xx: reset line init<br>
tuner: chip found @ 0x61<br>
bttv0: i2c attach [(unset)]<br>
i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br>
msp34xx: init: chip=MSP3415D-B3, has NICAM support<br>
msp3410: daemon started<br>
bttv0: i2c attach [MSP3415D-B3]<br>
i2c-core.o: client [MSP3415D-B3] registered to adapter [bt848 #0](pos. 1).<br>
i2c-core.o: adapter bt848 #0 registered as adapter 0.<br>
bttv0: Hauppauge eeprom: model=61344, tuner=Philips FM1216 (5), radio=yes<br>
bttv0: i2c: checking for MSP34xx @ 0x80... found<br>
bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br>
bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br>
</tt>
<p>
  Nun werden direkt die passenden Untermodule mit den passenden Optionen
  geladen: tuner und msp34xx. Ein <em> lsmod </em> sollte nun so
  aussehen:
</p>
<tt>
marvin:~# lsmod<br>
Module Size Used by<br>
bttv 52880 0 (unused)<br>
tvaudio 8000 0 (autoclean) (unused)<br>
msp3400 13392 1 (autoclean)<br>
tuner 3984 1 (autoclean)<br>
i2c-algo-bit 7040 1 [bttv]<br>
i2c-core 12176 0 [bttv tvaudio msp3400 tuner i2c-algo-bit]<br>
videodev 4736 3 [bttv]<br>
</tt>
<p>
  Sollte wiedererwarten die TV-Karte nicht so leicht zum laufen zu
  bewegen zu sein, dann kann ich nur empfehlen die Dokumentation unter
  <strong>Documentation/video4linux/bttv/</strong> zu lesen und mit den
  Optionen <em>tuner=</em>, <em>card=</em> und <em>pll=</em> herum zu
  spielen.
</p>
 . Dieses Dokument unterliegt der
 <a href="http://opencontent.org/opl.shtml">OPL</a>.
</p> <p><center>
Zeile 158: Zeile 119:
<a name="progs"></a>
<h2> Die Programme und XFree86</h2>
<p>
  Zum Test empfehle ich das Programm <a
  href="http://www.strusel007.de/linux/xawtv/">xawtv</a> - dieses wird
  vom Mitauthor des BTTV Kernel Treibers gepflegt, sollte also in jedem
  Fall funktionieren. Der Author <a href="mailto:kraxel@strusel007.de">
  Gerd Knorr</a> pflegt auch das Debian Packet.
</p>
<p>
  Benutzer von XFree86 in der Version 3.3.x, sollten nun direkt
  fernsehen k&ouml;nnen. Benutzer von XFree86 4.0.x m&uuml;ssen darauf
  achten, da&szlig; das (XFree86) Modul &quot;v4l&quot; geladen wird.
  Dazu mu&szlig; folgendes in der XF86Config (zu finden unter /etc,
  /etc/X11 oder als /etc/X11/XF86Config-4 - je nach Distribution)
  stehen:
</p>
<tt>
Section &quot;Module&quot;<br>
[...]<br>
  Load &quot;v4l&quot;<br>
[...]<br>
EndSection<br>
</tt>
<p>
  Dies ist allerdings nicht n&ouml;tig, wenn der sogenannte Overlay
  Modus nicht benutzt werden soll. Dieser ist aber sehr zu empfehlen. In
  diesem Modus kopiert die TV-Karte aus eigener Kraft das TV-Bild in den
  Speicher der Grafikkarte. Dadurch wird nur der PCI Bus belastet und
  der Prozessor hat keine Arbeit zu leisten, au&szlig;er gelegentlich
  die aktuellen Fensterdaten zu aktualisieren.
</p>
<p> Bei <em>xawtv</em> k&ouml;nnen mittels der Hoch und Runter Tasten
  zwischen den Kan&auml;len umschalten. Mit der Taste &quot;E&quot; kann
  der &quot;Channel Editor&quot; zum dauerhaften Abspeichern der
  einzelnen Kan&auml;le benutzt werden.
</p>

<a name="radio"></a>
<h2> Radio </h2>
<p>
  Wer Radio mit seiner TV Karte h&ouml;ren m&ouml;chte der mu&szlig; dem
  Treiber den Parameter &quot;radio=1&quot; &uuml;bergeben, wenn dies
  nicht schon automatisch passiert. Mit den Programmen <em>radio</em>
  (aus dem xawtv Packet) und <em>gradio</em> sollte nun problemlos durch
  die Radioprogramme schaltbar sein.
</p>

<a name="videotext"></a>
<h2> VideoText </h2>
<p>
  Mit dem Programm <a href="http://user.exit.de/froese">alevt</a> kann bequem durch den VideoText des
  jeweilig eingeschalteten Senders geschaut werden.
</p>

<a name="links"></a>
<h2> Links </h2>
<ul>
  <li> <a href="http://user.exit.de/froese">alevt</a> - Dies ist ein sehr
       guter VideoText Betrachter. (leider zum Zeitpunkt des Schreibens
       nicht erreichbar)</li>
  <li> <a href="http://www.linuxdoc.org/HOWTO/mini/BTTV-Mini-HOWTO-0.3.html">
       BTTV Mini-HOWTO</a> - Ein englisches HowTo (Wie zu tun...)</li>
  <li> <a href="http://www.linuxvideo.org/gatos/">Gatos</a> - Das Gatos
       Projekt versucht Treiber f&uuml;r ATIs All-In-Wonder zu
       erstellen.</li>
  <li> <a href="http://www-unix.ecs.umass.edu/~mcrichto/gvision.html">Gnomovision</a>
       - Ein Projekt, um ein Programm zum Fernsehen unter
       <a href="http://www.gnome.org">GNOME</a> zu entwickeln. Leider
       noch nicht fertig.</li>
  <li> <a href="http://www.mathematik.uni-kl.de/~wenk/kwintv/">kwintv</a>
       - Ein <a href="http://www.kde.org">KDE</a> Programm zum
       Fernsehen.</li>
  <li> <a href="http://home.arcor-online.de/holger.klemm/DE-Video-TV-HOWTO/DE-Video-TV-HOWTO.html">Video TV HowTo</a> -
       ein deutsches HowTo (Wie zu tun...)</li>
  <li> <a href="http://www.student.uwa.edu.au/~wliang/">WMtv</a> - Ein
       <a href="http://www.windowmaker.org/">Window Maker</a> Dockapp,
       welches ein TV Bild bietet.</li>
  <li> <a href="http://www.strusel007.de/linux/xawtv/">XawTV</a> - Das
       Programm. Da es vom BTTV Entwickler entwickelt wird. sollte
       dieses Programm zur &Uuml;berpr&uuml;fung einer TV Karte benutzt
       werden.</li>
</ul>

<a name="hinweise"></a>
<h2> Hinweise </h2>
<p>
  Der Author ist <a href="http://www.parkautomat.net">Alain
  Schr&ouml;der</a>. Hinweise, Erg&auml;nzungen, etc sind immer
  willkommen. Einfach per <a
  href="mailto:alain@mini.gt.owl.de">eMail</a>.
  Der Author &uuml;bernimmt keinerlei Haftung!
</p>
<p>
  Dieses Dokument unterliegt der
  <a href="http://opencontent.org/opl.shtml">OPL</a>.
</p>
<p><center>
  Zuletzt bearbeitet am: Mon, 9 Apr 2001 15:24:31 +0200
 . Zuletzt bearbeitet am: Mon, 9 Apr 2001 15:24:31 +0200

Fernsehen mit einer TV Karte

Inhalt

  • [#ware Benutze Hard- und Software]
  • [#kernel Die Konfiguration des Kernels]
  • [#laden Das Laden der Kernel Module]
  • [#progs Die Programme und XFree86]
  • [#radio Radio]
  • [#videotext VideoText]

  • [#links Links]
  • [#hinweise Hinweise]

Benutze Hard- und Software

<ul>

  • <li>Computer auf Basis von ia32 (Pentium III) mit PCI Bus</li> <li>Hauppage WinTV/Radio (neues Modell mit Fernbedienung auf Basis

    • des bt878 Chips)</li>

    <li>Distribution: Debian unstable (sid, 28. März 2001)</li> <li>Kernel 2.4.2-ac26</li> <li>XFree86 4.0.2</li> <li>xawtv 3.40</li>

</ul> <p>

  • Diese Auswahl von Software spiegelt den aktuellen Stand am Zeitpunkt der Erstellung wieder. So ähnlich funktionierte dies auch mit der Kernel Serie 2.2.x, XFree86 3.3.x und Debian 2.2r0 ("potato").

</p>

<a name="kernel"></a> <h2> Die Konfiguration des Kernels </h2> <p>

  • Wer bisher noch nie einen Kernel kompiliert hat, der sollte sich an geeingneter Stelle zuerst Informationen einholen. Im Normalfalle sind die bei den Distributionen mitgelieferten Kernel auch mit den

    passenden Modulen ausgestattet. Wer diese einsetzen möchte, kann direkt zum nächsten Thema <a href="#laden">Das Laden der Kernel Module</a> springen.

<p>

  • Im Untermenü <strong>Character devices/I2C support</strong> muß folgendes aktiviert sein, da der BTTV Treiber diese benötigt (Bei den Kerneln der Reihe 2.2 ist diese Option nicht vorhanden und wird auch nicht benötigt).

</p> <tt> <M> I2C support<br> <M> I2C bit-banging interfaces<br> </tt> <p>

  • Nun kann im Untermenü <strong>Multimedia devices/Video For Linux</strong> der BTTV Treiber aktiviert werden:

</p> <tt><M> BT848 Video For Linux</tt> <p>

  • Damit man nicht ohne Ton fernsehen muß muß nun auch noch unter "Sound" folgendes aktiviert sein:

</p> <tt> <M> Sound card support<br> [...]<br> <M> TV card (bt848) mixer support<br> </tt> <p>

  • Der Kernel und die Module werden auf dem üblichen Wege installiert.

</p>

<a name="laden"></a> <h2>Das Laden der Kernel Module</h2> <p>

  • In einigen Fällen kann durch einfaches Laden des BTTV Moduls schon durch automatische Konfiguration erfolgreich zur Mitarbeit überredet werden. Leider nicht so in meinem Fall.

</p> <tt> marvin:~# insmod bttv<br> Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br> bttv: driver version 0.7.57 loaded<br> bttv: using 2 buffers with 2080k (4160k total) for capture<br> bttv: Host bridge needs ETBF enabled.<br> bttv: Bt8xx card found (0).<br> bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br> bttv0: subsystem: 0070:13ab (UNKNOWN)<br> bttv0: model: BT878( *** UNKNOWN *** ) [autodetected]<br> bttv0: enabling 430FX/VP3 compatibilty<br> tuner: chip found @ 0x61<br> bttv0: i2c attach [(unset)]<br> i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br> i2c-core.o: adapter bt848 #0 registered as adapter 0.<br> bttv0: i2c: checking for MSP34xx @ 0x80... not found<br> bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br> bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br> </tt> <p>

  • Will der Treiber wie in meinem Fall die Karte nicht automatisch

    erkennen, dann steht nun die Lektüre von <strong>Documentation/video4linux/bttv/CARDLIST</strong> der Kernel Dokumentation an und suchen nun dort eine Karte, die der benutzten möglichst gleicht. In meinem Falle exisitiert der Eintrag <strong>card=10 - Hauppauge new (bt878)</strong>. Benutze ich diesen, dann sieht das Ergebnis schon besser aus (vor dem Laden, muß das schon geladene Modul erst mittels <em> rmmod bttv </em> entfernt werden):

</p> <tt> marvin:~# insmod bttv card=10<br> Using /lib/modules/2.4.2-ac26/kernel/drivers/media/video/bttv.o<br> bttv: driver version 0.7.57 loaded<br> bttv: using 2 buffers with 2080k (4160k total) for capture<br> bttv: Host bridge needs ETBF enabled.<br> bttv: Bt8xx card found (0).<br> bttv0: Bt878 (rev 17) at 00:12.0, irq: 18, latency: 64, memory: 0xfd5fe000<br> bttv0: subsystem: 0070:13ab (UNKNOWN)<br> bttv0: model: BT878(Hauppauge new (bt878)) [insmod option]<br> bttv0: enabling 430FX/VP3 compatibilty<br> bttv0: Hauppauge msp34xx: reset line init<br> tuner: chip found @ 0x61<br> bttv0: i2c attach [(unset)]<br> i2c-core.o: client [(unset)] registered to adapter [bt848 #0](pos. 0).<br> msp34xx: init: chip=MSP3415D-B3, has NICAM support<br> msp3410: daemon started<br> bttv0: i2c attach [MSP3415D-B3]<br> i2c-core.o: client [MSP3415D-B3] registered to adapter [bt848 #0](pos. 1).<br> i2c-core.o: adapter bt848 #0 registered as adapter 0.<br> bttv0: Hauppauge eeprom: model=61344, tuner=Philips FM1216 (5), radio=yes<br> bttv0: i2c: checking for MSP34xx @ 0x80... found<br> bttv0: i2c: checking for TDA9875 @ 0xb0... not found<br> bttv0: i2c: checking for TDA7432 @ 0x8a... not found<br> </tt> <p>

  • Nun werden direkt die passenden Untermodule mit den passenden Optionen

    geladen: tuner und msp34xx. Ein <em> lsmod </em> sollte nun so aussehen:

</p> <tt> marvin:~# lsmod<br> Module Size Used by<br> bttv 52880 0 (unused)<br> tvaudio 8000 0 (autoclean) (unused)<br> msp3400 13392 1 (autoclean)<br> tuner 3984 1 (autoclean)<br> i2c-algo-bit 7040 1 [bttv]<br> i2c-core 12176 0 [bttv tvaudio msp3400 tuner i2c-algo-bit]<br> videodev 4736 3 [bttv]<br> </tt> <p>

  • Sollte wiedererwarten die TV-Karte nicht so leicht zum laufen zu bewegen zu sein, dann kann ich nur empfehlen die Dokumentation unter

    <strong>Documentation/video4linux/bttv/</strong> zu lesen und mit den Optionen <em>tuner=</em>, <em>card=</em> und <em>pll=</em> herum zu spielen.

</p>

<a name="progs"></a> <h2> Die Programme und XFree86</h2> <p>

</p> <p>

  • Benutzer von XFree86 in der Version 3.3.x, sollten nun direkt fernsehen können. Benutzer von XFree86 4.0.x müssen darauf achten, daß das (XFree86) Modul "v4l" geladen wird. Dazu muß folgendes in der XF86Config (zu finden unter /etc, /etc/X11 oder als /etc/X11/XF86Config-4 - je nach Distribution) stehen:

</p> <tt> Section "Module"<br> [...]<br>

  • Load "v4l"<br>

[...]<br> EndSection<br> </tt> <p>

  • Dies ist allerdings nicht nötig, wenn der sogenannte Overlay Modus nicht benutzt werden soll. Dieser ist aber sehr zu empfehlen. In diesem Modus kopiert die TV-Karte aus eigener Kraft das TV-Bild in den Speicher der Grafikkarte. Dadurch wird nur der PCI Bus belastet und der Prozessor hat keine Arbeit zu leisten, außer gelegentlich die aktuellen Fensterdaten zu aktualisieren.

</p> <p> Bei <em>xawtv</em> können mittels der Hoch und Runter Tasten

  • zwischen den Kanälen umschalten. Mit der Taste "E" kann der "Channel Editor" zum dauerhaften Abspeichern der einzelnen Kanäle benutzt werden.

</p>

<a name="radio"></a> <h2> Radio </h2> <p>

  • Wer Radio mit seiner TV Karte hören möchte der muß dem Treiber den Parameter "radio=1" übergeben, wenn dies nicht schon automatisch passiert. Mit den Programmen <em>radio</em> (aus dem xawtv Packet) und <em>gradio</em> sollte nun problemlos durch die Radioprogramme schaltbar sein.

</p>

<a name="videotext"></a> <h2> VideoText </h2> <p>

</p>

<a name="links"></a> <h2> Links </h2> <ul>

</ul>

<a name="hinweise"></a> <h2> Hinweise </h2> <p>

</p> <p>

</p> <p><center>

  • Zuletzt bearbeitet am: Mon, 9 Apr 2001 15:24:31 +0200

</center></p>

LugOwlWiki: FernsehenMitTvKarte (zuletzt geändert am 2009-03-08 14:45:25 durch localhost)

Impressum Datenschutz