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

## outrg

outrg — Permet la sortie dans un ensemble de canaux contigus sur le périphérique de sortie audio.

## Description

outrg sort les données audio dans un ensemble de canaux contigus sur le périphérique de sortie audio.

## Syntaxe

    outrg kstart, aout1 [,aout2, aout3, ..., aoutN]

## Exécution

kstart - le numéro du premier canal du périphérique de sortie où écrire (les numéros des canaux commencent à 1, qui est le premier canal).

aout1, aout2, ... aoutN - les arguments contenant les données audio à sortir sur les canaux correspondants.

outrg permet la sortie vers un ensemble de canaux contigus du périphérique de sortie audio. kstart indique le premier canal où écrire (le canal 1 étant le premier canal). Il faut s'assurer que le nombre obtenu en ajoutant à kstart le nombre de canaux à écrire - 1 est <= nchnls.

## Exemples

Voici un exemple de l'opcode outrg. Il utilise le fichier outrg.csd.

Exemple 705. Exemple de l'opcode outrg.

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 outrg.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 4        ;quad
    0dbfs  = 1

    instr 1

    kleft init 1
    asig  vco2 .5, 220			;sawtooth
    idur = p3/(nchnls-1)
    knext init idur
    kpos init 0
    krate init 1/idur
    kbase init 0
    ktime timeinsts
    if ktime>=knext then
      kleft = kleft + 1
      knext = knext + idur
      kpos = 0
      kbase = ktime
    else
      kpos = (ktime-kbase)/idur
    endif
    printks "speaker %d position %f\n", 0, kleft, kpos
    a1,a2 pan2 asig, kpos
          outrg  kleft, a1, a2
    kpos = kbase/idur
    endin

    </CsInstruments>
    <CsScore>

    i 1 0 10
    e
    </CsScore>
    </CsoundSynthesizer>

Sa sortie contiendra des lignes comme celles-ci :

    speaker 1 position 0.000200
    speaker 1 position 0.000400
    speaker 1 position 0.000600
    .....
    speaker 1 position 1.000000
    speaker 2 position 0.000000
    speaker 2 position 0.000200
    ....
    speaker 2 position 0.999800
    speaker 3 position 0.000000
    speaker 3 position 0.000200
    ....
    speaker 3 position 0.999600
    speaker 4 position 0.000000
    .....

## Crédits

Auteur : Gabriel Maldonado

Nouveau dans la version 5.06

Précédent | Niveau supérieur | Suivant
outq | Sommaire | outs1