CsInstruments

i'm learning csound at berklee from dr. boulanger.. i'm a little bit confused by the assigning of p fields in the instrument section. if i assign p8 = irel, does this then apply to all the processors and generators in the instrument? if so, what value do i ascribe in the event that it is not even a functional parameter of one of the modules?

secondly, i'm happy that i can ctrl click and insert the opcode with all the parameters. unfortunately, when i do this i get error messages because of insufficient arguments or bad syntax (whatever)... is this because i haven't implicated functions? the etude i'm looking at (which works) seems okay if i just type the numbers in there respective places. this doesn't work if i try to insert the same opcode into a different csound instrument with different assignments. so the confusion is due to the arbitrary numbers that don't agree with the assignments working in one etude, and not another. am i mistaken in this observation? or, should i be looking at some other problem in the score maybe??

Re: orchestra basics

ezcheese1,

Hopefully you have already gotten an answer to these questions in class. But here are some brief pointers to help you or anyone else who may be struggling.

1) Most of the words that you see in a Csound orchestra are arbitrary names given to "variables" in the code. Think of Csound variables as patch cords carrying signals between different sound modules ("opcodes").

Each line in a Csound instrument looks something like this:

outparameter1, outparameter2 opcode inparameter1, inparameter2, etc.


Ex.
kres oscil kamp, kcps, ifn

Here "oscil" is the opcode, "kres" is the sole output, everything else is an input parameter.

2) The names of the opcodes must be used exactly.

3) Once you assign a value to a name (a "variable"), every other reference to the same name in that instrument will use the assigned value.

4) P-fields are an exception here. Usually the values of p-fields come from the score. So, p8 should already have a value when your instrument is played. Instead of p8 = irel, you are more likely to want to write something like irel = p8, which assigns the value of p8 to a hopefully more meaningful name (irel).

5) The names of the input and output parameters for opcodes that you see in the manual or that are supplied when you ctrl click and insert an opcode in some Csound front ends are likewise arbitrary names to help you remember the purpose of each parameter. So, you do not have to use these exact names. In fact, you generally will have to change some of them to make connections between opcodes.


Ex.
itablenum = 2
kamp line 4000, p3, 0
kfreq line 200, p3, 400
aosc oscil kamp, kfreq, itablenum

In this instrument excerpt, there are four opcodes: an "=" opcode, two "line" opcodes and an "oscil". The names of the opcodes are not changeable. But all of the other names ("kamp", "kfreq", "itablenum", and "aosc") are user-defined signals. The names could just as easily be "kbilbo", "kfrodo", "isildur", and "aragorn" (Note that the first letters are important though!). "kamp" here is a patch cord carrying the output of the first "line" opcode to the first input parameter of the oscil opcode, "kfreq" is carrying the output of the second "line" opcode to the second input parameter of the "oscil" opcode and so on.

cialis uk generic viagra cialis online Canadian pharmacy zpak z-pack pharmacy uk ed pills kamagra uk buy zithromax Canadian pharmacy viagra generic cialis buy viagra uk cheap generic viagra z pak z-pak zpack ed drugs staxyn viagra uk avanafil viagra online z pack