2006-05-09 20:20:09 +00:00
|
|
|
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
2006-06-08 16:20:01 +00:00
|
|
|
|
<!-- in sync with r17322 -->
|
2006-05-09 20:20:09 +00:00
|
|
|
|
<chapter id="tv">
|
|
|
|
|
<title>TV</title>
|
|
|
|
|
|
|
|
|
|
<sect1 id="tv-input" xreflabel="TV input">
|
|
|
|
|
<title>TV-Input</title>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Dieser Abschnitt behandelt das <emphasis role="bold">Anschauen/Grabben von einem
|
|
|
|
|
V4L-kompatiblen TV-Empf<70>nger</emphasis>.
|
|
|
|
|
Siehe man page f<>r eine Beschreibung der TV-Optionen und Tastensteuerungen.
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<sect2 id="tv-compilation">
|
|
|
|
|
<title>Compilierung</title>
|
|
|
|
|
|
|
|
|
|
<procedure>
|
|
|
|
|
<step>
|
|
|
|
|
<para>
|
|
|
|
|
Zuerst musst du neu compilieren. <filename>./configure</filename> wird die Kernelheader
|
|
|
|
|
vom v4l-Kram und die Existenz der <filename>/dev/video*</filename>-Eintr<74>ge
|
|
|
|
|
automatisch erkennen und TV-Unterst<73>tzung wird eingebaut werden
|
|
|
|
|
(siehe Ausgaben von <filename>./configure</filename>).
|
|
|
|
|
</para>
|
|
|
|
|
</step>
|
|
|
|
|
<step>
|
|
|
|
|
<para>
|
|
|
|
|
Stelle sicher, dass dein Empf<70>nger mit anderer TV-Software unter Linux l<>uft, zum
|
|
|
|
|
Beispiel <application>XawTV</application>.
|
|
|
|
|
</para>
|
|
|
|
|
</step>
|
|
|
|
|
</procedure>
|
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
|
|
<sect2 id="tv-tips">
|
|
|
|
|
<title>Tipps zum Gebrauch</title>
|
|
|
|
|
<para>
|
|
|
|
|
Die vollst<73>ndige Liste der Optionen ist in der man page verf<72>gbar.
|
|
|
|
|
Hier sind nur ein paar Tipps:
|
|
|
|
|
</para>
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Benutze die Option <option>channels</option>. Ein Beispiel:
|
|
|
|
|
<screen>-tv channels=26-MTV1,23-TV2</screen>
|
|
|
|
|
Erkl<6B>rung: Durch Benutzung dieser Option sind nur die Kan<61>le 26 und 23 in Gebrauch,
|
|
|
|
|
und es wird beim Kanalwechsel einen netten OSD-Text geben, der den Namen des Kanals
|
|
|
|
|
anzeigt. Leerzeichen im Kanalnamen m<>ssen durch das Zeichen "_" ersetzt werden.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
W<>hle gesunde Bildabmessungen. Die Abmessungen des resultierenden Bildes sollten durch
|
|
|
|
|
16 teilbar sein.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Wenn du das Video bei einer vertikalen Aufl<66>sung h<>her als halb der vollen
|
|
|
|
|
Aufl<66>sung einf<6E>ngst (z.B. 288 f<>r PAL oder 240 f<>r NTSC), dann werden die
|
|
|
|
|
'Frames', die du erh<72>ltst, wirklich jeweils ausgelassene Paare von Feldern sein.
|
|
|
|
|
Je nach dem, was du mit dem Video anf<6E>ngst, kannst du es in dieser Form belassen,
|
|
|
|
|
(zerst<73>rend) deinterlacen oder die Paare zu einzelnen Feldern machen.
|
|
|
|
|
</para>
|
|
|
|
|
<para>
|
|
|
|
|
Ansonsten wirst du einen Film erhalten, der w<>hrend schnellbewegten Szenen gest<73>rt ist,
|
|
|
|
|
und die Bitratenkontrolle wird vermutlich nicht in der Lage sein, die angegebene Bitrate
|
|
|
|
|
einzuhalten, da die Interlacing-Artefakte hohe Details produzieren und daher eine Menge
|
|
|
|
|
Bandbreite kosten. Du kannst Deinterlacing mit <option>-vf pp=DEINT_TYPE</option>
|
|
|
|
|
aktivieren. Normalerweise leistet <option>pp=lb</option> gute Arbeit, aber das ist
|
|
|
|
|
Geschmackssache. Schaue nach anderen Deinterlacing-Algorithmen im Handbuch und versuche
|
|
|
|
|
es mit denen.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Schneide tote Bereiche ab. Wenn du Video aufnimmst, sind die Bereiche an den R<>ndern
|
|
|
|
|
normalerweise schwarz oder enthalten Rauschen. Diese wiederum verbrauchen unn<6E>tige
|
|
|
|
|
Bandbreite. Genauer gesagt sind es nicht die schwarzen Bereiche selbst, sondern
|
|
|
|
|
die scharfen <20>berg<72>nge zwischen dem schwarzen und dem helleren Videobild, die das tun,
|
|
|
|
|
aber das ist f<>r den Moment nicht so wichtig. Bevor du mit der Aufnahme beginnst,
|
|
|
|
|
passe alle Argumente der Option <option>crop</option> an, so dass der ganze M<>ll
|
|
|
|
|
an den R<>ndern abgeschnitten wird. Nochmal, vergiss nicht, die resultierenden
|
|
|
|
|
Abmessungen gesund zu halten.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Achte auf CPU-Load. Es sollte die 90%-Grenze die meiste Zeit <20>ber nicht <20>berschreiten.
|
|
|
|
|
Wenn du einen gro<72>en Aufnahmepuffer hast, kann <application>MEncoder</application>
|
|
|
|
|
eine zu hohe Belastung f<>r ein paar Sekunden <20>berstehen, aber nicht mehr.
|
|
|
|
|
Es ist besser, 3D-OpenGL-Bildschirmschoner und <20>hnlichen Kram abzustellen.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Spiele nicht mit der Systemuhr herum. <application>MEncoder</application> benutzt
|
|
|
|
|
sie f<>r A/V-Synchronisation. Wenn du die Systemuhr anpasst (vor allem r<>ckw<6B>rtig),
|
|
|
|
|
verwirrt dies <application>MEncoder</application>, und du wirst Frames verlieren.
|
|
|
|
|
Das ist ein wichtiger Sachverhalt, wenn du mit einem Netzwerk verbunden bist und
|
|
|
|
|
Zeitsynchronisationssoftware wie NTP verwendest. Du musst NTP w<>hrend des Aufnahmeprozesses
|
|
|
|
|
ausschalten, wenn du zuverl<72>ssig aufnehmen m<>chtest.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
<09>ndere das <option>outfmt</option> nicht, es sei denn, du wei<65>t, was du tust, oder
|
|
|
|
|
deine Karte/Treiber den Standard (YV12-Farbraum) wirklich nicht unterst<73>tzt.
|
|
|
|
|
In <20>lteren Versionen von <application>MPlayer</application>/<application>MEncoder</application>
|
|
|
|
|
war es notwendig, das Ausgabeformat anzugeben. Diese Sache sollte in aktuellen Releases
|
|
|
|
|
behoben sein, und <option>outfmt</option> wird nicht weiter ben<65>tigt. Die Standardeinstellung
|
|
|
|
|
gen<65>gt den meisten Zwecken. Zum Beispiel, wenn du mit
|
|
|
|
|
<systemitem class="library">libavcodec</systemitem> nach DivX aufnimmst und
|
|
|
|
|
<option>outfmt=RGB24</option> angibst, um die Qualit<69>t der aufgenommenen Bilder zu erh<72>hen,
|
|
|
|
|
so wird das aufgenommene Bild sp<73>ter tats<74>chlich zur<75>ck zu YV12 konvertiert.
|
|
|
|
|
Die einzige Sache, die du erreichst, ist eine massive Verschwendung von CPU-Power.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Um den Farbraum I420 anzugeben (<option>outfmt=i420</option>), musst du die Option
|
|
|
|
|
<option>-vc rawi420</option> hinzuf<75>gen. Das liegt an einem Konflikt mit einem
|
|
|
|
|
Intel Indeo Videocodec.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Es gibt viele M<>glichkeiten, Audio aufzunehmen. Du kannst den Ton grabben entweder
|
|
|
|
|
mit deiner Soundkarte <20>ber ein externes Kabel zwischen Videokarte und Line-In oder
|
|
|
|
|
durch Benutzung des eingebauten ADC im bt878-Chip. In letzterem Falle musst den den
|
|
|
|
|
Treiber <emphasis role="bold">btaudio</emphasis> laden. Lies die Datei
|
|
|
|
|
<filename>linux/Documentation/sound/btaudio</filename> (im Kernel-Tree, nicht
|
|
|
|
|
in dem von <application>MPlayer</application>) f<>r ein paar Anweisungen,
|
|
|
|
|
wie dieser Treiber verwendet wird.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Wenn <application>MEncoder</application> das Audioger<65>t nicht <20>ffnen kann,
|
|
|
|
|
stelle sicher, dass es wirklich verf<72>gbar ist. Es kann <20>rger geben mit Soundservern
|
|
|
|
|
wie aRts (KDE) oder ESD (GNOME). Wenn du eine Vollduplex-Soundkarte hast
|
|
|
|
|
(fast jede vern<72>nftige Karte unterst<73>tzt dies heutzutage) und du KDE laufen hast,
|
|
|
|
|
probiere die Option "Vollduplex" im Eigenschaftenmen<65> des Soundservers.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<sect2 id="tv-examples">
|
|
|
|
|
<title>Beispiele</title>
|
|
|
|
|
|
|
|
|
|
<informalexample>
|
|
|
|
|
<para>
|
|
|
|
|
Dummy-Ausgabe zu AAlib :)
|
|
|
|
|
<screen>mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://</screen>
|
|
|
|
|
</para>
|
|
|
|
|
</informalexample>
|
|
|
|
|
|
|
|
|
|
<informalexample>
|
|
|
|
|
<para>
|
|
|
|
|
Input von Standard-V4L:
|
|
|
|
|
<screen>mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://</screen>
|
|
|
|
|
</para>
|
|
|
|
|
</informalexample>
|
|
|
|
|
|
|
|
|
|
<informalexample>
|
|
|
|
|
<para>
|
|
|
|
|
Ein gehobenes Beispiel. Dies sorgt daf<61>r, dass <application>MEncoder</application>
|
|
|
|
|
das volle PAL-Bild einf<6E>ngt, die R<>nder abschneidet und einen Deinterlacer mit einem linearen
|
|
|
|
|
Blendalgorithmus auf das Bild anwendet. Der Ton wird mit dem LAME-Codec bei konstanter Bitrate
|
|
|
|
|
von 64kbps komprimiert. Diese Einstellungen eigenen sich f<>r das Einfangen von Filmen.
|
|
|
|
|
<screen><!--
|
|
|
|
|
-->mencoder -tv driver=v4l:width=768:height=576 \
|
|
|
|
|
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
|
|
|
|
|
-oac mp3lame -lameopts cbr:br=64 \
|
|
|
|
|
-vf crop=720:544:24:16,pp=lb -o <replaceable>output.avi</replaceable> tv://<!--
|
|
|
|
|
--></screen>
|
|
|
|
|
</para>
|
|
|
|
|
</informalexample>
|
|
|
|
|
|
|
|
|
|
<informalexample>
|
|
|
|
|
<para>
|
|
|
|
|
Dies wird zus<75>tzlich die Bildabmessungen auf 384x288 <20>ndern und das Video mit
|
|
|
|
|
einer Bitrate von 250kbps im hochqualitativen Modus encodieren.
|
|
|
|
|
Die Option vqmax lockert den Quantisierungsparameter und erlaubt dem Videokompressor, eine
|
|
|
|
|
sehr niedrige Bitrate zu erlangen, sogar auf Kosten der Qualit<69>t. Dies kann verwendet werden
|
|
|
|
|
f<>r das Einfangen von langen TV-Serien, wo die Videoqualit<69>t nicht so wichtig ist.
|
|
|
|
|
<screen><!--
|
|
|
|
|
-->mencoder -tv driver=v4l:width=768:height=576 \
|
|
|
|
|
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
|
|
|
|
|
-oac mp3lame -lameopts cbr:br=48 \
|
|
|
|
|
-vf crop=720:540:24:18,pp=lb,scale=384:288 -sws 1 -o <replaceable>output.avi</replaceable> tv://<!--
|
|
|
|
|
--></screen>
|
|
|
|
|
Es ist au<61>erdem m<>glich, in der Option <option>-tv</option> kleinere Bildabmessungen
|
|
|
|
|
anzugeben und die Softwareskalierung auszulassen, aber dieser Ansatz nutzt die maximal
|
|
|
|
|
verf<72>gbaren Informationen und ist ein wenig resistenter gegen St<53>rungen. Die bt8x8-Chips
|
|
|
|
|
k<>nnen das Mitteln der Pixel auf Grund einer Hardwarebeschr<68>nkung nur in horizontaler
|
|
|
|
|
Richtung durchf<68>hren.
|
|
|
|
|
</para>
|
|
|
|
|
</informalexample>
|
|
|
|
|
</sect2>
|
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
|
|
</chapter>
|