spsend
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## spsend

spsend — Génère des signaux de sortie basés sur un opcode space défini auparavant.

## Description

spsend dépend de l'existence d'un space défini antérieurement. Les signaux de sortie de spsend sont dérivés des valeurs de xy et de réverbération données dans le space et sont prêts à être envoyés à des unités de réverbération locales ou globales (voir l'exemple ci-dessous).

## Syntaxe

    a1, a2, a3, a4 spsend

## Exécution

La configuration des coordonnées xy dans l'espace place le signal de la manière suivante :

- a1 est en (-1, 1)

- a2 est en (1, 1)

- a3 est en (-1, -1)

- a4 est en (1, -1)

Ceci suppose une disposition des haut-parleurs où a1 est à l'avant-gauche, a2 à l'avant-droit, a3 à l'arrière-gauche et a4 à l'arrière-droite. Les valeurs supérieures à 1 donnent un son atténué, comme s'il était éloigné. space considère que les haut-parleurs sont à une distance de 1 ; on peut utiliser des valeurs de xy inférieures, mais space n'amplifiera pas le signal dans ce cas. Il équilibrera le signal cependant de manière à ce qu'il soit entendu comme s'il se trouvait à l'intérieur de l'espace des quatre haut-parleurs. x=0, y=1, place le signal entre les canaux avant gauche et droite, x=y=0 place le signal également entre les quatre canaux, et ainsi de suite. Bien que space fournisse quatre signaux en sortie, on peut l'utiliser dans un orchestre à deux canaux. Si les xy sont tels que y reste >= 1, il fonctionnera correctement pour faire des panoramiques et des localisations fixes dans un champ stéréophonique.

## Exemples

Voici un exemple stéréo de l'opcode spsend. Il utilise le fichier spsend.csd.

Exemple 867. Exemple de l'opcode spsend.

Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -odac   ;;;realtime audio out
    ;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o spsend.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    0dbfs  = 1
    nchnls = 2	;stereo output

    ga1 init 0
    ga2 init 0

    instr 1	;sends different amounts to reverb

    irev = p6
    asig diskin2 "fox.wav", 1
    a1, a2, a3, a4 space asig, 0, 0, irev, p4, p5	;take position values from p4, p5
    ar1, ar2, ar3, ar4 spsend			;send to reverb

    ga1 = ga1+ar1
    ga2 = ga2+ar2
        outs a1, a2

    endin

    instr 99 ; reverb instrument

    a1 reverb2 ga1, 2.5, .5
    a2 reverb2 ga2, 2.5, .5
       outs	a1, a2

    ga1=0
    ga2=0

    endin

    </CsInstruments>
    <CsScore>
    ;WITH REVERB
    ;place the sound in the left speaker and near
    i1 0 1 -1 1 .1
    ;place the sound in the right speaker and far
    i1 1 1 45 45 .1
    ;place the sound equally between left and right and in the middle ground distance
    i1 2 1 0 12 .1

    ;NO REVERB
    ;place the sound in the left speaker and near
    i1 6 1 -1 1 0
    ;place the sound in the right speaker and far
    i1 7 1 45 45 0
    ;place the sound equally between left and right and in the middle ground distance
    i1 8 1 0 12 0

    i 99 0 12	;keep reverb active all the time
    e
    </CsScore>
    </CsoundSynthesizer>

## Voir aussi

space, spdist

## Crédits

Auteur : Richard Karpen
Seattle, WA USA
1998

Nouveau dans la version 3.48 de Csound.

Précédent | Niveau supérieur | Suivant
sprintfk | Sommaire | sqrt