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
|
<!-- <?xml version="1.0" ?>
<!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd">
To validate or process this file as a standalone document, uncomment
this prolog. Be sure to comment it out again when you are done -->
<chapter id="arts-modules">
<title>&arts;-Module</title>
<sect1 id="modules-introduction">
<title>Einleitung</title>
<para>Dieses Kapitel beschreibt die Standardmodule von &arts;. Eine der mächtigsten Möglichkeiten von &arts; ist die Kombinierbarkeit von Modulen zu Strukturen, um neue Funktionen wie Effekte und Instrumente zu implementieren. </para>
<para>Die Module sind in Kategorien eingeteilt. Synthese-Module werden zur Implementation von <quote>Verbindungen</quote> benötigt, die Multimedia-Datenströme für neue Effekte, Instrumente, Mischer und Anwendungen zusammenfügen. Visuelle Module erlauben die Erzeugung einer graphischen Benutzeroberfläche zur Kontrolle der Klangstrukturen, die mit den Synthese-Modulen aufgebaut werden. </para>
</sect1>
<sect1 id="synth-modules-reference">
<title>Synthese-Modul Referenz</title>
<sect2 id="mcat-synth-arithmetic-mixing">
<title>Arithmetisch + Mix</title>
<sect3 id="mref-synth-add-sect">
<title>Synth_ADD</title>
<anchor id="mref-synth-add"/>
<mediaobject>
<imageobject>
<imagedata fileref="images/Synth_ADD.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_ADD</phrase></textobject>
</mediaobject>
<para>Addiert zwei Signale </para>
</sect3>
<sect3 id="mref-synth-mul-sect">
<title>Synth_MUL</title>
<anchor id="mref-synth-mul"/>
<mediaobject>
<imageobject>
<imagedata fileref="images/Synth_MUL.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_MUL</phrase></textobject>
</mediaobject>
<para>Multiplizert ein Signal mit einem Faktor. Sie können dieses Modul verwenden, um ein Signal zu reduzieren (0 < Faktor < 1) oder zu verstärken (Faktor > 1), oder um ein Signal zu invertieren (Faktor < 0). Der Faktor kann ebenfalls ein Signal sein und muss keine Konstante sein (z.B. eine Hüllkurve oder ein reales Signal). </para>
</sect3>
<sect3 id="mref-synth-div-sect">
<title>Synth_DIV</title>
<anchor id="mref-synth-div"/>
<mediaobject>
<imageobject>
<imagedata fileref="images/Synth_DIV.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_DIV</phrase></textobject>
</mediaobject>
<para>Dieses Modul teilt ein Signal durch einen Faktor. Es kann verwendet werden, um ein Signal durch ein anderes zu dividieren. Es kann aber auch invalue1 auf 1 gesetzt werden, damit das reziproke von invalue2 als outvalue erscheint. Allerdings darf dann invalue2 nicht 0 werden, da es sonst eine Division durch Null Probleme bereitet. </para>
</sect3>
<sect3 id="mref-synth-multi-add-sect">
<title>Synth_MULTI_ADD</title>
<anchor id="mref-synth-multi-add"/>
<mediaobject>
<imageobject>
<imagedata fileref="images/Synth_MULTI_ADD.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_MULTI_ADD</phrase></textobject>
</mediaobject>
<para>Addiert eine beliebige Anzahl von Signalen. Wenn Sie die Wellenformen von vier verschiedenen Oszillatoren addieren müssen, können Sie alle Ausgänge mit einem Synth_MULTI_ADD-Modul verbinden. Das ist effektiver als die Verwendung von drei Synth_ADD-Modulen. </para>
</sect3>
<sect3 id="mref-synth-xfade-sect">
<title>Synth_XFADE</title>
<anchor id="mref-synth-xfade"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_XFADE.png" format="PNG"/>
</imageobject>
<textobject><phrase>Synth_XFADE</phrase></textobject>
</mediaobject>
<para>Hiermit werden zwei Signale über Kreuz gemischt (crossfading). Wenn der Prozentsatz -1 beträgt, dann ist nur das linke, bei 1 nur das rechte und bei 0 sind beide Signale gleichstark hörbar. </para>
<para>Damit wird es möglich, ein Signal in einem definierten Bereich zu halten. Wenn Sie zwei Signale haben, die beide zwischen -1 und 1 vor dem Mischen waren, befindet sich das gemischte Signal ebenfalls zwischen -1 und 1. </para>
</sect3>
<sect3 id="mref-synth-autopanner-sect">
<title>Synth_AUTOPANNER</title>
<anchor id="mref-synth-autopanner"/>
<para>Das Gegenteil eines crossfaders. Hier wird ein Monosignal aufgeteilt in ein Stereosignal: Das Modul kann das Signal automatisch zwischen dem rechten und linken Kanal aufteilen. Das macht lebendigere Mischungen möglich. Eine Standardanwendung wäre ein Gitarren- oder Gesangsklang. </para>
<para>Verbinden Sie einen <acronym>LFO</acronym>, eine Sinus- oder Sägezahnschwingung mit inlfo und wählen Sie eine Frequenz zwischen 0.1 und 5Hz für einen traditionellen Effekt oder eine höhere Frequenz für einen Special <acronym>FX</acronym>. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-busses">
<title>Busse</title>
<sect3 id="mref-synth-bus-uplink-sect">
<title>Synth_BUS_UPLINK</title>
<anchor id="mref-synth-bus-uplink"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_BUS_UPLINK.png"
format="PNG"/>
</imageobject>
<textobject><phrase>Synth_BUS_UPLINK</phrase></textobject>
</mediaobject>
<para>Ein Uplink zu einem Bus. Legen Sie ein Signal auf den linken und rechten Eingang und geben Sie dem <quote>Bus</quote> einen Namen, auf den die Daten gesendet werden sollen. Das kombinierte Signal von allen Uplinks mit dem gleichen Namen wird auf jedem Downlink mit diesem Namen anliegen. </para>
</sect3>
<sect3 id="mref-synth-bus-downlink-sect">
<title>Synth_BUS_DOWNLINK</title>
<anchor id="mref-synth-bus-downlink"/>
<mediaobject>
<imageobject>
<imagedata fileref="images/Synth_BUS_DOWNLINK.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_BUS_DOWNLINK</phrase></textobject>
</mediaobject>
<para>Empfängt (Summe) alle Daten, die auf einen bestimmten Bus (der Name, den Sie beim Kanal <quote>bus</quote> festlegen) gesendet werden. </para>
</sect3>
</sect2>
<!-- TODO AFTER KDE2.1: move freeverb into delays, and rename category to
Delays & reverbs -->
<sect2 id="mcat-synth-delays">
<title>Verzögerungen</title>
<sect3 id="mref-synth-delay-sect">
<title>Synth_DELAY</title>
<anchor id="mref-synth-delay"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_DELAY.png"
format="PNG"/></imageobject></mediaobject>
<para>Verzögert das Eingangssignal um eine bestimmte Zeit. Die Zeit muss zwischen 0 und maxdelay für eine Verzögerung zwischen 0 und maxdelay Sekunden liegen. </para>
<para>Diese Art von Verzögerungen darf <emphasis>nicht</emphasis> in rückgekoppelten Strukturen verwendet werden, weil es sich um eine variable Verzögerungszeit handelt. Sie können die Zeit ändern, während das Modul läuft und sie auch auf Null setzen. Da aber in einer rückgekoppelten Struktur das eigene Ausgangssignal für die Berechnung des nächsten Eingangssignals notwendig ist, könnte eine Verzögerung, die auf Null abfällt, zu einem Einfrieren führen. </para>
<para>In einem solchen Fall können Sie aber CDELAY verwenden. Nehmen Sie eine geringe konstante Verzögerung (z.B. 0.001 Sekunden) zusammen mit einer einstellbaren Verzögerung. </para>
<para>Außerdem können Sie CDELAY und DELAY kombinieren, um eine variable Verzögerung mit einem positiven Minimalwert in einem rückgekoppelten System zu erhalten. Wichtig ist nur, das ein CDELAY-Modul vorhanden ist. </para>
</sect3>
<sect3 id="mref-synth-cdelay-sect">
<title>Synth_CDELAY</title>
<anchor id="mref-synth-cdelay"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_CDELAY.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_CDELAY</phrase></textobject>
</mediaobject>
<para>Verzögert das Eingangssignal um eine bestimmte Zeitspanne. Die Zeit muss größer als 0 für eine Verzögerung von mehr als 0 Sekunden sein. Die Verzögerung ist konstant während der Berechnung, kann also nicht verändert werden. </para>
<para>Das spart Rechenzeit, da keine Interpolation notwendig ist, und ist nützlich für rekursive Strukturen.Siehe weiter oben (Synth_DELAY). </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-envelopes">
<title>Hüllkurven</title>
<sect3 id="mref-synth-envelope-adsr-sect">
<title>Synth_ENVELOPE_ADSR</title>
<anchor id="mref-synth-envelope-adsr"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_ENVELOPE_ADSR.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_ENVELOPE_ADSR</phrase></textobject>
</mediaobject>
<para>Dies ist eine klassische <acronym>ADSR</acronym>-Hüllkurve, das heißt Sie können folgendes festlegen: </para>
<variablelist>
<varlistentry>
<term>active</term>
<listitem>
<para>Ob die Taste gerade vom Benutzer gedrückt wird. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>invalue</term>
<listitem>
<para>Das Eingangssignal. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>attack</term>
<listitem>
<para>Die Zeit zwischen dem Niederdrücken der Taste und dem Zeitpunkt zu dem das Signal seine maximale Amplitude erreicht (in Sekunden). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>decay</term>
<listitem>
<para>Die Zeit, bis das Signal nach dem Maximalwert einen konstanten Dauerwert annimmt (in Sekunden). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>sustain</term>
<listitem>
<para>Der konstante Dauerwert, bei dem das Signal gehalten wird, nachdem der Benutzer die Taste wieder losgelassen hat. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>release</term>
<listitem>
<para>Die Zeit vom Loslassen der Taste bis das Signal den Wert Null wiedererreicht hat (in Sekunden). </para>
</listitem>
</varlistentry>
</variablelist>
<para>Das skalierte Signal liegt am Ausgang (outvalue) an. Wenn die <acronym>ADSR</acronym>-Hüllkurve beendet ist, wird der Ausgang done auf 1 gesetzt. Das können Sie verwenden, um für ein Instrument das Signal <quote>done</quote> zu generieren (das dazu führt, das die Struktur vom &MIDI;-Router nach dem Ende der Release-Phase gelöscht wird). </para>
</sect3>
<sect3 id="mref-synth-pscale-sect">
<title>Synth_PSCALE</title>
<anchor id="mref-synth-pscale"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_PSCALE.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_PSCALE</phrase></textobject>
</mediaobject>
<para>Das Synth_PSCALE-Modul skaliert einen Audiostrom von der Lautstärke 0 (Stille) bis 1 (Maximallautstärke) und zurück zu 0 (Stille). Gesteuert wird das durch den Eingang Position (pos) (dieser Eingang kann mit dem entsprechenden Ausgang von Synth_SEQUENCE belegt werden). Die Stelle, an der der Maximalwert erreicht werden soll, kann als Eingang pos angegeben werden. </para>
<para>Beispiel: Setzen Sie top auf 0.1. Das bedeutet, nach 10% der Note erreicht die Lautstärke ihren Maximalwert und klingt danach aus. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-effects">
<title>Effekte</title>
<sect3 id="mref-synth-freeverb-sect">
<title>Synth_FREEVERB</title>
<anchor id="mref-synth-freeverb"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_FREEVERB.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_FREEVERB</phrase></textobject>
</mediaobject>
<para>Dies ist ein Nachhall-Effekt. In der augenblicklichen Implementation kann ein Stereosignal durch diesen Effekt geschickt werden. Dabei wird der Nachhall zum ursprünglichen Signal addiert. </para>
<note>
<para>Das bedeutet, Sie können das Modul ein innerhalb eines Stereo-Effektstapels verwenden. </para>
</note>
<para>Das Eingangssignal wird mit inleft und inright verbunden, das Ausgangssignal liegt bei outleft und outright an. </para>
<para>Sie können folgende Parameter festlegen: </para>
<variablelist>
<varlistentry>
<term>roomsize</term>
<listitem>
<para>Die Größe des Raumes, für den der Nachhall simuliert wird (Bereich: 0..1, wobei 1 demgrößtmöglichen Raum entspricht). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>damp</term>
<listitem>
<para>Dies steuert einen Filter, der die Raumsimulation hohe Frequenzen absorbieren lässt. Der Bereich liegt zwischen 0 (keine Absorption) und 1 (sehr viel Absorption der hohen Frequenzen). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>wet</term>
<listitem>
<para>der Anteil des Nachhall-Signals (das ist der Anteil des Signals, das durch die Filter verändert und zu einer <quote>nicht trockenen</quote> Akustik, also einem <quote>halligen Klang</quote> führt. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>dry</term>
<listitem>
<para>der Anteil des ursprünglichen Signals, der durchgelassen werden soll. Er führt eher zu einem Echo (oder kombinierter Verzögerung) anstatt einem Nachhall-Effekt (Bereich: 0..1) </para>
<!-- TODO: do some measurements to show that this documentation -is- correct,
I am not sure if it is echo, or really pure (non-delayed), or multiple delay
or whatever -->
</listitem>
</varlistentry>
<varlistentry>
<term>width</term>
<listitem>
<para>Der Anteil an Stereo-Magie, den der Nachhall-Effekt hinzufügt und zu einem breiteren Klang im Stereo-Panorama führt (Bereich: 0..1). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>mode</term>
<listitem>
<para>[ TODO: Ich glaube, wenn mode 1 ist, wird das ursprüngliche Klangbild beibehalten, während mode 0 der normale Arbeitsmodus ist ] </para>
</listitem>
</varlistentry>
</variablelist>
</sect3>
<sect3 id="mref-synth-tremolo-sect">
<title>Synth_TREMOLO</title>
<anchor id="mref-synth-tremolo"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_TREMOLO.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_TREMOLO</phrase></textobject>
</mediaobject>
<para>Das Tremolo-Modul verändert die Amplitude entsprechend einer <acronym>LFO</acronym>-Welle. Üblicherweise verwendet man dazu eine Sinusschwingung, aber das ist nicht zwingend notwendig. Man erhält einen intensiven Effekt, der in vielen Arrangements wegen seiner großen Dynamik sehr durchdringend ist. Der Tremolo-Effekt ist einer der liebsten Effekte für Gittaristen, wenn er auch nicht mehr so populär wie in den 1960ern ist. </para>
<para>[TODO: augenblicklich ist dieser Effekt als invalue + abs(inlfo) implementiert - vielleicht wäre es sinnvoller, diesen als invalue * (1+inlfo*depth) zu implementieren, wobei depth den Bereich 0..1 hat - das wird nach KDE2.1 entschieden. Falls Sie Anmerkungen haben, schicken Sie eine Mail an die &arts;-Liste ;). ] </para>
</sect3>
<sect3 id="mref-synth-fx-cflanger-sect">
<title>Synth_FX_CFLANGER</title>
<anchor id="mref-synth-fx-cflanger"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_FX_CFLANGER.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_FX_CFLANGER</phrase></textobject>
</mediaobject>
<para>Ein Flanger ist ein zeitveränderlicher Verzögerungseffekt. Um die Entwicklung von umfangreichen Flanger-Effekten einfacher zu gestalten, wurde dieses Modul hinzugefügt, das den Kern eines Ein-Kanal-Flangers darstellt. </para>
<para>Folgende Kanäle sind vorhanden:</para>
<variablelist>
<varlistentry>
<term>invalue</term>
<listitem>
<para>Das Signal, das verarbeitet werden soll. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>lfo</term>
<listitem>
<para>Möglichst eine Sinusschwingung, die die Verzögerungszeit (delay) innerhalb des Flangers moduliert (-1 .. 1). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>mintime</term>
<listitem>
<para>Der minimale Wert für die Verzögerung (delay) innerhalb des Flangers in Millisekunden. Empfohlene Werte: versuchen sie etwa 1 ms. Bitte verwenden Sie Werte < 1000 ms. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>maxtime</term>
<listitem>
<para>Der minimale Wert für die Verzögerung (delay) innerhalb des Flangers in Millisekunden. Empfohlene Werte: versuchen sie etwa 5 ms. Bitte verwenden Sie Werte < 1000 ms. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>outvalue</term>
<listitem>
<para>Das Ausgangssignal. Für den Effekt ist es wichtig, dass dieses Signal mit dem ursprünglichen (nicht veränderten) Signal gemischt wird. </para>
</listitem>
</varlistentry>
</variablelist>
<tip>
<para>Sie können dieses als die Basis für einen Choreffekt verwenden. </para>
</tip>
</sect3>
</sect2>
<sect2 id="mcat-synth-filters">
<title>Filter</title>
<sect3 id="mref-synth-pitch-shift-sect">
<title>Synth_PITCH_SHIFT</title>
<anchor id="mref-synth-pitch-shift"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_PITCH_SHIFT.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_PITCH_SHIFT</phrase></textobject>
</mediaobject>
<para>Dieser Höhenverschiebungseffekt verändert die Frequenz des Eingangssignals ohne die Geschwindigkeit des Signals zu verändern. Eine Anwendung für diesen Effekt ist die Veränderung Ihrer Stimme, während Sie sie aufnehmen (und abspielen) in Echtzeit </para>
<para>Der Parameter <emphasis>speed</emphasis> gibt die relative Geschwindigkeit wieder, mit der das Signal wiedergegeben wird. Eine Geschwindigkeit von 2 würde den Klang auf die doppelte Frequenz anheben (z.B. würde eine Eingangsfrequenz von 440Hz zu einer Ausgangsfrequenz von 880Hz führen). </para>
<para>Der Parameter <emphasis>frequency(Frequenz)</emphasis> wird intern verwendet, um zwischen unterschiedlichen Signalgüten umzuschalten. Abhängig von Ihrer Wahl wird der erzeugte Klang mehr oder weniger realistisch sein. Ein guter Startwert liegt zwischen 5 und 10. </para>
</sect3>
<sect3 id="mref-synth-shelve-cutoff-sect">
<title>Synth_SHELVE_CUTOFF</title>
<anchor id="mref-synth-shelve-cutoff"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_SHELVE_CUTOFF.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_SHELVE_CUTOFF</phrase></textobject>
</mediaobject>
<para>Filtert alle Frequenzen oberhalb einer Grenzfrequenz heraus. </para>
</sect3>
<sect3 id="mref-synth-brickwall-limiter-sect">
<title>Synth_BRICKWALL_LIMITER</title>
<anchor id="mref-synth-brickwall-limiter"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_BRICKWALL_LIMITER.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_BRICKWALL_LIMITER</phrase></textobject>
</mediaobject>
<para>Dieses Modul beschneidet ein Signal, um es in den Bereich von [-1;1] einzupassen. Es werden keine Maßnahmen gegen die Störungen getroffen, die beim Abschneiden lauter Signale entstehen. Sie können das als Effekt verwenden (z.B. um eine leicht abgeschnittene Sinusschwingung zu erzeugen). Es ist wahrscheinlich meistens eine gute Idee, das Resultat durch einen Tiefpassfilter zu schicken, damit es nicht so aggressiv klingt. </para>
</sect3>
<sect3 id="mref-synth-std-equalizer-sect">
<title>Synth_STD_EQUALIZER</title>
<anchor id="mref-synth-std-equalizer"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_STD_EQUALIZER.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_STD_EQUALIZER</phrase></textobject>
</mediaobject>
<para>Ein hübsches Modul eines parametrischen Equalizers. Folgende Parameter sind vorhanden: </para>
<variablelist>
<varlistentry>
<term>invalue, outvalue</term>
<listitem>
<para>Das Signal, das durch den Equalizer gefiltert wird. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>low</term>
<listitem>
<para>Wie tiefe Frequenzen verändert werden sollen. Der Wert ist in dB, wobei 0 keine Änderung der tiefen Frequenzen bedeutet, -6 bedeutet Absenkung um 6dB und +6 bedeutet Anhebung um 6dB. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>mid</term>
<listitem>
<para>Wie mittlere Frequenzen durch den Equalizer verändert werden sollen in dB (siehe auch low). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>high</term>
<listitem>
<para>Wie hohe Frequenzen durch den Equalizer verändert werden sollen in dB (siehe auch low). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>frequency</term>
<listitem>
<para>Dies ist die zentral Frequenz des Equalizers in Hz, die mittleren Frequenzen befinden sich in diesem Bereich, die hohen und tiefen Frequenz oberhalb und unterhalb. Anmerkung: die Frequenz kann nicht höher als die halbe Samplingrate sein, also normalerweise 22050Hz, und nicht tiefer als 1 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>q</term>
<listitem>
<para>Beeinflusst die Breite des Frequenzspektrums. Es sind nur positive Zahlen > 0 erlaubt. Der Wert Eins ist sinnvoll, höhere Werte von q bedeuten ein schmaleres Frequenzband der mittleren Frequenzen, geringere Werte ein breiteres Band. </para>
</listitem>
</varlistentry>
</variablelist>
</sect3>
<sect3 id="mref-synth-rc-sect">
<title>Synth_RC</title>
<anchor id="mref-synth-rc"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_RC.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_RC</phrase></textobject>
</mediaobject>
<para>Ein gedämpfter Schwingkreis, der alle Frequenzen um seine Resonanzfrequenz filtert. Es gibt keine leichte Möglichkeit, die Resonanzfrequenz festzulegen (die nicht herausgefiltert wird), da es nur zwei ungewöhnliche Konstanten f und b gibt. Der Programmteil stammt noch aus den ersten Tagen von Synthesizern und wird vermutlich durch einen neuen Filter ersetzt werden, bei dem man die Frequenz und den Resonanzwert als Parameter hat. </para>
<para>Versuchen Sie etwa b=5, f=5 oder b=10, f=10 oder b=15, f=15. </para>
</sect3>
<sect3 id="mref-synth-moog-vcf-sect">
<title>Synth_MOOG_VCF</title>
<anchor id="mref-synth-moog-vcf"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_MOOG_VCF.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_MOOG_VCF</phrase></textobject>
</mediaobject>
<para>Filtert alle Frequenzen oberhalb einer Grenzfrequenz heraus (es handelt sich um einen 24db 4pole-Filter, der -24db pro Oktave oberhalb der Grenzfrequenz absenkt), es gibt einen zusätzlichen Parameter, um die Resonanz einzustellen, 0 bedeutet keine Resonanz und 4 bedeutet selbstoszillierend. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-midi-sequencing">
<title>Midi + Sequenzer</title>
<sect3 id="mref-synth-midi-test-sect">
<title>Synth_MIDI_TEST</title>
<anchor id="mref-synth-midi-test"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_MIDI_TEST.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_MIDI_TEST</phrase></textobject>
</mediaobject>
<para>Dieses Modul lädt eine Instrumentenstruktur aus einer Datei und registriert sich als &MIDI;-Ausgangskanal beim &arts;-&MIDI;-Manager. Noten, die an diesen Ausgang gesendet werden, erzeugen Töne dieses Instrumentes. </para>
<note>
<para>Sie können so etwas mit &artscontrol; leichter einrichten als manuell in &arts-builder;. </para>
</note>
</sect3>
<sect3 id="mref-synth-sequence-sect">
<title>Synth_SEQUENCE</title>
<anchor id="mref-synth-sequence"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_SEQUENCE.png"
format="PNG"/></imageobject></mediaobject>
<para>Spielt eine Sequenz von Noten immer wieder. Die Noten werden in Tracker Notation angegeben und durch Semikolons voneinander getrennt. Ein Beispiel ist <literal>A-3;C-4;E-4;C-4;</literal>. Die Geschwindigkeit wird in Sekunden pro Note angegeben, wenn Sie also 120 BPM anvisieren, legen Sie die Geschwindigkeit auf 0.5 Sekunden fest, da 60 Sekunden / 0.5 Sekunden pro Note auf 120 BPM führt. </para>
<para>Sie können für jede Note eine individuelle Länge relativ zur Grundlänge festlegen durch einen Doppelpunkt gefolgt von der Länge hinter der Notenbezeichnung. Ein Beispiel dafür ist <literal>A-3:2;C-4:0.5;D-4:0.5;E-4;</literal>. Midi-Kompositionsprogramme ist ein wenig komfortabler ;) </para>
<para>Das Synth_SEQUENCE-Modul gibt zusätzliche Informationen über die Position innerhalb der gerade wiedergegebenen Note aus, wobei 0 gerade begonnen und 1 gerade beendet bedeutet. Diese Informationen können im Synth_PSCALE-Modul verwendet werden (siehe unten). </para>
</sect3>
<sect3 id="mref-synth-sequence-freq-sect">
<title>Synth_SEQUENCE_FREQ</title>
<anchor id="mref-synth-sequence-freq"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_SEQUENCE_FREQ.png"
format="PNG"/></imageobject></mediaobject>
<para>Dieses Modul arbeitet gleich dem Synth_SEQUENCE, einziger Unterschied ist, das es keine Notennamen, sondern Frequenzen annimmt. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-samples">
<title>Samples</title>
<sect3 id="mref-synth-play-wav-sect">
<title>Synth_PLAY_WAV</title>
<anchor id="mref-synth-play-wav"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_PLAY_WAV.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_PLAY_WAV</phrase></textobject>
</mediaobject>
<para>Dieser Menüpunkt spielt eine <literal role="extension">wav</literal>-Datei ab. Er ist nur dann verfügbar, wenn Sie libaudiofile auf Ihrem Computer installiert haben. Die wave-Datei startet, sobald das Modul erstellt wird. </para>
<para>Sie stoppt, sobald das Ende der wav-Datei erreicht ist. Zusätzlich wird der Parameter finished (beendet) auf 1 gesetzt. Der Geschwindigkeitsparameter (speed) kann verwendet werden, um die Datei schneller oder langsamer wiederzugeben, wobei 1.0 der normalen (aufgenommenen) Geschwindigkeit entspricht. </para>
<!-- TODO: KDE2.2: check that this really works together in instruments with
the done parameter things ;) -->
</sect3>
</sect2>
<sect2 id="mcat-synth-soundio">
<title>Klang-IO</title>
<sect3 id="mref-synth-play-sect">
<title>Synth_PLAY</title>
<anchor id="mref-synth-play"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_PLAY.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_PLAY</phrase></textobject>
</mediaobject>
<important>
<para>Sie werden dieses Modul normalerweise nicht benötigen, wenn Sie nicht selbstständige Anwendungen erstellen. Innerhalb von &artsd; existiert bereits ein Modul Synth_PLAY und ein zweites wird nicht funktionieren. </para>
</important>
<para>Das Synth_PLAY-Modul gibt ein Audio-Signal auf die Soundkarte aus. Die linken und rechten Kanäle sollten die <emphasis>normalisierten</emphasis> Eingangssignale für die Kanäle enthalten. Wenn sich das Eingangssignal nicht zwischen -1 und 1 befindet, werden zu hohe Amplituden abgeschnitten (clipping). </para>
<para>Wie bereits gesagt, darf es nur ein Synth_PLAY-Modul geben, da es direkt auf die Soundkarte zugreift. Verwenden Sie Busse, wenn Sie mehr als einen Audiostrom mischen wollen. Verwenden Sie das Modul Synth_AMAN_PLAY, um eine Ausgabe innerhalb von &artsd; zu erzeugen. </para>
<para>Anmerkung: Das Synth_PLAY-Modul übernimmt das gesamte Timing für die Struktur. Das bedeutet: Wenn Sie kein Synth_PLAY-Modul haben, haben Sie kein Timing und damit auch keine Klangausgabe. Sie benötigen also (genau) ein Synth_PLAY-Objekt. </para>
</sect3>
<sect3 id="mref-synth-record-sect">
<title>Synth_RECORD</title>
<anchor id="mref-synth-record"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_RECORD.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_RECORD</phrase></textobject>
</mediaobject>
<important>
<para>Sie werden dieses Modul vermutlich niemals benötigen, es sei denn, Sie schreiben selbstständige Anwendungen. Innerhalb von artsd befindet sich bereits ein Synth_RECORD-Modul und ein zweites funktioniert nicht. </para>
</important>
<para>Das Synth_RECORD-Modul nimmt ein Signal von Ihrer Soundkarte auf. Die Eingangskanäle left (links) und right (rechts) enthalten die Eingangssignale von der Soundkarte (zwischen -1 und 1). </para>
<para>Wie bereits gesagt kann nur ein Synth_RECORD-Modul verwendet werden, da es direkt auf die Soundkarte zugreift. Verwenden Sie Busse, wenn Sie einen Audiodatenstrom an mehr als einer Stelle verwenden möchten. Verwenden Sie das Modul Synth_AMAN_RECORD, um einen Eingang innerhalb von artsd zu erzeugen. Damit das funktioniert, muss &artsd; mit <emphasis>Full-Duplex aktiviert</emphasis> gestartet werden. </para>
</sect3>
<sect3 id="mref-synth-aman-play-sect">
<title>Synth_AMAN_PLAY</title>
<anchor id="mref-synth-aman-play"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_AMAN_PLAY.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_AMAN_PLAY</phrase></textobject>
</mediaobject>
<para>Das Modul Synth_AMAN_PLAY gibt ein Ausgangssignal aus. Es sollte (nicht notwendigerweise) normalisiert (zwischen -1 und 1) sein. </para>
<para>Dieses Modul verwendet den Audiomanager, um festzulegen, wo das Signal wiedergegeben wird. Der Audiomanager kann mit Hilfe von &artscontrol; gesteuert werden. Um die Verwendung intuitiver zu gestalten, sollten Sie dem Signal einen Namen geben. Das können Sie, indem Sie den Parameter <emphasis>title (Titel)</emphasis> verwenden. Eine weitere Besonderheit des Audiomanagers ist die Fähigkeit, den letzten Wiedergabekanal eines Signals zu speichern. Dazu muss er die Signale unterscheiden können. Aus diesem Grund sollten Sie <emphasis>autoRestoreID</emphasis> einen eindeutigen Wert geben. </para>
</sect3>
<sect3 id="mref-synth-aman-record-sect">
<title>Synth_AMAN_RECORD</title>
<anchor id="mref-synth-aman-record"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_AMAN_RECORD.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_AMAN_RECORD</phrase></textobject>
</mediaobject>
<para>Das Modul Synth_AMAN_RECORD kann Daten einer externen Quelle (z.B. Line In / Mikrofon) innerhalb von artsd aufnehmen. Die Ausgabe ist ein normalisiertes Signal (zwischen -1 und 1). </para>
<para>Über den Audiomanager kann festgelegt werden, von wo das Signal aufgenommen wird. Der Audiomanager kann mit Hilfe von artscontrol gesteuert werden. Um die Verwendung intuitiver zu gestalten, sollten Sie dem Signal einen Namen geben. Das können Sie, indem Sie den Parameter <emphasis>title (Titel)</emphasis> verwenden. Eine weitere Besonderheit des Audiomanagers ist die Fähigkeit, den letzten Wiedergabekanal eines Signals zu speichern. Dazu muss er die Signale unterscheiden können. Aus diesem Grund sollten Sie <emphasis>autoRestoreID</emphasis> einen eindeutigen Wert geben. </para>
</sect3>
<sect3 id="mref-synth-capture-sect">
<title>Synth_CAPTURE</title>
<anchor id="mref-synth-capture"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_CAPTURE.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_CAPTURE</phrase></textobject>
</mediaobject>
<para>Das Synth_CAPTURE-Modul kann ein Audiosignal in eine wav-Datei auf Ihrer Festplatte schreiben. Die Datei hat immer den Namen <filename>/tmp/mcop-<replaceable>usename</replaceable>/capture.wav</filename> </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-tests">
<title>Tests</title>
<sect3 id="mref-synth-nil-sect">
<title>Synth_NIL</title>
<anchor id="mref-synth-nil"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_NIL.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_NIL</phrase></textobject>
</mediaobject>
<para>Macht gar nichts. Das Modul ist sinnvoll zum Testen. </para>
</sect3>
<sect3 id="mref-synth-debug-sect">
<title>Synth_DEBUG</title>
<anchor id="mref-synth-debug"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_DEBUG.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_DEBUG</phrase></textobject>
</mediaobject>
<para>Kann zum debuggen verwendet werden. Es gibt den Wert des Signals invalue in gleichbleibenden Abständen (etwa 1 Sekunde) zusammen mit einem von Ihnen festgelegten Kommentar aus. Auf diese Weise können Sie herausfinden, ob gewisse Signale in gewissen Bereichen bleiben oder ob sie überhaupt vorhanden sind. </para>
</sect3>
<sect3 id="mref-synth-midi-debug-sect">
<title>Synth_MIDI_DEBUG</title>
<anchor id="mref-synth-midi-debug"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_MIDI_DEBUG.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_MIDI_DEBUG</phrase></textobject>
</mediaobject>
<para>Hiermit können Sie überprüfen, ob Ihre &MIDI;-Ereignisse &arts; überhaupt erreichen. </para>
<para>Wenn ein MIDI_DEBUG aktiv ist, druckt &artsserver; etwa die folgenden Angaben: </para>
<screen><computeroutput>201 100753.837585 on 0 42 127</computeroutput></screen>
<screen><computeroutput>202 101323.128355 off 0 42</computeroutput></screen>
<para>Die erste Zeile teilt mit, das 100753ms (das sind 100 Sekunden) nach dem Start von MIDI_DEBUG das &MIDI;-Ereignis "Note an" auf Kanal 0 eingetroffen ist.Dieses Ereignis hatte die Lautstärke (velocity) 127, also den lautest möglichen Wert. Die nächste Zeile zeigt das zugehörige "Note aus"-Ereignis.[ TODO: Das funktioniert momentan noch nicht. Reparieren und durch den &MIDI;-Manager leiten]. </para>
</sect3>
<sect3 id="mref-synth-data-sect">
<title>Synth_DATA</title>
<anchor id="mref-synth-data"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_DATA.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_DATA</phrase></textobject>
</mediaobject>
<para>Erzeugt ein Signal mit einer konstanten Nummer. </para>
<!-- TODO: this doesn't really belong in test, does it? -->
</sect3>
</sect2>
<sect2 id="mcat-synth-osc-mod">
<title>Oszillation & Modulation</title>
<sect3 id="mref-synth-frequency-sect">
<title>Synth_FREQUENCY</title>
<anchor id="mref-synth-frequency"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_FREQUENCY.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_FREQUENCY</phrase></textobject>
</mediaobject>
<para>Keiner der Oszillatoren in &arts; benötigt eine Frequenz als Eingabe, sondern nur eine Position innerhalb der Welle. Die Position muss zwischen 0 und 1 liegen. Das wird für ein Standard-Synth_WAVE_SIN-Modul auf den Bereich 0 bis 2*Pi umgerechnet. Um eine bestimmte Frequenz zu erzeugen, benötigen Sie ein Synth_FREQUENCY-Modul. </para>
</sect3>
<sect3 id="mref-synth-fm-source-sect">
<title>Synth_FM_SOURCE</title>
<anchor id="mref-synth-fm-source"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_FM_SOURCE.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_FM_SOURCE</phrase></textobject>
</mediaobject>
<para>Dieses Modul wird für Frequenzmodulation benötigt. Legen Sie die Grundfrequenz an den Frequenzeingang und ein anderes Signal an den Modulationseingang. Setzen Sie den Modulationswert (modlevel) etwa auf 0.3. Die Frequenz wird mit dem Modulationssignal moduliert. Ein interessantes Signal entsteht, wenn man ein rückgekoppeltes Signal verwendet, d.h. eine Kombination des verzögerten Ausgangssignals von Synth_FM_SOURCE (sie müssen es mit einem Oszillator verbinden, da es nur die Rolle von Synth_FREQUENCY übernimmt), und irgendein anderes Signal. </para>
<para>Arbeitet gut mit Synth_WAVE_SIN-Oszillatoren zusammen. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-waveforms">
<title>Wellenformen</title>
<sect3 id="mref-synth-wave-sin-sect">
<title>Synth_WAVE_SIN</title>
<anchor id="mref-synth-wave-sin"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_WAVE_SIN.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_WAVE_SIN</phrase></textobject>
</mediaobject>
<para>Sinusgenerator. Legen Sie ein Signal (pos) von Synth_FREQUENCY oder Synth_FM_SOURCE an den Eingang und am Ausgang liegt eine Sinusschwingung an. Das pos-Signal legt die Position in der Schwingung (Phasenverschiebung) im Bereich von 0..1 fest, was intern 0..2*Pi entspricht. </para>
</sect3>
<sect3 id="mref-synth-wave-tri-sect">
<title>Synth_WAVE_TRI</title>
<anchor id="mref-synth-wave-tri"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_WAVE_TRI.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_WAVE_TRI</phrase></textobject>
</mediaobject>
<para>Dreieckgenerator. Legen Sie ein Signal (pos) von Synth_FREQUENCY oder Synth_FM_SOURCE an den Eingang und am Ausgang liegt eine Dreieckschwingung an. Das pos-Signal legt die Position in der Schwingung (Phasenverschiebung) im Bereich von 0..1 fest, was intern 0..2*Pi entspricht. Vorsicht: Das Eingangssignal <emphasis>muss</emphasis> im Bereich von 0..1 sein, damit ein gutes Ausgangssignal entsteht. </para>
</sect3>
<sect3 id="mref-synth-noise-sect">
<title>Synth_NOISE</title>
<anchor id="mref-synth-noise"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_NOISE.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_NOISE</phrase></textobject>
</mediaobject>
<para>Lärmgenerator. Dieser Generator erzeugt ein zufälliges Signal zwischen -1 und 1. </para>
</sect3>
<sect3 id="mref-synth-wave-square-sect">
<title>Synth_WAVE_SQUARE</title>
<anchor id="mref-synth-wave-square"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_WAVE_SQUARE.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_WAVE_SQUARE</phrase></textobject>
</mediaobject>
<para>Rechteckgenerator. Legen Sie ein Signal (pos) von Synth_FREQUENCY oder Synth_FM_SOURCE an den Eingang und am Ausgang liegt eine Rechteckschwingung an. Das pos-Signal legt die Position in der Schwingung (Phasenverschiebung) im Bereich von 0..1 fest, was intern 0..2*Pi entspricht. Vorsicht: Das Eingangssignal <emphasis>muss</emphasis> im Bereich von 0..1 sein, damit ein gutes Ausgangssignal entsteht. </para>
</sect3>
<sect3 id="mref-synth-wave-softsaw-sect">
<title>Synth_WAVE_SOFTSAW</title>
<anchor id="mref-synth-wave-softsaw"/>
<mediaobject><imageobject><imagedata
fileref="images/Synth_WAVE_SOFTSAW.png" format="PNG"/></imageobject>
<textobject><phrase>Synth_WAVE_SOFTSAW</phrase></textobject>
</mediaobject>
<para>Abgeschwächte Sägezahnoszillation. Dieses Signal ist ähnlich zum Signal des Dreieckgenerators. Legen Sie ein Signal (pos) von Synth_FREQUENCY oder Synth_FM_SOURCE an den Eingang und am Ausgang liegt eine weiche Sägezahnschwingung an. Das pos-Signal legt die Position in der Schwingung (Phasenverschiebung) im Bereich von 0..1 fest, was intern 0..2*Pi entspricht. Vorsicht: Das Eingangssignal <emphasis>muss</emphasis> im Bereich von 0..1 sein, damit ein gutes Ausgangssignal entsteht. </para>
</sect3>
<sect3 id="mref-synth-wave-pulse-sect">
<title>Synth_WAVE_PULSE</title>
<anchor id="mref-synth-wave-pulse"/>
<mediaobject><imageobject><imagedata fileref="images/Synth_WAVE_PULSE.png"
format="PNG"/></imageobject>
<textobject><phrase>Synth_WAVE_PULSE</phrase></textobject>
</mediaobject>
<para>Impulsgenerator - dieses Modul ist grundsätzlich ähnlich zum Rechteckgenerator (Synth_WAVE_RECT), bietet aber zusätzlich eine Möglichkeit, das Verhältnis von Maximumzeit zu Minimumzeit mit dem Eingang <emphasis>dutycycle</emphasis> einzustellen. Legen Sie ein Signal (pos) von Synth_FREQUENCY oder Synth_FM_SOURCE an den Eingang und am Ausgang liegt eine Impulsschwingung an. Das pos-Signal legt die Position in der Schwingung (Phasenverschiebung) im Bereich von 0..1 fest, was intern 0..2*Pi entspricht. Vorsicht: Das Eingangssignal <emphasis>muss</emphasis> im Bereich von 0..1 sein, damit ein gutes Ausgangssignal entsteht. </para>
</sect3>
</sect2>
<sect2 id="mcat-synth-misc">
<title>Verschiedenes</title>
<sect3 id="mref-synth-compressor-sect">
<title>Synth_COMPRESSOR</title>
<anchor id="mref-synth-compressor"/>
<mediaobject>
<imageobject><imagedata fileref="images/Synth_COMPRESSOR.png"
format="PNG"/></imageobject></mediaobject>
<para>Dieses Modul reduziert den Dynamikbereich des Signals. Ein Kompressor ist nützlich, um die großen Lautstärkeschwankungen einer über ein Mikrophon redenden Person zu verringern. </para>
<para>Sobald das Eingangssignal einen bestimmten Pegel (den Grenzpegel) überschreitet, wird der Pegel reduziert. Jeder Pegelwert oberhalb des Grenzpegels wird mit einem Faktor, eine Zahl zwischen 0 und 1, multipliziert. Zum Abschluß wird das gesamte Signal mit dem Ausgangsfaktor multipliziert. </para>
<para>Die Argumente attack und release verzögern den Start und das Ende der Kompression. Das kann verwendet werden, um z.B. den lauten Beginn einer Basedrum zu hören. Das Argument wird in Millisekunden angegeben und ein Wert von 0 ms ist möglich, kann aber zu einem leichten Nebengeräusch führen. </para>
</sect3>
</sect2>
</sect1>
<sect1 id="visual-modules-reference">
<title>Visuelle Modul-Referenz</title>
<para>TODO wenn visuelle Module stabiler sind. </para>
</sect1>
</chapter>
|