+ playsample.ck
This commit is contained in:
parent
7dba31d281
commit
8a17ec60c5
@ -131,11 +131,17 @@ sustain level pour finir.
|
|||||||
\subsection{Jouer des samples}
|
\subsection{Jouer des samples}
|
||||||
|
|
||||||
Oui, on peut. On peut même faire des choses assez fun.
|
Oui, on peut. On peut même faire des choses assez fun.
|
||||||
Juste un example un peu brouillon et qui manque de rigueur
|
Juste un example un peu brouillon et qui manque de rigueur,
|
||||||
en attendant mieux :
|
essentiellement sur le calcul de la durée d'écoute de
|
||||||
|
l'échantillon en fonction du \textsl{pitch}.
|
||||||
|
Mais, en attendant mieux :
|
||||||
|
|
||||||
\lstinputlisting{code/playsample.ck}
|
\lstinputlisting{code/playsample.ck}
|
||||||
|
|
||||||
|
Bien entendu, il vous faudra créer le fichier avec
|
||||||
|
l'échantillon sonore. J'ai utilisé un fichier de quatre
|
||||||
|
secondes échantilloné à 22050 Hz.
|
||||||
|
|
||||||
Et j'entend un esprit chagrin râler au fond de la salle :
|
Et j'entend un esprit chagrin râler au fond de la salle :
|
||||||
« oué, nous on veut du gros son ». Patience, nous allons
|
« oué, nous on veut du gros son ». Patience, nous allons
|
||||||
d'abord voir les briques avant de construire le mur.
|
d'abord voir les briques avant de construire le mur.
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
SndBuf buf => dac;
|
SndBuf buf => dac;
|
||||||
"sample.wav" => buf.read;
|
"/home/tth/Essais/Chuck/sample.wav" => buf.read;
|
||||||
|
|
||||||
float srate, duration;
|
float srate, duration;
|
||||||
1 => buf.gain;
|
1 => buf.gain;
|
||||||
|
|
||||||
for ( 0.7=>srate; srate<1.8; 0.1 +=> srate) {
|
for ( 0.7=>srate; srate<1.9; 1.1 *=> srate) {
|
||||||
900 / srate => duration;
|
4000 / srate => duration;
|
||||||
<<< "loop...", srate, duration >>>;
|
<<< "loop...", srate, duration >>>;
|
||||||
0 => buf.pos;
|
0 => buf.pos;
|
||||||
srate => buf.rate;
|
srate => buf.rate;
|
||||||
|
Loading…
Reference in New Issue
Block a user