18418
|
1 <?xml version="1.0" encoding="iso-8859-1"?>
|
|
2 <!-- in sync with rev 1.16 $ -->
|
|
3 <chapter id="tv">
|
|
4 <title>TV</title>
|
|
5
|
|
6 <sect1 id="tv-input" xreflabel="TV input">
|
|
7 <title>TV-Input</title>
|
|
8
|
|
9 <para>
|
|
10 Dieser Abschnitt behandelt das <emphasis role="bold">Anschauen/Grabben von einem
|
|
11 V4L-kompatiblen TV-Empfänger</emphasis>.
|
|
12 Siehe man page für eine Beschreibung der TV-Optionen und Tastensteuerungen.
|
|
13 </para>
|
|
14
|
|
15
|
|
16 <sect2 id="tv-compilation">
|
|
17 <title>Compilierung</title>
|
|
18
|
|
19 <procedure>
|
|
20 <step>
|
|
21 <para>
|
|
22 Zuerst musst du neu compilieren. <filename>./configure</filename> wird die Kernelheader
|
|
23 vom v4l-Kram und die Existenz der <filename>/dev/video*</filename>-Einträge
|
|
24 automatisch erkennen und TV-Unterstützung wird eingebaut werden
|
|
25 (siehe Ausgaben von <filename>./configure</filename>).
|
|
26 </para>
|
|
27 </step>
|
|
28 <step>
|
|
29 <para>
|
|
30 Stelle sicher, dass dein Empfänger mit anderer TV-Software unter Linux läuft, zum
|
|
31 Beispiel <application>XawTV</application>.
|
|
32 </para>
|
|
33 </step>
|
|
34 </procedure>
|
|
35 </sect2>
|
|
36
|
|
37 <sect2 id="tv-tips">
|
|
38 <title>Tipps zum Gebrauch</title>
|
|
39 <para>
|
|
40 Die vollständige Liste der Optionen ist in der man page verfügbar.
|
|
41 Hier sind nur ein paar Tipps:
|
|
42 </para>
|
|
43 <itemizedlist>
|
|
44 <listitem>
|
|
45 <para>
|
|
46 Benutze die Option <option>channels</option>. Ein Beispiel:
|
|
47 <screen>-tv channels=26-MTV1,23-TV2</screen>
|
|
48 Erklärung: Durch Benutzung dieser Option sind nur die Kanäle 26 und 23 in Gebrauch,
|
|
49 und es wird beim Kanalwechsel einen netten OSD-Text geben, der den Namen des Kanals
|
|
50 anzeigt. Leerzeichen im Kanalnamen müssen durch das Zeichen "_" ersetzt werden.
|
|
51 </para>
|
|
52 </listitem>
|
|
53
|
|
54 <listitem>
|
|
55 <para>
|
|
56 Wähle gesunde Bildabmessungen. Die Abmessungen des resultierenden Bildes sollten durch
|
|
57 16 teilbar sein.
|
|
58 </para>
|
|
59 </listitem>
|
|
60
|
|
61 <listitem>
|
|
62 <para>
|
|
63 Wenn du das Video bei einer vertikalen Auflösung höher als halb der vollen
|
|
64 Auflösung einfängst (z.B. 288 für PAL oder 240 für NTSC), dann werden die
|
|
65 'Frames', die du erhältst, wirklich jeweils ausgelassene Paare von Feldern sein.
|
|
66 Je nach dem, was du mit dem Video anfängst, kannst du es in dieser Form belassen,
|
|
67 (zerstörend) deinterlacen oder die Paare zu einzelnen Feldern machen.
|
|
68 </para>
|
|
69 <para>
|
|
70 Ansonsten wirst du einen Film erhalten, der während schnellbewegten Szenen gestört ist,
|
|
71 und die Bitratenkontrolle wird vermutlich nicht in der Lage sein, die angegebene Bitrate
|
|
72 einzuhalten, da die Interlacing-Artefakte hohe Details produzieren und daher eine Menge
|
|
73 Bandbreite kosten. Du kannst Deinterlacing mit <option>-vf pp=DEINT_TYPE</option>
|
|
74 aktivieren. Normalerweise leistet <option>pp=lb</option> gute Arbeit, aber das ist
|
|
75 Geschmackssache. Schaue nach anderen Deinterlacing-Algorithmen im Handbuch und versuche
|
|
76 es mit denen.
|
|
77 </para>
|
|
78 </listitem>
|
|
79
|
|
80 <listitem>
|
|
81 <para>
|
|
82 Schneide tote Bereiche ab. Wenn du Video aufnimmst, sind die Bereiche an den Rändern
|
|
83 normalerweise schwarz oder enthalten Rauschen. Diese wiederum verbrauchen unnötige
|
|
84 Bandbreite. Genauer gesagt sind es nicht die schwarzen Bereiche selbst, sondern
|
|
85 die scharfen Übergänge zwischen dem schwarzen und dem helleren Videobild, die das tun,
|
|
86 aber das ist für den Moment nicht so wichtig. Bevor du mit der Aufnahme beginnst,
|
|
87 passe alle Argumente der Option <option>crop</option> an, so dass der ganze Müll
|
|
88 an den Rändern abgeschnitten wird. Nochmal, vergiss nicht, die resultierenden
|
|
89 Abmessungen gesund zu halten.
|
|
90 </para>
|
|
91 </listitem>
|
|
92
|
|
93 <listitem>
|
|
94 <para>
|
|
95 Achte auf CPU-Load. Es sollte die 90%-Grenze die meiste Zeit über nicht überschreiten.
|
|
96 Wenn du einen großen Aufnahmepuffer hast, kann <application>MEncoder</application>
|
|
97 eine zu hohe Belastung für ein paar Sekunden überstehen, aber nicht mehr.
|
|
98 Es ist besser, 3D-OpenGL-Bildschirmschoner und ähnlichen Kram abzustellen.
|
|
99 </para>
|
|
100 </listitem>
|
|
101
|
|
102 <listitem>
|
|
103 <para>
|
|
104 Spiele nicht mit der Systemuhr herum. <application>MEncoder</application> benutzt
|
|
105 sie für A/V-Synchronisation. Wenn du die Systemuhr anpasst (vor allem rückwärtig),
|
|
106 verwirrt dies <application>MEncoder</application>, und du wirst Frames verlieren.
|
|
107 Das ist ein wichtiger Sachverhalt, wenn du mit einem Netzwerk verbunden bist und
|
|
108 Zeitsynchronisationssoftware wie NTP verwendest. Du musst NTP während des Aufnahmeprozesses
|
|
109 ausschalten, wenn du zuverlässig aufnehmen möchtest.
|
|
110 </para>
|
|
111 </listitem>
|
|
112
|
|
113 <listitem>
|
|
114 <para>
|
|
115 Ändere das <option>outfmt</option> nicht, es sei denn, du weißt, was du tust, oder
|
|
116 deine Karte/Treiber den Standard (YV12-Farbraum) wirklich nicht unterstützt.
|
|
117 In älteren Versionen von <application>MPlayer</application>/<application>MEncoder</application>
|
|
118 war es notwendig, das Ausgabeformat anzugeben. Diese Sache sollte in aktuellen Releases
|
|
119 behoben sein, und <option>outfmt</option> wird nicht weiter benötigt. Die Standardeinstellung
|
|
120 genügt den meisten Zwecken. Zum Beispiel, wenn du mit
|
|
121 <systemitem class="library">libavcodec</systemitem> nach DivX aufnimmst und
|
|
122 <option>outfmt=RGB24</option> angibst, um die Qualität der aufgenommenen Bilder zu erhöhen,
|
|
123 so wird das aufgenommene Bild später tatsächlich zurück zu YV12 konvertiert.
|
|
124 Die einzige Sache, die du erreichst, ist eine massive Verschwendung von CPU-Power.
|
|
125 </para>
|
|
126 </listitem>
|
|
127
|
|
128 <listitem>
|
|
129 <para>
|
|
130 Um den Farbraum I420 anzugeben (<option>outfmt=i420</option>), musst du die Option
|
|
131 <option>-vc rawi420</option> hinzufügen. Das liegt an einem Konflikt mit einem
|
|
132 Intel Indeo Videocodec.
|
|
133 </para>
|
|
134 </listitem>
|
|
135
|
|
136 <listitem>
|
|
137 <para>
|
|
138 Es gibt viele Möglichkeiten, Audio aufzunehmen. Du kannst den Ton grabben entweder
|
|
139 mit deiner Soundkarte über ein externes Kabel zwischen Videokarte und Line-In oder
|
|
140 durch Benutzung des eingebauten ADC im bt878-Chip. In letzterem Falle musst den den
|
|
141 Treiber <emphasis role="bold">btaudio</emphasis> laden. Lies die Datei
|
|
142 <filename>linux/Documentation/sound/btaudio</filename> (im Kernel-Tree, nicht
|
|
143 in dem von <application>MPlayer</application>) für ein paar Anweisungen,
|
|
144 wie dieser Treiber verwendet wird.
|
|
145 </para>
|
|
146 </listitem>
|
|
147
|
|
148 <listitem>
|
|
149 <para>
|
|
150 Wenn <application>MEncoder</application> das Audiogerät nicht öffnen kann,
|
|
151 stelle sicher, dass es wirklich verfügbar ist. Es kann Ärger geben mit Soundservern
|
|
152 wie aRts (KDE) oder ESD (GNOME). Wenn du eine Vollduplex-Soundkarte hast
|
|
153 (fast jede vernünftige Karte unterstützt dies heutzutage) und du KDE laufen hast,
|
|
154 probiere die Option "Vollduplex" im Eigenschaftenmenü des Soundservers.
|
|
155 </para>
|
|
156 </listitem>
|
|
157 </itemizedlist>
|
|
158 </sect2>
|
|
159
|
|
160
|
|
161 <sect2 id="tv-examples">
|
|
162 <title>Beispiele</title>
|
|
163
|
|
164 <informalexample>
|
|
165 <para>
|
|
166 Dummy-Ausgabe zu AAlib :)
|
|
167 <screen>mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://</screen>
|
|
168 </para>
|
|
169 </informalexample>
|
|
170
|
|
171 <informalexample>
|
|
172 <para>
|
|
173 Input von Standard-V4L:
|
|
174 <screen>mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://</screen>
|
|
175 </para>
|
|
176 </informalexample>
|
|
177
|
|
178 <informalexample>
|
|
179 <para>
|
|
180 Ein gehobenes Beispiel. Dies sorgt dafür, dass <application>MEncoder</application>
|
|
181 das volle PAL-Bild einfängt, die Ränder abschneidet und einen Deinterlacer mit einem linearen
|
|
182 Blendalgorithmus auf das Bild anwendet. Der Ton wird mit dem LAME-Codec bei konstanter Bitrate
|
|
183 von 64kbps komprimiert. Diese Einstellungen eigenen sich für das Einfangen von Filmen.
|
|
184 <screen><!--
|
|
185 -->mencoder -tv driver=v4l:width=768:height=576 \
|
|
186 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
|
|
187 -oac mp3lame -lameopts cbr:br=64 \
|
|
188 -vf crop=720:544:24:16,pp=lb -o <replaceable>output.avi</replaceable> tv://<!--
|
|
189 --></screen>
|
|
190 </para>
|
|
191 </informalexample>
|
|
192
|
|
193 <informalexample>
|
|
194 <para>
|
|
195 Dies wird zusätzlich die Bildabmessungen auf 384x288 ändern und das Video mit
|
|
196 einer Bitrate von 250kbps im hochqualitativen Modus encodieren.
|
|
197 Die Option vqmax lockert den Quantisierungsparameter und erlaubt dem Videokompressor, eine
|
|
198 sehr niedrige Bitrate zu erlangen, sogar auf Kosten der Qualität. Dies kann verwendet werden
|
|
199 für das Einfangen von langen TV-Serien, wo die Videoqualität nicht so wichtig ist.
|
|
200 <screen><!--
|
|
201 -->mencoder -tv driver=v4l:width=768:height=576 \
|
|
202 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
|
|
203 -oac mp3lame -lameopts cbr:br=48 \
|
|
204 -vf crop=720:540:24:18,pp=lb,scale=384:288 -sws 1 -o <replaceable>output.avi</replaceable> tv://<!--
|
|
205 --></screen>
|
|
206 Es ist außerdem möglich, in der Option <option>-tv</option> kleinere Bildabmessungen
|
|
207 anzugeben und die Softwareskalierung auszulassen, aber dieser Ansatz nutzt die maximal
|
|
208 verfügbaren Informationen und ist ein wenig resistenter gegen Störungen. Die bt8x8-Chips
|
|
209 können das Mitteln der Pixel auf Grund einer Hardwarebeschränkung nur in horizontaler
|
|
210 Richtung durchführen.
|
|
211 </para>
|
|
212 </informalexample>
|
|
213 </sect2>
|
|
214 </sect1>
|
|
215
|
|
216 </chapter>
|