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
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
|
<chapter id="artsbuilder">
<title
>&arts-builder;</title>
<sect1 id="overview">
<title
>Introdução</title>
<para
>Primeiro que tudo, ao tentar correr o &arts-builder; , você deverá correr também o servidor de som (o &artsd;). Normalmente, quando você usa o &kde; 2.1, este já deverá ser o caso. Se não for, você poderá configurar o arranque automático do servidor de som no &kcontrol; em <menuchoice
><guilabel
>Som</guilabel
><guilabel
>Servidor de Som</guilabel
></menuchoice
>. </para>
<para
>Quando você está a executar o &arts;, ele corre sempre módulos pequenos. O &arts-builder; é uma ferramenta para criar estruturas novas a partir de pequenos módulos interligados. Você simplesmente carrega os módulos para dentro da grelha. Para o fazer, escolha-os no menu <guimenu
>Módulos</guimenu
>, e carregue então algures no avião verde-e-cinzento. </para>
<para
>Os módulos normalmente têm portos (onde normalmente entram e saem os sinais de áudio). Para ligar dois portos, carregue no primeiro, o que normalmente faz com que ele fique laranja, e carregue depois no segundo. Você poderá ligar apenas um porto de entrada (na parte de cima) com um porto de saída (na parte inferior de um módulo). Se você quiser atribuir um valor fixo a um porto (ou desligá-lo), faça duplo-click no mesmo. </para>
</sect1>
<sect1 id="artsbuilder-tutorial">
<title
>Tutorial</title>
<sect2 id="step-1">
<title
>Passo 1</title>
<para
>Inicie o &arts-builder;. </para>
<para
>Você precisa de um módulo Synth_AMAN_PLAY para ouvir a saída que está a criar. Por isso crie um módulo Synth_AMAN_PLAY, seleccionando-o em <menuchoice
><guimenu
>Módulos</guimenu
> <guisubmenu
>Síntese</guisubmenu
> <guisubmenu
>E/S de Som</guisubmenu
> <guisubmenu
>Synth_AMAN_PLAY</guisubmenu
></menuchoice
> e carregue no espaço em branco do módulo. Coloque-o por baixo da quinta linha ou algo do género, porque serão adicionadas aqui algumas coisas. </para>
<para
>O módulo irá ter um parâmetro <parameter
>title</parameter
> ou título (o porto do lado esquerdo), um <parameter
>autoRestoreID</parameter
> (ao lado do porto do lado esquerdo) para o encontrar. Para os preencher, faça duplo-click nesses portos, seleccione um valor constante e escreva <userinput
>tutorial</userinput
> no campo de texto. Carregue em <guibutton
>OK</guibutton
> para aplicar. </para>
<para
>Seleccione <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Executar a estrutura</guimenuitem
> </menuchoice
>. Você não irá ouvir absolutamente nada. O módulo de reprodução ainda necessita de uma entrada... ;) Se você tiver 'ouvido' o silêncio um pouco, carregue em <guibutton
>OK</guibutton
> e vá para o Passo 2 </para>
</sect2>
<sect2 id="step-2">
<title
>Passo 2</title>
<para
>Crie um módulo Synth_WAVE_SIN (em <menuchoice
> <guimenu
>Módulos</guimenu
> <guimenuitem
>Síntese</guimenuitem
> <guimenuitem
>Formas de onda</guimenuitem
></menuchoice
>) e coloque-o por cima do módulo Synth_AMAN_PLAY. (Deixe um espaço de uma linha entre eles). </para>
<para
>Como poderá ver, ele produz algum resultado, mas necessita de um <guilabel
>pos</guilabel
> como entrada. Primeiro, vai-se ligar a saída ao altifalante. Carregue no porto <guilabel
>out</guilabel
> (saída) do módulo Synth_WAVE_SIN e depois no porto <guilabel
>left</guilabel
> (esquerda) do Synth_AMAN_PLAY. Pronto, você acabou de ligar dois módulos. </para>
<para
>Todos os osciladores no &arts; não precisam de uma frequência à entrada, mas si de uma posição na onda. A posição deverá ser entre 0 e 1, o que se mapeia num objecto normal do Synth_WAVE_SIN no intervalo 0..2*pi. Para gerar os valores oscilantes para uma frequência, é usado um módulo Synth_FREQUENCY. </para>
<para
>Crie um módulo Synth_FREQUENCY (em <menuchoice
> <guimenu
>Módulos</guimenu
> <guimenu
>Síntese</guimenu
> <guimenu
>Oscilação & Modulação</guimenu
> </menuchoice
>) e ligue a sua saída <quote
>pos</quote
> na entrada <quote
>pos</quote
> do seu Synth_WAVE_SIN. Indique o porto 'frequency' (frequência) do gerador FREQUENCY com um valor constante 440. </para>
<para
>Seleccione o <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Executar a estrutura</guimenuitem
></menuchoice
>. Irá ouvir uma onda sinusoidal de 440 Hz num dos seus altifalantes. Se você a tiver ouvido durante algum tempo, carregue em <guibutton
>OK</guibutton
> e vá para o Passo 3. </para>
</sect2>
<sect2 id="step-3">
<title
>Passo 3</title>
<para
>OK, seria melhor se você ouvir a onda sinusoidal em ambos os altifalantes. Ligue o porto 'right' (direita) do Synth_PLAY ao 'outvalue' (saída) do Synth_WAVE_SIN. </para>
<para
>Crie um objecto Synth_SEQUENCE (em <menuchoice
><guimenu
>Módulos</guimenu
> <guisubmenu
>Síntese</guisubmenu
><guisubmenu
>MIDI & Sequenciação</guisubmenu
></menuchoice
>). Dever-se-á encontrar no topo do ecrã. Se precisar de mais espaço, você poderá mover os outros módulos, seleccionando-os (para seleccionar vários módulos use o &Shift;) e arrastando-os. </para>
<para
>Agora ligue a saída 'frequency' (frequência) do Synth_SEQUENCE à entrada 'frequency' do módulo Synth_FREQUENCY. Depois, indique a velocidade da sequência como um valor constante 0,13 (o 'speed' ou velocidade é o porto mais à esquerda). </para>
<para
>Agora vá ao porto mais à direita (o 'sequence' ou sequência) do Synth_SEQUENCE e escreva como valor constante <userinput
>A-3;C-4;E-4;C-4;</userinput
>; isto corresponde a uma sequência. Poderá ver mais sobre isto na Referência do Módulo. </para>
<note>
<para
>O Synth_SEQUENCE <emphasis
>necessita</emphasis
> mesmo de uma sequência e da sua velocidade. Sem isto, você irá obter provavelmente alguns estoiros. </para>
</note>
<para
>Seleccione o <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Executar a Estrutura</guimenuitem
></menuchoice
>. Você irá ver uma sequência bonita a tocar. Se gostou da sensação, carregue em <guibutton
>OK</guibutton
> e vá para o Passo 4. </para>
</sect2>
<sect2 id="step-4">
<title
>Passo 4</title>
<para
>Crie um módulo Synth_PSCALE (em <menuchoice
><guimenu
>Módulos</guimenu
> <guisubmenu
>Síntese</guisubmenu
> <guisubmenu
>Envelopes</guisubmenu
> </menuchoice
>). Desligue o 'outvalue' (saída) da onda sinusoidal, fazendo duplo-click nela e escolher a opção <guilabel
>não ligado</guilabel
>. Ligue </para>
<orderedlist
><listitem>
<para
>O valor de saída do SIN ao valor de entrada do PSCALE</para>
</listitem>
<listitem>
<para
>O valor de saída do PSCALE à esquerda do AMAN_PLAY</para>
</listitem>
<listitem>
<para
>O valor de saída do PSCALE à direita do AMAN_PLAY</para>
</listitem>
<listitem>
<para
>A posição do SEQUENCE à posição do PSCALE</para>
</listitem>
</orderedlist>
<para
>Finalmente, configure o topo do PSCALE para um valor qualquer, por exemplo 0,1. </para>
<para
>Como é que funciona então: o Synth_SEQUENCE dá informações adicionais sobre a posição da nota que está a tocar de momento, onde o 0 significa que começou agora e 1 significa que terminou. O módulo Synth_PSCALE irá ajustar o facto de escala do canal de áudio que é passado por ele, desde um volume 0 (silêncio) até 1 (volume original), voltando outra vez a 0 (silêncio), de acordo com a posição. A posição onde o pico deverá ocorrer poderá ser indicada no 'pos'. Um valor igual a 0,1 significa que, depois de ter tocado 10% da nota, o volume terá atingido o seu máximo, começando a decair a partir daí. </para>
<para
>Seleccione <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Executar a Estrutura</guimenuitem
></menuchoice
>. Você irá ouvir uma sequência bonita a tostou da situação, carregue em <guibutton
>OK</guibutton
> e vá para o Passo 5. </para>
</sect2>
<sect2 id="step-5-starting-to-beam-data-around">
<title
>Passo 5: Começar a emitir os dados ;)</title>
<para
>Inicie outro &arts-builder;</para>
<para
>Coloque um Synth_AMAN_PLAY nele e configure-o para um nome aceitável. Coloque um Synth_BUS_DOWNLINK nele e:</para>
<orderedlist>
<listitem>
<para
>Configure o barramento do Synth_BUS_DOWNLINK para áudio (isto é apenas um nome, chame-lhe 'manel' se quiser) </para>
</listitem>
<listitem>
<para
>Ligue a esquerda do Synth_BUS_DOWNLINK à esquerda do Synth_AMAN_PLAY </para>
</listitem>
<listitem>
<para
>Ligue a direita do Synth_BUS_DOWNLINK à direita do Synth_AMAN_PLAY </para>
</listitem>
</orderedlist>
<para
>Comece a executar a estrutura. Como seria de esperar, não ouve nada, ... ainda. </para>
<para
>Volte à estrutura com as coisas do Synth_WAVE_SIN e substitua o módulo Synth_AMAN_PLAY module por um Synth_BUS_UPLINK, configurando o seu nome para 'áudio' (ou 'manel', se preferir); os módulos poderão ser removidos se os seleccionar e escolher <menuchoice
><guimenu
>Editar</guimenu
> <guimenuitem
>Remover</guimenuitem
></menuchoice
> no menu (ou carregando na tecla <keycap
>Del</keycap
>). </para>
<para
>Carregue em <menuchoice
><guimenu
>Ficheiro</guimenu
> <guilabel
>Executar a estrutura</guilabel
></menuchoice
>. Irá ouvir a sequência com as notas em escala, transportadas no barramento. </para>
<para
>Se quiser saber porque é que algo como isto poderá de facto ser útil, carregue em <guibutton
>OK</guibutton
> (no &arts-builder; que está a executar o bloco do Synth_SEQUENCE; você poderá deixar o outro a correr) e ir para o Passo 6. </para>
</sect2>
<sect2 id="step-6-beaming-for-advanced-users">
<title
>Passo 6: Apontar para utilizadores avançados</title>
<para
>Escolha a estrutura <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Mudar o nome</guimenuitem
> </menuchoice
> no menu do 'artsbuilder' que contém as coisas do Synth_SEQUENCE, chamando-lhe de 'tutorial'. Carregue em <guibutton
>OK</guibutton
>. </para>
<para
>Seleccione <menuchoice
><guimenu
>Ficheiro</guimenu
> <guimenuitem
>Gravar</guimenuitem
> </menuchoice
> </para>
<para
>Inicie ainda mais outro &arts-builder; e escolha <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Abrir</guimenuitem
> </menuchoice
>, e carregar o tutorial de novo. </para>
<para
>Agora poderá seleccionar <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Executar a estrutura</guimenuitem
> </menuchoice
> em ambos os &arts-builder;s que têm estrutura. Você irá ouvir agora duas vezes a mesma coisa. Dependendo da altura em que os inicia, irá soar melhor ou pior. </para>
<para
>Outra coisa boa para fazer nesta altura é: iniciar o &noatun; e tocar um <literal role="extension"
>mp3</literal
> qualquer. Inicie o &artscontrol;. Vá a <menuchoice
><guimenu
>Ver</guimenu
><guimenuitem
>Ver o gestor de áudio</guimenuitem
></menuchoice
>. O que irá ver será o &noatun; e a sua estrutura de reprodução <quote
>tutorial</quote
> a tocar algo. Uma coisa interessante que poderá fazer é o seguinte: faça duplo-click no &noatun;. Irá agora obter uma lista com os barramentos disponíveis. Verá também que poderá indicar ao &noatun; para enviar a sua saída através do barramento de áudio que a sua estrutura do tutorial oferece. </para>
</sect2>
<sect2 id="step-7-midi-synthesis">
<title
>Passo 7: Síntese MIDI</title>
<para
>Finalmente, você deverá agora ser capaz de transformar a sua onda sinusoidal num instrumento real. Só faz sentido se você tiver algo útil que possa enviar eventos de &MIDI; para o &arts;. Será descrito aqui como você poderá usar um teclado externo qualquer, mas uma solução de sequenciação MIDI como o &brahms; irá funcionar da mesma forma. </para>
<para
>Primeiro que tudo, limpe o seu ecrã até que você tenha apenas um &arts-builder; com a estrutura da onda sinusoidal aberta (mas não em execução). De seguida, vá três vezes a <menuchoice
><guimenu
>Portos</guimenu
> <guisubmenu
>Criar sinal de áudio IN</guisubmenu
></menuchoice
>, e outras três a <menuchoice
><guimenu
>Portos</guimenu
> <guisubmenu
>Criar sinal de áudio OUT</guisubmenu
></menuchoice
>. Coloque esses portos algures. </para>
<para
>Finalmente, vá a <menuchoice
><guimenu
>Portos</guimenu
> <guilabel
>Mudar as posições e nomes</guilabel
></menuchoice
> e chame aos portos 'frequency' (frequência), 'velocity' (velocidade), 'pressed' (carregado), 'left' (esquerdo), 'right' (direito), 'done' (pronto). </para>
<para
>Finalmente, você poderá remover o módulo Synth_SEQUENCE e ligar o porto de entrada 'frequency' (frequência) da estrutura ao porto 'frequency' do Synth_FREQUENCY. Hm... Mas o que fazer com o 'pos'?</para
> <para
>Não existe isso, porque não há nenhum algoritmo no mundo onde você possa prever quando é que o utilizador solta a nota que acabou de carregar no teclado MIDI. Por isso, existe um parâmetro 'pressed' (carregado) que indica se o utilizador ainda tem a tecla pressionada ou não ('pressed' = 1: a tecla ainda está carregada, 'pressed' = 0: tecla solta) </para>
<para
>Isto significa que o objecto Synth_PSCALE também precisa de ser substituído agora. Ligue um Synth_ENVELOPE_ADSR em alternativa (em <menuchoice
><guimenu
>Módulos</guimenu
> <guisubmenu
>Síntese</guisubmenu
> <guisubmenu
>Envelopes</guisubmenu
> </menuchoice
>). Ligue: </para>
<orderedlist>
<listitem>
<para
>A entrada 'pressed' da estrutura ao 'active' (activo) do ADSR</para>
</listitem>
<listitem>
<para
>O valor de saída do SIN ao valor de entrada do PSCALE</para>
</listitem>
<listitem>
<para
>O valor de saída do ADSR à saída 'left' (esquerda) da estrutura</para>
</listitem
><listitem>
<para
>O valor de saída do ADSR à saída 'right' (direita) da estrutura</para>
</listitem>
</orderedlist>
<para
>Configure os parâmetros 'attack' (ataque) igual a 0,1, 'decay' (decaimento) igual a 0,2, 'sustain' (sustentação) igual a 0,7 e 'release' (soltura) igual a 0,1. </para>
<para
>Outra coisa em que é preciso pensar é que a estrutura do instrumento precisa de saber de alguma forma quando é que está pronta para tocar e quando poderá ser limpa, porque caso contrário nunca seria interrompida, mesmo que a nota tivesse sido solta. Felizmente, o envelope do ADSR sabes quando não há mais nada para se ouvir, dado que ele iguala o sinal a zero nalgum ponto em que a nota foi solta. </para>
<para
>Isto é indicado ao pôr a saída 'done' (pronto) igual a 1. Por isso, ligue isto à saída 'done' da estrutura. A mesma será removida logo que o 'done' passe a 1. </para>
<para
>Mude o nome da sua estrutura para 'instrument_tutorial' (em <menuchoice
><guimenu
> Ficheiro</guimenu
> <guimenuitem
>Mudar o nome da estrutura</guimenuitem
></menuchoice
>. De seguida, grave-a usando o Gravar Como (o nome por omissão que é oferecido deverá ser agora igual a 'instrument_tutorial').</para
><para
>Inicie o 'artscontrol' e vá a <menuchoice
><guimenu
>Ver</guimenu
><guimenuitem
>Gestor de MIDI</guimenuitem
></menuchoice
>, escolhendo depois a opção <menuchoice
><guimenu
>Adicionar</guimenu
><guimenuitem
>Saída MIDI de Síntese do aRts</guimenuitem
></menuchoice
>. Finalmente, você deverá ser capaz de seleccionar o seu instrumento de tutorial aqui. </para>
<para
>Abra um terminal e escreva <userinput
><command
>midisend</command
></userinput
>. Você irá ver que o <command
>midisend</command
> e o instrumento estão agora listados no gestor de &MIDI; do &arts;. Depois de seleccionar ambos e de carregar em <guibutton
>Ligar</guibutton
>, é tudo. Pegue no seu teclado e comece a tocar (obviamente, terá de estar ligado ao seu computador). </para>
</sect2>
<sect2 id="suggestions">
<title
>Sugestões</title>
<para
>Agora você deverá ser capaz de trabalhar com o &arts;. Ficam aqui algumas dicas que você poderá tentar para melhorar com as suas estruturas: </para>
<itemizedlist>
<listitem>
<para
>Tente usar outras coisas para além de uma onda sinusoidal. Quando ligar uma onda triangular, você irá pensar que o som não é grande coisa. Mas tente adicionar um filtro SHELVE_CUTOFF logo a seguir à onda triangular para cortar as frequências acima de uma dada frequência (tente algo do género de 1000 Hz, ou mesmo duas vezes a frequência de entrada ou igual à frequência de entrada+200Hz, ou qualquer outra coisa do género). </para>
</listitem>
<listitem>
<para
>Tente usar mais do que um oscilador. O Synth_XFADE poderá ser usado para misturar dois sinais; use por outro lado o Synth_ADD para os adicionar. </para>
</listitem>
<listitem>
<para
>Tente configurar as frequências dos osciladores para valores diferentes; isto dará umas oscilações engraçadas. </para>
</listitem>
<listitem>
<para
>Experimente com mais do que um envelope. </para>
</listitem>
<listitem>
<para
>Tente sintetizar os instrumentos com resultados diferentes do lado esquerdo e do direito. </para>
</listitem>
<listitem>
<para
>Tente fazer o pós-processamento depois de sair da ligação de recepção do barramento. Você poderá misturar, por exemplo, uma versão atrasada do sinal ao sinal original para obter um efeito de eco. </para>
</listitem>
<listitem>
<para
>Tente usar a opção 'velocity' (velocidade), a qual corresponde à força com que a nota foi carregada, e poderá também dizer 'volume'). O efeito especial consiste em não só modificar o volume do sinal resultante, mas também o som do instrumento (como por exemplo a frequência de corte). </para>
</listitem>
<listitem>
<para
>...</para>
</listitem>
</itemizedlist>
<para
>Se você criou algo engraçado, pense por favor em fornecê-lo à página Web do &arts; ou para ser incluído na próxima versão. </para>
</sect2>
</sect1>
<sect1 id="artsbuilder-examples">
<title
>Exemplos</title>
<para
>O &arts-builder; vem com vários exemplos, os quais poderão ser acedidos através da opção <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Abrir um Exemplo...</guimenuitem
> </menuchoice
>. Alguns deles estão na sua pasta correspondente, enquanto que outros (os quais não funcionam por uma razão qualquer na versão actual) são deixados na pasta 'todo'. </para>
<para
>Os exemplos caem em várias categorias: </para>
<itemizedlist>
<listitem>
<para
>Os exemplos autónomos que ilustram como usar cada um dos módulos incorporados do 'arts' (chamados <filename
>example_*.arts</filename
>). Estes tipicamente enviam um resultado qualquer para uma placa de som. </para>
</listitem>
<listitem>
<para
>Os instrumentos que são criados a partir de módulos de nível mais baixo (chamados de <filename
>instrument_*.arts</filename
>). Estes seguem uma convenção normal para os portos de entrada e saída para que possam ser usados no gestor de &MIDI; no &artscontrol;. </para>
</listitem>
<listitem>
<para
>Os modelos para criar novos módulos (denominados por <filename
>template_*.arts</filename
>). </para>
</listitem>
<listitem>
<para
>Os efeitos que poderão ser usados como blocos de construção reutilizáveis (chamados de <filename
>effect_*.arts</filename
>) [ tudo no 'todo' ] </para>
</listitem>
<listitem>
<para
>Os elementos de mistura usados para criar mesas de mistura, incluindo os controlos gráficos (chamados de <filename
>mixer_element_*.arts</filename
>). [ tudo no 'todo' ] </para>
</listitem>
<listitem>
<para
>Módulos diversos que não se encaixam em nenhuma das categorias acima. </para>
</listitem>
</itemizedlist>
<variablelist>
<title
>Descrição Detalhada de Cada Módulo:</title>
<varlistentry>
<term
><filename
>example_stereo_beep.arts</filename
></term>
<listitem>
<para
>Gera uma onda sinusoidal de 440Hz no canal esquerdo e uma onda sinusoidal no canal direito, enviando o resultado para a saída da placa de som. Isto é referenciado na documentação do &arts;. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_sine.arts</filename
></term>
<listitem>
<para
>Gera uma onda sinusoidal de 440 Hx. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_pulse.arts</filename
></term>
<listitem>
<para
>Gera uma onda de impulsos de 440 Hz com um tempo de actividade de 20%. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_softsaw.arts</filename
></term>
<listitem>
<para
>Gera uma onda de dente-de-serra de 440 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_square.arts</filename
></term>
<listitem>
<para
>Gera uma onda quadrada de 440 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_tri.arts</filename
></term>
<listitem>
<para
>Gera uma onda triangular de 440 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_noise.arts</filename
></term>
<listitem>
<para
>Gera 'ruído branco'. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_dtmf1.arts</filename
></term>
<listitem>
<para
>Gera um tom duplo, produzindo para tal ondas sinusoidais de 697 e 1209 Hz, ajustando a escala para 0,5 e adicionando-as em conjunto. Isto é o tom DTMF para o número "1" num teclado de telefone. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_atan_saturate.arts</filename
></term>
<listitem>
<para
>Corre uma onda triangular com o filtro de saturação 'atan' (arco-tangente). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_autopanner.arts</filename
></term>
<listitem>
<para
>Usa um deslocador automático para deslocar uma onda sinusoidal de 400 Hz entre os altifalantes esquerdo e direito a um ritmo de 2 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_brickwall.arts</filename
></term>
<listitem>
<para
>Ajusta a escala de uma onda sinusoidal por um factor de 5 e passa-a por um limitador. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_bus.arts</filename
></term>
<listitem>
<para
>Recebe de um barramento chamado <quote
>Bus</quote
> (Barramento) e envia para o barramento <quote
>out_soundcard</quote
> (saída da placa de som) com os canais esquerdo e direito invertidos. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_cdelay.arts</filename
></term>
<listitem>
<para
>Recebe de um barramento chamado <quote
>Delay</quote
> (Atraso), envia o canal direito através de um atraso de 0,5 segundos e o esquerdo sem alterações. Você poderá usar o &artscontrol; para ligar o efeito a um reprodutor de som e observar os resultados. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_delay.arts</filename
></term>
<listitem>
<para
>Este é o mesmo que o <filename
>example_cdelay.arts</filename
> mas usando o efeito de atraso. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_capture_wav.arts</filename
></term>
<listitem>
<para
>Isto usa o Synth_CAPTURE_WAV para gravar uma onda sinusoidal de 400 Hz como um ficheiro WAV. Execute o módulo durante uns segundos e examine depois o ficheiro criado em <filename class="directory"
>/tmp</filename
>. Você poderá tocar o ficheiro com um leitor multimédia como o <application
>noatun</application
>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_data.arts</filename
></term>
<listitem>
<para
>Isto usa o módulo Data (Dados) para gerar uma sequência constante com o valor <quote
>3</quote
> e envia-a para um módulo Debug (Depuração) que o mostra periodicamente. Também contém um módulo Nil (Nada), que ilustra como poderá ser usado para não fazer absolutamente nada. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_adsr.arts</filename
></term>
<listitem>
<para
>Mostra como criar um único som de um instrumento com o módulo 'Envelope Adsr' (ADSR do Envelope), despoletado repetidamente por uma onda quadrada. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_fm.arts</filename
></term>
<listitem>
<para
>Isto usa o módulo de Fonte FM para gerar uma onda sinusoidal de 440 Hz que é modulada na frequência a uma taxa de 5 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_freeverb.arts</filename
></term>
<listitem>
<para
>Isto liga o efeito do Freeverb a partir do canal de recepção de um barramento a um canal de envio de outro barramento. Você poderá usar o &artscontrol; para ligar o efeito a um leitor de áudio e observar os resultados. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_flanger.arts</filename
></term>
<listitem>
<para
>Isto implementa um efeito simples de 'flanger' (não parece funcionar ainda, no entanto). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_moog.arts</filename
></term>
<listitem>
<para
>Esta estrutura combina os dois canais de um barramento num só, passando-o através do filtro VCF Moog, e envia o resultado para o barramento 'out_soundcard'. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_pitch_shift.arts</filename
></term>
<listitem>
<para
>Esta estrutura passa o canal esquerdo dos dados da placa de som através do efeito 'Pitch Shift' (Desvio de Tom). Ajuste o parâmetro 'speed' (velocidade) para variar o efeito. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_rc.arts</filename
></term>
<listitem>
<para
>Esta estrutura passa um gerador de 'ruído branco' através de um filtro RC para a placa de som. Ao ver no Osciloscópio de FFT do &artscontrol;, você poderá ver como isto varia numa forma de onda de ruído não filtrada. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_sequence.arts</filename
></term>
<listitem>
<para
>Isto demonstra o módulo Sequence (sequência), tocando para tal uma sequência de notas. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_shelve_cutoff.arts</filename
></term>
<listitem>
<para
>Esta estrutura passa um gerador de 'ruído branco' através de um filtro 'Shelve Cutoff' para a placa de som. Ao ver no Osciloscópio de FFT do &artscontrol;, você poderá ver como isto varia numa forma de onda de ruído não filtrada. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_equalizer.arts</filename
></term>
<listitem>
<para
>Isto demonstra o módulo 'Std_Equalizer'. Ele aumenta de 6 dB as frequências altas e baixas. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_tremolo.arts</filename
></term>
<listitem>
<para
>Isto demonstra o efeito Tremolo. Ele modula os canais esquerdo e direito usando um tremolo de 10 Hz. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_xfade.arts</filename
></term>
<listitem>
<para
>Este exemplo mistura ondas sinusoidais de 440 e 880 Hz com um misturador cruzado. Ajuste o valor da percentagem do misturador de -1 até 1 para controlar a mistura dos dois sinais. </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_pscale.arts</filename
></term>
<listitem>
<para
>Isto ilustra o módulo do Pscale (não é certo se este será um exemplo compreensível). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
><filename
>example_play_wav.arts</filename
></term>
<listitem>
<para
>Isto ilustra o módulo 'Play Wave' (Tocar um WAVE). Você terá de indicar a localização completa de um ficheiro <literal role="extension"
>.wav</literal
> como valor do parâmetro 'filename' (nome do ficheiro). </para>
</listitem>
</varlistentry>
<varlistentry>
<term
>example_multi_add.arts</term>
<listitem>
<para
>Isto mostra o módulo Multi Add (Adição Múltipla), o qual aceita um número qualquer de entradas. Ele soma três módulos de dados que produzem entradas de 1, 2 e 3, mostrando depois o resultado 6. </para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
</chapter>
|