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
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Sound - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H3><A NAME="audio">2.3.2 Audio-Ausgabe-Geräte</A></H3>
<H4><A NAME="sync">2.3.2.1 Audio-/VideoSynchronisation</A></H4>
<P>MPlayers Audio-Interface wird <I>libao2</I> genannt. Es enthält
zur Zeit diese Treiber:</P>
<DL>
<DT>oss</DT>
<DD>OSS (ioctl)-Treiber (unterstützt das Durchreichen von AC3)</DD>
<DT>sdl</DT>
<DD>SDL-Treiber (untertstützt Sound-Dämonen wie <B>ESD</B> und
<B>ARTS</B>)</DD>
<DT>nas</DT>
<DD>NAS (Network Audio System)-Treiber</DD>
<DT>alsa5</DT>
<DD>ALSA 0.5-Treiber</DD>
<DT>alsa9</DT>
<DD>ALSA 0.9-Treiber (unterstützt das Durchreichen von AC3)</DD>
<DT>sun</DT>
<DD>SUN Audiotreiber (<CODE>/dev/audio</CODE>) für BSD und Solaris8</DD>
<DT>arts</DT>
<DD>ARTS-Treiber (hauptsächlich für KDE-Benutzer)</DD>
<DT>esd</DT>
<DD>ESD-Treiber (hauptsächlich für GNOME-Benutzer)</DD>
</DL>
<P>Linux-Soundkartentreiber haben Probleme mit der Kompatibilität.
MPlayer benutzt einen in <EM>vernünftig</EM> implementierten Treibern
eingebauten Mechanismus, um die Audio-/Video-Synchronisation korrekt
beizubehalten. Leider sind einige Treiberautoren nicht sonderlich gründlich
bei der Implementation dieses Mechanismusses, da er nicht benötigt wird,
um MP3s abzuspielen oder Soundeffekte zu erzeugen.</P>
<P>Andere Medienplayer wie z.B. <A HREF="http://avifile.sourceforge.net">
aviplay</A> oder <A HREF="http://xine.sourceforge.net">xine</A> funktionieren
bei dir wahrscheinlich so, wie sie sind, weil sie eine "simplere" Methode wie
internes Timing für die Audio-/Video-Synchronisation verwenden.
Verschiedene Tests haben gezeigt, dass ihre Methoden nicht ganz so effizient
wie MPlayers Methoden sind.</P>
<P>Wenn du MPlayer zusammen mit einem korrekt geschriebenen
Soundkartentreiber verwendest, dann wirst du niemals A/V-Desyncs aufgrund des
Audiotreibers erleben (höchstens mit sehr schlecht erstellten Dateien.
Schau in einem solchen Fall in die Dokumentation, wie du das beheben
kannst).</P>
<P>Wenn du einen solchen nicht gut implementierten Audiotreiber verwendest,
dann probier die Option <CODE>-autosync</CODE> aus, die deine Probleme
lösen sollte. Schau in der man-Page nach; dort findest du mehr
Informationen dazu.</P>
<P>Einige Anmerkungen:</P>
<UL>
<LI>Wenn du einen OSS-Treiber hast, versuche als erstes <CODE>-ao
oss</CODE> (dies ist die Standardeinstellung). Wenn du kleine Fehler,
Verzögerungen oder irgendetwas anderes ungewöhliches hörst,
versuche mal <CODE>-ao sdl</CODE> (HINWEIS: die SDL-Bibliotheken und das
dazugehörige Devel-Paket müssen installiert sein). Der SDL-
Audiotreiber hilft in vielen Fällen und unterstützt auch ESD
(GNOME) und ARTS (KDE).</LI>
<LI>Wenn du ALSA Version 0.5 verwendest, musst du fast immer <CODE>-ao
alsa5</CODE> verwenden, weil ALSA 0.5 einen fehlerhaften OSS-
Emulationscode hat. MPlayer wird mit etwa so einer Meldung
<B>abstürzen</B>:<BR> <CODE>DEMUXER: Too many (945 in 8390980 bytes)
video packets in the buffer!</CODE></LI>
<LI>Unter Solaris solltest du den SUN-Audiotreiber mittels <CODE>-ao
sun</CODE> benutzen, da ansonsten weder Video noch Audio funktionierne.</LI>
<LI>Wenn beim Ton Klickgeräusche beim Abspielen vom CD-ROM-Laufwerk zu
hörne sind, dann schalte "IRQ unmasking" an, z.B. mit
<CODE>hdparm -u1 /dev/cdrom</CODE> (<CODE>man hdparm</CODE>). Das ist auch
generell von Vorteil, wie du in der
<A HREF="cd-dvd.html#drives">CD-ROM-Sektion</A> nachleesn kannst.</LI>
</UL>
<H4><A NAME="experiences">2.3.2.2 Soundkarten-Erfahrungen,
-Empfehlungen</A></H4>
<P>Unter Linux wird ein 2.4.x Kernel sehr empfohlen. Kernel 2.2 wird nicht
getestet.</P>
<P>Linux-Soundtreiber werden hauptsächlich von der freien Version von
OSS bereitgestellt. Diese Treiber werden inzwischen von denen des
<A HREF="http://www.alsa-project.org">ALSA-Projektes</A> abgelöst
(Advanced Linux Sound Architecture), die bereits im Entwicklerbaum des Kernels
(2.5) zu finden sind. Wenn deine Distribution nicht bereits ALSA verwendet
und du Probleme mit dem Sound hast, dann solltest du die ALSA-Treiber mal
ausprobieren. Die ALSA-Treiber sind den OSS-Treibern meistens in Sachen
Kompatibilität, Performance und Featuren überlegen. Ledier werden
einige Soundkarten dagegen nur von OSS-Treibern von
<A HREF="http://www.opensound.com/">4Front Technologies</A> unterstützt.
Sie unterstützen ebenfalls einige Nicht-Linux-Systeme.</P>
<TABLE BORDER="1" WIDTH="100%">
<TR>
<TH ROWSPAN="2"><B>SOUNDKARTE</B></TH>
<TH COLSPAN="4"><B>TREIBER</B></TH>
<TH ROWSPAN="2"><B>Max kHz</B></TH>
<TH ROWSPAN="2"><B>Max Anz. Kanäle</B></TH>
<TH ROWSPAN="2"><B>Max Anz. gleichzeitiger Zugriffe<FONT SIZE="-2"><A HREF="#note1">[1]</A></FONT></B></TH>
</TR>
<TR>
<TH><B>OSS/Free</B></TH>
<TH><B>ALSA</B></TH>
<TH><B>OSS/Pro</B></TH>
<TH><B>andere</B></TH>
</TR>
<TR>
<TD><B>VIA onboard (686/A/B, 8233, 8235)</B></TD>
<TD><A HREF="http://sourceforge.net/project/showfiles.php?group_id=3242&release_id=59602">via82cxxx_audio</A></TD>
<TD>snd-via82xx</TD>
<TD> </TD>
<TD> </TD>
<TD>4-48 kHz oderr nur 48 kHz, abhängig vom Chipsatz</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Aureal Vortex 2</B></TD>
<TD>keine</TD>
<TD>keine</TD>
<TD>OK</TD>
<TD><A HREF="http://aureal.sourceforge.net">Linux Aureal-Treiber</A><BR>
<A HREF="http://makacs.poliod.hu/~pontscho/aureal/au88xx-1.1.3.tar.bz2">buffer size increased to 32k</A></TD>
<TD>48</TD>
<TD>4.1</TD>
<TD>5+</TD>
</TR>
<TR>
<TD><B>SB Live!</B></TD>
<TD>Analog OK, SP/DIF funktioniert nicht</TD>
<TD>beide OK</TD>
<TD>beide OK</TD>
<TD><A HREF="http://opensource.creative.com">Creatives OSS-Treiber (mit SP/DIF-Unterstützung)</A></TD>
<TD>192</TD>
<TD>4.0/5.1</TD>
<TD>32</TD>
</TR>
<TR>
<TD><B>SB 128 PCI (es1371)</B></TD>
<TD>OK</TD>
<TD>?</TD>
<TD> </TD>
<TD> </TD>
<TD>48</TD>
<TD>stereo</TD>
<TD>2</TD>
</TR>
<TR>
<TD><B>SB AWE 64</B></TD>
<TD>max 44kHz</TD>
<TD>48kHz klingt schlecht</TD>
<TD> </TD>
<TD> </TD>
<TD>48</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>GUS PnP</B></TD>
<TD>keine</TD>
<TD>OK</TD>
<TD>OK</TD>
<TD> </TD>
<TD>48</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Gravis UltraSound ACE</B></TD>
<TD>nicht OK</TD>
<TD>OK</TD>
<TD> </TD>
<TD> </TD>
<TD>44</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Gravis UltraSound MAX</B></TD>
<TD>OK</TD>
<TD>OK (?)</TD>
<TD> </TD>
<TD> </TD>
<TD>48</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>ESS 688</B></TD>
<TD>OK</TD>
<TD>OK (?)</TD>
<TD> </TD>
<TD> </TD>
<TD>48</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>C-Media-Karten (welche genau?)</B></TD>
<TD>nicht OK (zischt) (?)</TD>
<TD>OK</TD>
<TD> </TD>
<TD> </TD>
<TD>?</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Yamaha-Karten (*ymf*)</B></TD>
<TD>nicht OK (?) (vielleicht mit <CODE>-ao sdl</CODE>)</TD>
<TD>nur mit der OSS-Emulation von ALSA 0.5 OK <B>UND</B>
<CODE>-ao sdl</CODE> (!) (?)</TD>
<TD> </TD>
<TD> </TD>
<TD>?</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Karten mit envy24-Chips (wie z.B. Terratec EWS88MT)</B></TD>
<TD>?</TD>
<TD>?</TD>
<TD>OK</TD>
<TD> </TD>
<TD>?</TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD><B>PC-Lautsprecher oder DAC</B></TD>
<TD>OK</TD>
<TD>none</TD>
<TD> </TD>
<TD><A HREF="http://www.geocities.com/stssppnn/pcsp.html">OSS-Treiber für den PC-Lautsprecher</a></TD>
<TD>Der Treiber emuliert 44.1, vielleicht auch mehr.</TD>
<TD>mono</TD>
<TD>1</TD>
</TR>
</TABLE>
<P><A NAME="note1"><B>[1]</B></A>: Die Anzahl der Anwendungen, die <I>zur
gleichen Zeit</I> auf das Gerät zugreifen können.</P>
<P>Rückmeldungen zu diesem Dokument sind willkommen. Bitte sag uns, wie
MPlayer und deine Soundkarte(n) zusammen funktionieren.</P>
<H4><A NAME="af">2.3.2.3 Audiofilter</A></H4>
<P>Die alten Audioplugins wurden von einer neuen Filterschicht abgelöst.
Audiofilter werden benutzt, um die Parameter der Daten zu ändern, bevor
sie die Soundkarte erreichen. Die Aktivierung der Filter geschieht normalerweise
automatisch, kann aber auch erzwungen oder verhindert werden. Die Filter
werden aktiviert, wenn die Parameter der Daten von denen der Soundkarte
abweichen und deaktiviert, wenn sie gleich sind. Die Option <CODE>-af
filter1,filter2,...</CODE> wird benutzt, um Filter einzufügen, die nicht
automatisch eingefügt werden. Diese Filter werden in der Reihenfolge
abgearbeitet, wie sie angegeben wurden.</P>
<P>Beispiele:<BR>
<CODE>mplayer -af resample,pan movie.avi </CODE></P>
<P>Schickt die Audiodaten durch das Resample-Filter und danach durch den
Pan-Filter. Die Liste darf keine Leerzeichen enthalten, sonst klappt's nicht.
</P>
<P>Viele Filter kennen Parameter, mit denen ihr Verhalten geändert werden
kann. Diese Parameter werden unten detailliert beschrieben. Wenn keine
Parameter angegeben werden, dann verwendet der Filter seine Standardwerte. Hier
ist ein Beispiel, wie Filter mit Parametern verwendet werden können:</P>
<P> <CODE>mplayer -af resample=11025,pan=1:0.5:0.5 -channels 1
-srate 11025 media.avi</CODE></P>
<P>Das setzt die Ausgabefrequenz des Resampleplugins auf 11025Hz und
downmixt das Audio auf einen Kanal mit dem Pan-Filter.</P>
<P>Die allgemeine Kontrolle der Filterschicht geschieht über
<CODE>-af-adv</CODE>. Diese Option kennt zwei Parameter:</P>
<DL>
<DT><CODE>force</CODE><DT>
<DD>ist ein Bitfeld, das angibt, wie die Filter
einzufügen sind und welche Geschwindigkeits-/Genauigkeitsoptimierungen
sie verwenden:
<DL>
<DT><CODE>0</CODE></DT>
<DD>Benutzt automatisches Einfügen und optimiert in Abhängigkeit
der CPU-Geschwindigkeit.</DD>
<DT><CODE>1</CODE></DT>
<DD>Benutzt automatisches Einfügen und optimiert für die
höchstmögliche Geschwindigkeit.<BR>
<EM>Warnung:</EM> Einige
Features der Audiofilter werden kommentarlos deaktiviert, und die
Soundqualität könnte niedriger sein als erwartet.</DD>
<DT><CODE>2</CODE></DT>
<DD>Benutzt automatisches Einfügen der Filter und optimiert für
Qualität.</DD>
<DT><CODE>3</CODE></DT>
<DD>Füt nicht automatisch Filter ein.<BR>
<I>Warnung:</I> Hiermit kann
MPlayer eventuell zum Absturz gebracht werden.</DD>
<DT><CODE>4</CODE></DT>
<DD>Fügt automatisch Filter so wie bei 0 hinzu, benutzt aber
Fließkommaarithmetik, wo dies möglich ist.</DD>
<DT><CODE>5</CODE></DT>
<DD>Fügt automatisch Filter so wie bei 1 hinzu, benutzt aber
Fließkommaarithmetik, wo dies möglich ist.</DD>
<DT><CODE>6</CODE></DT>
<DD>Fügt automatisch Filter so wie bei 2 hinzu, benutzt aber
Fließkommaarithmetik, wo dies möglich ist.</DD>
<DT><CODE>7</CODE></DT>
<DD>Fügt keine Filter automatisch hinzu, benutzt aber
Fließkommaarithmetik, wo dies möglich ist.</DD>
</DL>
</DD>
<DT><CODE>list</CODE></DT>
<DD>Dies ist ein Synonym für <CODE>-af</CODE>.</DD>
</DL>
<P>Die Filterschicht wird auch von den folgenden allgemeinen Optionen
beeinflusst:</P>
<DL>
<DT><CODE>-v</CODE></DT>
<DD>Gibt ausführlichere Meldungen aus. Die meisten Filter geben hiermit
auch mehr Statusinformationen aus.</DD>
<DT><CODE>-channels</CODE></DT>
<DD>Diese Option setzt die Anzahl der Ausgabekanäle, die du von deiner
Soundkarte ausgegeben haben möchtest. Sie beeinflusst auch die Anzahl
der Kanäle, die
vom Quellstream decodiert werden. Wenn der Stream weniger als die hiermit
geforderte Anzahl Kanäle enthält, so werden automatisch
Filter eingefügt (siehe unten). Das Routing ist das Standardrouting
des channels-Filters.</DD>
<DT><CODE>-srate</CODE></DT>
<DD>Diese Option gibt die Samplerate an, die die Soundkarte benutzen soll,
sofern sie diese Rate unterstützt.
Wenn die Samplefrequenz deiner Soundkarte anders ist als die des aktuellen
Quellstreams, so wird der resample-Filter (siehe unten) automatisch
eingefügt, um diese Differenz auszugleichen.</DD>
<DT><CODE>-format</CODE><DT>
<DD>Diese Option setzt das Sampleformt zwischen Audiofilterschicht und der
Soundkarte. Wenn das angeforderte Format der Soundkarte nicht das gleiche
wie das des Quellstreams ist, dann wird der format-Filter (siehe unten)
automatisch eingefügt, um das Format zu konvertieren.</DD>
</DL>
<H4><A NAME="af_resample">2.3.2.3.1 Up/Down-sampling</A></H4>
<P>MPlayer unterstützt vollständig Up-/Downsampling mit dem
resample-Filter. Dieser Filter kann benutzt werden, wenn du eine Soundkarte
hast, die nur eine feste Frequenz unterstützt, oder die nur maximal
44.1kHz unterstützt. Dieser Filter wird automatisch aktiviert, wenn er
benötigt wird. Er kann aber auch explizit auf der Kommandozeile aktiviert
werden. Er kennt drei Optionen:</P>
<DL>
<DT><CODE>srate <8000-192000></CODE></DT>
<DD>wird benutzt, um die Ausgabesmaplefrequenz in Hz anzugeben. Der
gültige Bereich liegt zwischen 8kHz und 192kHz. Wenn Eingangs-
und Ausgabefrequenz gleich sind, oder wenn dieser Parameter nicht angegeben
wurde, so wird der Filter wieder entladen. Hohe Samplefrequenzen verbessern
normalerweise die Audioqualität, vor allem, wenn auch andere
Filter benutzt werden.</DD>
<DT><CODE>sloppy</CODE></DT>
<DD>Mit dieser Option wird zugelassen, dass die Ausgabefrequenz leicht von
der geforderten Frequenz (<CODE>srate</CODE>) abweicht. Diese Option
kann benutzt werden, wenn das Playback nur sehr langsam startet.
Diese Option ist standardmäßig aktiviert.</DD>
<DT><CODE>type <0-2></CODE><DT>
<DD>ist ein optional anzugebender Integer zwischen <CODE>0</CODE> und
<CODE>2</CODE>, der den zu benutzenden Resamplealgorithmus auswählt.
Hier wählt <CODE>0</CODE> lineare Interpolation und <CODE>1</CODE>
mehrphasige Filterbänke mit Ganzahlarithmetik. <CODE>2</CODE>
wählt mehrphasige Filterbänke mit Fließkommaarithmetik.
Lineare Interpolation ist sehr schnell, liefert dafür aber auch
schlechte Qualität, vor allem, wenn sie benutzt wird, um die
Samplerate zu erhöhen. Die beste Qualität liefert <CODE>2</CODE>.
Dafür benötigt sie aber auch die meiste CPU-Zeit.</DD>
</DL>
<P>Beispiele:<BR>
<CODE>mplayer -af resample=44100:0:0</CODE></P>
<P>Dies setzt die Ausgabefrequenz des Resample-Filters auf exakt 44100Hz
mit linearer Interpolation.</P>
<H4><A NAME="af_channels">2.3.2.3.2 Ändern der Anzahl der Kanäle</A>
</H4>
<P>Der <CODE>channels</CODE>-Filter kann benutzt werden, um Kanäle
hinzuzufügen oder zu entfernen. Er kann auch benutzt werden, um
Kanäle umzuleiten oder sie zu kopieren. Er wird automatisch aktiviert,
falls die Anzahl der Kanäle bei Eingang und Ausgang der Audiofilterschicht
unterschiedlich ist, oder wenn ein anderer Filter diesen Filter benötigt.
Wenn er nicht gebraucht wird, so entlädt sich dieser Filter automatisch.
Die Anzahl der Parameter ist dynamisch:</P>
<DL>
<DT><CODE>nch <1-6></CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE>, die die
Anzahl der Ausgabekanäle festlegt. Dieser Parameter wird
benötigt. Wenn er weggelassen wird, dann erhält man einen
Laufzeitfehler.</DD>
<DT><CODE>nr <1-6></CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE>, die die
Anzahl der Umleitungen
festlegt. Dieser Parameter ist optional. Wenn er weggelassen wird, dann
werden keine Umleitungen vorgenommen.</DD>
<DT><CODE>von1:nach1:von2:nach2:von3:nach3...</CODE></DT>
<DD>sind paare von Nummern zwischen <CODE>0</CODE> und <CODE>5</CODE>, die
festlegen, wohin jeder Kanal umgeleitet werden soll.</DD>
</DL>
<P>Wenn nur <CODE>nch</CODE> angegeben wird, dann werden die
Standardumleitungen benutzt, die so aussehen: Wenn mehr Ausgabekanäle
gefordert sind als Eingangskanäle existieren, so werden leere Kanäle
erzeugt (bis auf's Mixen von Mono auf Stereo: hier wird der Monokanal auf beide
Kanäle kopiert). Ist die Anzahl dagegen kleiner, so werden die
überschüssigen Kanäle entfernt.</P>
<P>Beispiel 1:<BR>
<CODE>mplayer -af channels=4:4:0:1:1:0:2:2:3:3 media.avi </CODE></P>
<P>Ändert die Anzahl der Kanäle auf 4 und legt vier Routen fest, die
die Kanäle 0 und 1 vertauschen und die Kanäle 2 und 3 intakt lassen.
Wenn die Quelldatei nur zwei Kanäle hat, so sind die Kanäle 2 und 3
leise, aber 0 und 1 werden trotzdem vertauscht.</P>
<P>Beispiel 2:<BR>
<CODE>mplayer -af channels=6:4:0:0:0:1:0:2:0:3 media.avi </CODE></P>
<P>Ändert die Anzahl der Kanäle auf 6 und gibt 4 Routen an, die Kanal
0 auf Kanal 0 und 3 kopieren. Die Kanäle 4 und 5 bleiben stumm. </P>
<H4><A NAME="af_format">2.3.2.3.3 Formatkonvertierung</A></H4>
<P>Der <CODE>format</CODE>-Filter konvertiert zwischen verschiedenen
Sampleformaten. Er wird automatisch aktiviert, wenn er von der Soundkarte
oder einem anderen Filter benötigt wird.</P>
<DL>
<DT><CODE>bps <Nummer></CODE></DT>
<DD>kann <CODE>1</CODE>, <CODE>2</CODE> oder <CODE>4</CODE> sein und gibt die
Anzahl der Bytes pro Sample an.
Dieser Parameter wird benötigt und führt zu einem Laufzeitfehler,
wenn er weggelassen wird.</DD>
<DT><CODE>f <format></CODE></DT>
<DD>ist ein Textstring, der das Sampleformat beschreibt. Der String besteht
aus einem Mix der folgenden Schlüsselwörter:
<CODE>alaw</CODE>, <CODE>mulaw</CODE> oder
<CODE>imaadpcm</CODE>, <CODE>float</CODE> oder <CODE>int</CODE>,
<CODE>unsigned</CODE> oder <CODE>signed</CODE>, <CODE>le</CODE> oder
<CODE>be</CODE> (little oder big endian).
Dieser Parameter wird benötigt und führt zu einem Laufzeitfehler,
wenn er weggelassen wird.</DD>
</DL>
<P>Beispiel:<BR>
<CODE>mplayer -af format=4:float media.avi</CODE></P>
<P>setzt das Ausgabeformat auf 4 Bytes pro Sample Fließkommadaten.</P>
<H4><A NAME="af_delay">2.3.2.3.4 Verzögerung</A></H4>
<P>Der <CODE>delay</CODE>-Filter verzögert den Sound auf dem Weg zum
Lautsprecher, damit die verschiedenen Kanäle zur gleichen Zeit bei der
Sitzposition ankommen. Dieser Filter ist nur dann nützlich, wenn du mehr
als zwei Lautsprecher hast. Dieser Filter erhält eine variable Anzahl
Parameter:</P>
<DL>
<DT><CODE>d1:d2:d3...</CODE></DT>
<DD>sind Fließkommazahlen, die die Verzögerung in ms für
den jeweiligen Kanal angeben. Minimum ist 0ms, das Maximum 1000ms.</DD>
</DL>
<P>Um die benötigte Verzögerung für die verschiedenen
Kanäle zu berechnen, tu folgendes:</P>
<OL>
<LI>Miss die Entfernung zwischen den Lautsprechern und deiner Sitzposition
in Metern. Dies gibt dir die Distanzen s1 bis s5 (bei einem 5.1-System).
Es lohnt sich nicht, auch für den Subwoofer zu kompensieren, weil
man den Unterschied eh nicht hört.</LI>
<LI>Subtrahiere die Distanzen s1 bis s5 von der maximalen Distanz, z.B.<BR>
s[i] = max(s) - s[i]; i = 1...5</LI>
<LI>Berechne die benötigte Verzögerung wie folgt:<BR>
d[i] = 1000*s[i]/342; i = 1...5 </LI>
</OL>
<P>Beispiel:<BR>
<CODE>mplayer -af delay=10.5:10.5:0:0:7:0 media.avi</CODE></P>
<P>verzögert die Kanäle vorne links und vorne rechts um 10.5ms,
die beiden hinteren Kanäle um 0ms und den zentrierten Kanal um 7ms.</P>
<H4><A NAME="af_volume">2.3.2.3.5 Lautstärkekontrolle mit Software</A>
</H4>
<P>Lautstärkeregelung in Software wird mit dem <CODE>volume</CODE>-Filter
realisiert. Sei bei der Benutzung dieses Filters vorsichtig, da er den
Signal-zu-Rausch-Abstand verringern kann. In den meisten Fällen ist es
besser, beim Mixer deiner Soundkarte den PCM-Regler auf's Maximum zu setzen und
diesen Filter wegzulassen. Ändere dann die Lautstärke mit dem
Hauptregler des Mixers.
Wenn deine Soundkarte einen digitalen PCM-Mixer anstelle eines analogen
besitzt und du Verzerrungen hörst, dann benutze statt dessen den
MASTER-Mixer.
Wenn der Computer an einen externen Verstärker
angeschlossen ist (was meistens der Fall ist), dann kann der Rauschpegel
minimiert werden, indem der Hauptregler und der Lautstärkeregler des
Verstärkers angepasst werden, bis das Hintergrundzischen verschwunden ist.
Der Filter selber kennt zwei Parameter:</P>
<DL>
<DT><CODE>v <-200 - +60></CODE></DT>
<DD>ist eine Fließkommazahl zwischen <CODE>-200</CODE> und
<CODE>+60</CODE> und gibt die Lautstärke in dB an. Der Standardlevel
ist 0dB.</DD>
<DT><CODE>c</CODE></DT>
<DD>ist ein Binärwert, der soft clipping an- oder ausschaltet.
Soft clipping kann den Sound glätten, wenn sehr laute Passagen
auftreten. Aktivier diese Option, wenn die Dynamikbandbreite deiner
Lautsprecher gering ist. Sei gewanrt, dass dieses Feature Verzerrungen
hervorruft. Es sollte nur als letzte Möglichkeit benutzt werden.</DD>
</DL>
<P>Beispiel:<BR>
<CODE>mplayer -af volume=10.1:0 media.avi</CODE></P>
<P>verstärkt den Sound um 10.1dB und schneidet hart ab, wenn die
Lautstärke zu hoch wird.</P>
<P>Dieser Filter besitzt noch ein zweites Feature: Er misst die maximale
Lautstärke und gibt sie aus, wenn MPlayer beendet wird. Dieser Wert
kann benutzt werden, um die Verstärkung in MEncoder so zu setzen, dass
die Dynamikbandbreite vollständig ausgenutzt wird.</P>
<H4><A NAME="af_equalizer">2.3.2.3.6 Equalizer</A></H4>
<P>Der <CODE>equalizer</CODE>-Filter ist ein 10-Band Graphicequalizer, der
durch 10 IIR-Bandpassfilter (infinite impulse response, rekursive Filter)
realisiert wird. Das bedeutet, dass er unabhängig vom wiederzugebenden
Audiotyp funktioniert. Die Mittenfrequenzen der zehn Bändern sind:</P>
<TABLE BORDER="0" WIDTH="100%">
<TR><TD>Band Nr.</TD><TD>Mittenfrequenz</TD></TR>
<TR><TD>0</TD><TD>31.25 Hz</TD></TR>
<TR><TD>1</TD><TD>62.50 Hz</TD></TR>
<TR><TD>2</TD><TD>125.0 Hz</TD></TR>
<TR><TD>3</TD><TD>250.0 Hz</TD></TR>
<TR><TD>4</TD><TD>500.0 Hz</TD></TR>
<TR><TD>5</TD><TD>1.000 kHz</TD></TR>
<TR><TD>6</TD><TD>2.000 kHz</TD></TR>
<TR><TD>7</TD><TD>4.000 kHz</TD></TR>
<TR><TD>8</TD><TD>8.000 kHz</TD></TR>
<TR><TD>9</TD><TD>16.00 kHz</TD></TR>
</TABLE>
<P>Wenn die Samplefrequenz des Sounds niedriger als die Mittenfrequenz eines
Bandes ist, so wird dieses Band deaktiviert. Ein bekannter Fehler dieses
Filters liegt darin, dass die Charakteristiken des höchsten Bandes nicht
ganz symmetrisch sind, wenn die Samplefrequenz nahe der Mittenfrequenz des
Bandes liegt. Das kann umgangen werden, wenn vorher ein Upsampling mit dem
resample-Filter vorgenommen wird.</P>
<P>Dieser Filter bekommt zehn Parameter:</P>
<DL>
<DT><CODE>g1:g2:g3...g10</CODE></DT>
<DD>sind Fließkommazahlen zwischen <CODE>-12</CODE> und
<CODE>+12</CODE>, die die Verstärkung in dB des jeweiligen Bandes
angeben.</DD>
</DL>
<P>Beispiel:<BR>
<CODE>mplayer -af equalizer=11:11:10:5:0:-12:0:5:12:12 media.avi</CODE></P>
<P>verstärkt den Sound in den oberen und unteren Frequenzbereichen und
löscht ihn um 1kHz beinahe komplett aus.</P>
<H4><A NAME="af_panning">2.3.2.3.7 Panning-Filter</A></H4>
<P>Der <CODE>pan</CODE>-Filter kann benutzt werden, um Kanäle beliebig zu
mischen. Er ist grundlegend nur eine Kombination des Lautstärkefilters und
des channels-Filters. Es gibt zwei Haupteinsatzgebiete für diesen
Filter:</P>
<OL>
<LI>Heruntermischen vieler Kanäle auf wenige, z.B. Stereo zu Mono.</LI>
<LI>Verändern der "Breite" des zentrierten Kanals bei
Sourround-Sound-Systemem.</LI>
</OL>
<P>Dieser Filter ist nicht ganz leicht zu bedienen und benötigt viel
Ausprobieren, bevor die gewünschten Ergebnisse erzielt werden. Die Anzahl
der Parameter hängt von der Anzahl der Ausgabekanäle ab:</P>
<DL>
<DT><CODE>nch <1-6></CODE></DT>
<DD>ist eine ganze Zahl zwischen <CODE>1</CODE> und <CODE>6</CODE> und wird
benutzt, um die Anzahl
der Ausgabekanäle zu setzen. Dieser Parameter wird benötigt.
Wenn er weggelassen wird, erhält man einen Laufzeitfehler.</DD>
<DT><CODE>l00:l01:l02:..l10:l11:l12:...ln0:ln1:ln2:...</CODE></DT>
<DD>sind Fließkommazhalen zwischen <CODE>0</CODE> und
<CODE>1</CODE>. <CODE>l[i][j]</CODE>
gibt an, wieviel vom Einganskanal <CODE>j</CODE> in den Ausgabekanal
<CODE>i</CODE> zu mischen ist.</DD>
</DL>
<P>Beispiel 1:<BR>
<CODE>mplayer -af pan=1:0.5:0.5 -channels 1 media.avi</CODE></P>
<P>mischt stereo auf mono.</P>
<P>Beispiel 2:<BR>
<CODE>mplayer -af pan=3:1:0:1:0.5:0.5 -channels 3
media.avi</CODE></P>
<P>gibt drei Kanäle aus, lässt dabei Kanäle 0 und 1 intakt und
mischt die Quellkanäle 0 und 1 in den Ausgabekanal 2 (welcher z.B. an
einen Sub-woofer geschickt werden kann).
<H4><A NAME="af_sub">2.3.2.3.8 Sub-woofer</A></H4>
<P>Der <CODE>sub</CODE>-Filter fügt dem Audiostream einen Sub-woofer-Kanal
hinzu. Die dazu verwendeten Audiodaten sind der Durchschnitt der Kanäle 0
und 1. Der resultierende Sound wird dann mit einem Butterworth-Filter vierten
Grades tiefpassgefiltert. Der Filter schneidet bei 60Hz ab. Warnung: deaktivier
diesen Filter, wenn du DVDs mit Dolby Digital 5.1-Sound abspielst, weil dieser
Filter ansonsten den bereits vorhandenen Sub-woofer-Kanal stört. Dieser
Filter bekommt zwei Parameter:</P>
<DL>
<DT><CODE>fc <20-300></CODE></DT>
<DD>ist eine optionale Fließkommazahl, die die Frequenz in Hz angibt,
bei der Tiefpass abschneidet. Gültig sind Werte ziwschen
<CODE>20</CODE> und <CODE>300</CODE>. Das beste Ergebnis erhälst du,
wenn du die Frequenz so niedrig wie möglich setzt. Das wird das
Stereo- und Surround-Sound-Erlebnis verbessern. Der Standardwert für
die Frequenzgrenze liegt bei 60Hz.</DD>
<DT><CODE>ch <0-5></CODE></DT>
<DD>ist eine optionale ganze Zahl zwischen <CODE>0</CODE> und <CODE>5</CODE>,
die angibt, auf welchem Kanal der Sub-woofer-Kanal auszugeben ist.
Der Standardkanal ist <CODE>5</CODE>. Die gesamte Anzahl an Kanälen
wird auf <CODE>ch</CODE> erhöht, falls dies notwendig sein sollte.</DD>
</DL>
<P>Beispiel:<BR>
<CODE>mplayer -af sub=100:4 -channels 5 media.avi</CODE></P>
<P>fügt einen Sub-woofer-Kanal mit Grenzfrequenz von 100Hz hinzu und gibt
ihn auf Kanal 4 aus.</P>
<H4><A NAME="af_surround">2.3.2.3.9 Surround-sound-Decoder</A></H4>
<P>Matrix encodierter Surround-Sound kann mit dem <CODE>surround</CODE>-Filter
decodiert werden. Dolby Surround ist ein Beispiel für ein matrix
encodiertes Format. Viele Dateien mit Zweikanalaudio enthalten tatsächlich
matrix encodierten Surround-Sound. Um diesen Filter zu benutzen, brauchst du
eine Soundkarte, die mindestens vier Kanäle unterstützt. Dieser
Filter kennt einen Parameter:</P>
<DL>
<DT><CODE>d <0-1000></CODE></DT>
<DD>ist eine optionale Fließkommazahl zwischen <CODE>0</CODE> und
<CODE>1000</CODE>, die die Verzögerung in ms für den hinteren
Lautsprecher angibt. Die Verzögerung soltle wie folgt gewählt
werden: Wenn d1 die Entfernung zwischen der Sitzposition und den vorderen
Lautsprechern ist, und wenn d2 die Entfernung zwischen der Sitzposition
und den hinteren Lautsprechern ist, dann sollte <CODE>d</CODE> auf
15ms gesetzt werden, wenn d1 <= d2 ist, und auf 15 + 5*(d1-d2), wenn
d1 > d2 ist. Der Standardwert <CODE>d</CODE> ist 20ms.</DD>
</DL>
<P>Beispiel:<BR>
<CODE>mplayer -af surround=15 -channels 4 media.avi</CODE></P>
<P>decodiert Surround-Sound mit einer Verzögerung von 15ms für die
hinteren Lautsprecher.</P>
<H4><A NAME="plugins">2.3.2.4 Audio-Plugins (veraltet)</A></H4>
<H2><STRONG>Anmerkung: Audioplugins sind veraltet und wurden durch Audiofilter
ersetzt. Sie werden bald entfernt werden.</STRONG></H2>
<P>MPlayer bietet Unterstützung für Audio-Plugins. Audio-
Plugins können benutzt werden, um die Einstellungen der Audio-Daten zu
ändern, bevor sie die Soundkarte erreichen. Sie aktiviert durch die
Option <CODE>-aop</CODE> aktiviert, welche
<CODE>list=plugin1,plugin2,...</CODE> als Argument hat. Das <CODE>list</CODE>
wird benötigt, um festzulegen, in welcher Reihenfolge die Plugins benutzt
werden sollen. Beispiel:</P>
<P> <CODE>mplayer media.avi -aop list=resample,format</CODE></P>
<P>würde den Ton durch das Resampling-Plugin laufen lassen, gefolgt vom
Format-Plugins.</P>
<P>Die Plugins können auch Schalter haben, welche ihr Verhalten
ändern. Diese Schalter werden im unteren Abschnitt im Detail beschrieben.
Ein Plugin wird mit den Standardeinstellungen gestartet, wenn dem Plugin
Optionen mitgegeben werden. Hier ist ein Beispiel, wie man Plugins in
Kombination mit pluginspezifischen Schaltern verwendet:</P>
<P> <CODE>mplayer media.avi -aop
list=resample,format:fout=44100:format=0x8</CODE></P>
<P>würde die Ausgabefrequenz des Resample-Plugins auf 44100Hz and das
Ausgabeformat des Format-Plugins auf AFMT_U8 stellen.</P>
<P>Momentan können Audio-Plugins nicht im MEncoder verwendet
werden.</P>
<H4><A NAME="resample">2.3.2.4.1 Up/Downsampling</A></H4>
<P>MPlayer unterstützt vollständiges up/downsampling von
Audiostreams. Dieses Plugin kann verwendet werden, wenn man eine Soundkarte
mit fester Frequenz besitzt, oder wenn man eine alte Soundkarte am Hals hat,
welche nur max 44.1kHz verarbeitet. Ob die Verwendung dieses Plugins
benötigt wird oder nicht erkennt MPlayer <B>automatisch</B>.
Dieses Plugin hat einen Schalter, <CODE>fout</CODE>, welcher benutzt wird, um
die gewünschte Ausgabefrequenz zu setzen. Der Standard ist 48kHz und wird
in <Hz> angegeben.</P>
<P>Verwendung:<BR> <CODE>mplayer medium.avi -aop
list=resample:fout=<erforderliche Frequenz in Hz, z.B. 44100></CODE></P>
<P>Hinweis: Die Ausgabefrequenz sollte nicht vom Standard-Wert hochskaliert
werden. Die Skalierung führt dazu, dass der Audio- und Video-Stream in
Zeitlupe wiedergegeben werden, und man erhält zusätzlich
Audioverzerrungen.</P>
<H4><A NAME="surround_decoding">2.3.2.4.2 Surround-Sound-Decodierung</A></H4>
<P>MPlayer hat ein Audio-Plugin das matrix-codierten Surround Sound
decodieren kann. Dolby Surround ist ein Beispiel eines matrix-codierten
Formats. Viele Dateien mit zwei Audiokanälen enthalten tatsächlich
matrix Surround Sound. Um dieses Feature zu benutzen, brauchst du eine
Soundkarte mit mindestens vier Kanälen.</P>
<P>Verwendung:<BR>
<CODE>mplayer medium.avi -aop list=surround</CODE></P>
<H4><A NAME="format">2.3.2.4.3 Sample-Format-Konvertierer</A></H4>
<P>Wenn deine Soundkarte keinen signed 16bit <CODE>int</CODE> Datentyp
unterstützt, kann dieses Plugin benutzt werden, um das Format in eines zu
ändern, das deine Soundkarte versteht. Es hat nur einen Schalter
<CODE>format</CODE>, welcher auf eine Nummer gestellt werden kann, die man der
Datei <CODE>libao2/afmt.h</CODE> findet. Dieses Plugin wird praktisch nie
gebraucht und ist für erfahrene Anwender gedacht. Bedenke, dass dieses
Plugin nur das Sampleformat und nicht die Samplefrequenz oder die Anzahl
Kanäle ändert.</P>
<P>Verwendung:<BR>
<CODE>mplayer medium.avi -aop
list=format:format=<required output format></CODE></P>
<H4><A NAME="delay">2.3.2.4.4 Verzögerung</A></H4>
<P>Dieses Plugin verzögert den Ton und ist als Beispiel gedacht, wie man
neue Plugins schreibt. Es kann für nichts sinnvolles aus der
Anwenderperspektive verwendet werden und ist hier nur aus Gründen der
Vollständigkeit erwähnt. Verwende dieses Plugin nicht, wenn du kein
Entwickler bist.</P>
<P>Wenn du eine Datei mit einer konstanten A/V-Sync-Differenz hast, dann benutze
einfach die Tasten <CODE>+</CODE> und <CODE>-</CODE>, um das Timing während
des Abspielens anzupassen. Wenn das OSD aktiviert ist, dann werden die aktuellen
Werte angezeigt, was die Anpassung erleichtert.</P>
<H4><A NAME="volume">2.3.2.4.5 Software Lautstärkeregelung</A></H4>
<P>Dieses Plugin ist ein Software-Ersatz für die Lautstärkereglung
und kann in Maschinen mit kaputtem Mixer-Device verwendet werden. Es kann auch
verwendet werden, um die Ausgabelautstärke von MPlayer zu
ändern, ohne die Einstellung der PCM-Lautstärke im Mixer zu
ändern. Es gibt einen Schalter <CODE>volume</CODE>, welcher verwendet
wird, um den anfänglichen Schallpegel festzulegen. Der anfängliche
Schallpegel kann auf Werte zwischen 0 und 255 festgelegt werden (normal auf
101, was 0db Verstärkung entspricht). Benutze dieses Plugin mit Vorsicht,
da es den Signal/Rauschabstand verringern kann. In den meisten Fällen ist
es das beste, den Regler für PCM auf das Maximum zu stellen,
dieses Plugin nicht zu verwenden und die Lautstärke zu deinen Boxen mit
der Master-Lautstärkeregelung zu kontrollieren. Wenn deine Soundkarte
einen digitalen PCM-Mixer anstelle eines analogen verwendet und du Verzerrungen
hörst, so verwende statt dessen den MASTER-Mixer. Wenn ein externer
Verstärker mit dem Computer verbunden ist (was fast immer der Fall ist),
kann der Geräuschepegel durch die Anpassung des Master-Stufe und der
Lautstärkeknöpfe des Verstärkers minimiert werden, bis das
Hintergrundrauschen verschwindet.</P>
<P>Verwendung:<BR>
<CODE>mplayer media.avi -aop
list=volume:volume=<0-255></CODE></P>
<P>Dieses Plugin besitzt auch einen Kompressor oder "soft-clipping"-
Fähigkeiten. Die Kompression kann benutzt werden, wenn der Dynamikbereich
des Sounds sehr hoch ist, oder wenn der Dynamikbereich der Lautsprecher sehr
niedrig ist. Sei dir bewusst, dass dieses Feature Verzerrungen verursacht. Es
sollte erst als letzte Möglichkeit in Betracht gezogen werden.</P>
<P>Verwendung:<BR>
<CODE>mplayer media.avi -aop
list=volume:softclip</CODE></P>
<H4><A NAME="extrastereo">2.3.2.4.6 Extrastereo</A></H4>
<P>Dieses Plugin erhöht linear die Differenz zwischen dem linken und
rechten Kanal (wie das XMMS Extrastereo-Plugin), was zum Teil zu "live"-
Effekten bei der Wiedergabe führt.</P>
<P>Verwendung:<BR>
<CODE>mplayer media.avi -aop list=extrastereo</CODE><BR>
<CODE>mplayer media.avi -aop list=extrastereo:mul=3.45</CODE></P>
<P>Der Koeffizient (<CODE>mul</CODE>) ist eine Fließkommazahl,
welche standardmäßig auf 2.5 gestellt ist. Wenn man den Wert auf
0.0 setzt, erhält man einen Mono-Ton (Durchschnitt beider Kanäle).
Wenn man den Wert auf 1.0 setzt, bleibt der Ton gleich. Wenn man den Wert auf
-1.0 setzt, werden der linke und rechte Kanal vertauscht.</P>
<H4><A NAME="normalizer">2.3.2.4.7 Lautstärkenormalisierer</A></H4>
<P>Dieses Plugin maximiert die Lautstärke, ohne den Ton zu
verzerren.</P>
<P>Verwendung:<BR>
<CODE>mplayer media.avi -aop list=volnorm</CODE></P>
</BODY>
</HTML>
|