summaryrefslogtreecommitdiffstats
path: root/DOCS/xml/de/tvinput.xml
blob: 492a0cae7c73a0e97062813d81e897ffd122fcd2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- in sync with r17322 -->
<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änger</emphasis>.
			Siehe Manpage 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äge
						automatisch erkennen und TV-Unterstützung wird eingebaut werden
						(siehe Ausgaben von <filename>./configure</filename>).
					</para>
				</step>
				<step>
					<para>
						Stelle sicher, dass dein Empfänger mit anderer TV-Software wie zum Beispiel
						<application>XawTV</application> unter Linux läuft.
					</para>
				</step>
			</procedure>
		</sect2>
		
		<sect2 id="tv-tips">
			<title>Tipps zum Gebrauch</title>
			<para>
				Die vollständige Liste der Optionen ist in der Manpage verfü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ärung: Durch Verwendung dieser Option sind nur die Kanä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	&quot;_&quot; ersetzt werden.
					</para>
				</listitem>
				
				<listitem>
					<para>
						Wähle vernünftige Bildabmessungen. Die Abmessungen des resultierenden Bildes sollten durch
						16 teilbar sein.
					</para>
				</listitem>
				
				<listitem>
					<para>
						Wenn du das Video bei einer vertikalen Auflösung höher als halb der vollen
						Auflösung einfängst (z.B. 288 für PAL oder 240 für NTSC), dann werden die
						'Frames', die du erhältst, wirklich jeweils ausgelassene Paare von Feldern sein.
						Je nach dem, was du mit dem Video anfängst, kannst du es in dieser Form belassen,
						(zerstörend) deinterlacen oder die Paare zu einzelnen Feldern machen.
					</para>
					<para>
						Ansonsten wirst du einen Film erhalten, der während schnellbewegten Szenen gestö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ötige
						Bandbreite. Genauer gesagt sind es nicht die schwarzen Bereiche selbst, sondern
						die scharfen Übergä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> so an, dass der ganze Müll
						an den Rändern abgeschnitten wird. Nochmal, vergiss nicht, die resultierenden
						Abmessungen vernünftig zu halten.
					</para>
				</listitem>
				
				<listitem>
					<para>
						Achte auf CPU-Load. Es sollte die 90%-Grenze die meiste Zeit über nicht überschreiten.
						Wenn du einen großen Aufnahmepuffer hast, kann <application>MEncoder</application>
						eine Überlastung für ein paar Sekunden überstehen, aber nicht mehr.
						Es ist besser, 3D-OpenGL-Bildschirmschoner und ä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ä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ässig aufnehmen möchtest.
					</para>
				</listitem>
				
				<listitem>
					<para>
						Ändere das <option>outfmt</option> nicht, es sei denn, du weißt, was du tust, oder
						deine Karte/Treiber den Standard (YV12-Farbraum) wirklich nicht unterstützt.
						In ä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ötigt. Die Standardeinstellung
						genü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ät der aufgenommenen Bilder zu erhöhen,
						so wird das aufgenommene Bild später tatsächlich zurü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ü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 ü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ät nicht öffnen kann,
						stelle sicher, dass es wirklich verfügbar ist. Es kann Ärger geben mit Soundservern
						wie aRts (KDE) oder ESD (GNOME). Wenn du eine Vollduplex-Soundkarte hast
						(fast jede vernünftige Karte unterstützt dies heutzutage) und du KDE laufen hast,
						probiere die Option "Vollduplex" im Eigenschaftenmenü 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ür, dass <application>MEncoder</application>
					das volle PAL-Bild einfä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ätzlich die Bildabmessungen auf 384x288 ä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ät. Dies kann verwendet werden
					für das Einfangen von langen TV-Serien, wo die Videoqualitä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ßerdem möglich, in der Option <option>-tv</option> kleinere Bildabmessungen
					anzugeben und die Softwareskalierung auszulassen, aber dieser Ansatz nutzt die maximal
					verfügbaren Informationen und ist ein wenig resistenter gegen Störungen. Die bt8x8-Chips
					können das Mitteln der Pixel auf Grund einer Hardwarebeschränkung nur in horizontaler
					Richtung durchführen.
				</para>
			</informalexample>
		</sect2>
	</sect1>
	
</chapter>