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

## pitch

pitch — Suit la hauteur d'un signal.

## Description

En utilisant les mêmes techniques que spectrum et specptrk, pitch suit la hauteur du signal sous la forme octave point décimal ainsi que l'amplitude en dB.

## Syntaxe

    koct, kamp pitch asig, iupdte, ilo, ihi, idbthresh [, ifrqs] [, iconf] \
          [, istrt] [, iocts] [, iq] [, inptls] [, irolloff] [, iskip]

## Initialisation

iupdte -- longueur en secondes de la période de mise à jour des sorties.

ilo, ihi -- intervalle dans lequel la hauteur est détectée, exprimé en octave point décimal.

idbthresh -- amplitude, exprimée en décibels, nécessaire pour que la hauteur soit détectée. Une fois démarré, continue jusqu'à une diminution de 6 dB.

ifrqs (facultatif) -- nombre de divisions de l'octave. Vaut 12 par défaut et est limité à 120.

iconf (facultatif) -- nombre de conformations nécessaires pour un saut d'octave. Vaut 10 par défaut.

istrt (facultatif) -- hauteur initiale pour le détecteur. La valeur par défaut est (ilo + ihi)/2.

iocts (facultatif) -- nombre de décimations d'octave dans le spectre. Vaut 6 par défaut.

iq (facultatif) -- Q des filtres d'analyse. Vaut 10 par défaut.

inptls (facultatif) -- nombre d'harmoniques utilisés pour la concordance. Le temps de calcul augmente avec le nombre d'harmoniques. Vaut 4 par défaut.

irolloff (facultatif) -- roll-off d'amplitude pour l'ensemble de filtres exprimé en fraction par octave. Les valeurs doivent être positives. Vaut 0.6 par défaut.

iskip (facultatif) -- s'il est non nul, l'initialisation est ignorée. Vaut 0 par défaut.

## Exécution

koct -- La sortie de hauteur, donnée dans le format octave point décimal.

kamp -- La sortie d'amplitude.

pitch analyse le signal d'entrée, asig, pour donner en sortie une paire hauteur/amplitude pour la fréquence la plus forte dans le signal. La valeur est mise à jour toutes les iupdte secondes.

Le nombre d'harmoniques et la fraction de roll-off pouvant affecter la détection de hauteur, il peut être nécessaire d'expérimenter. Les valeurs suggérées vont de 4 à 5 harmoniques avec un roll-off de 0.6 jusqu'à 10 à 12 harmonques avec un roll-off de 0.75 pour les timbres complexes ayant un fondamental faible.

## Exemples

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

Exemple 660. Exemple de l'opcode pitch.

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 real audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o pitch.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs  = 1

    instr 1	;clean audio

    asig soundin p4
         outs asig, asig
    endin

    instr 2	;use pitch

    iupdte = 0.001	;high definition
    ilo = 6
    ihi = 10
    idbthresh = 10
    ifrqs = 12
    iconf = 10
    istrt = 8

    asig soundin p4
    koct, kamp pitch asig, iupdte, ilo, ihi, idbthresh, ifrqs, iconf, istrt
    kamp = kamp*.00005		;lower volume
    kcps = cpsoct(koct)
    asig poscil kamp, kcps, 1	;re-synthesize with sawtooth
         outs asig, asig

    endin
    </CsInstruments>
    <CsScore>
    f1 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111   ;sawtooth

    i 1 0  3 "fox.wav"
    i 2 3  3 "fox.wav"
    i 1 6  3 "mary.wav"
    i 2 9  3 "mary.wav"
    i 1 12 3 "beats.wav"
    i 2 15 3 "beats.wav"
    e
    </CsScore>
    </CsoundSynthesizer>

## Crédits

Auteur : John ffitch
Université de Bath, Codemist Ltd.
Bath, UK
Avril 1999

Nouveau dans la version 3.54 de Csound.

Précédent | Niveau supérieur | Suivant
pinkish | Sommaire | pitchamdf