Csound Csound-dev Csound-tekno Search About

[Csnd] Re: Newbie (sort of) Questions

Date2008-06-02 04:49
From"Michael Gogins"
Subject[Csnd] Re: Newbie (sort of) Questions
"A Csound Tutorial" by me on Csounds.com has an introduction to Python 
scripting for Csound.

The advantage of Python is in using Python scripts as a concise form of 
music notation. You use Python to generate the score, and feed notes to 
Csound. There is a further advantage in that Python enables the use of 
fractals, mathematical music theory, and so forth to generate scores, or 
transform scores, in ways that are not necessarily easy to imagine.

AthenaCL, by Christopher Ariza, is a whole toolkit of operations and classes 
for doing score generation and score manipulation. CsoundAC, by me, which is 
part of Csound, is another such toolkit.


Regards,
Mike
----- Original Message ----- 
From: "Jim Aikin" 
To: 
Sent: Sunday, June 01, 2008 10:43 PM
Subject: [Csnd] Newbie (sort of) Questions


>
> I'm working on a feature on Csound for one of the music technology 
> magazines.
> I want to provide an overview that will let people know about some of the
> resources, and also give them an idea what they might be able to do with
> Csound.
>
> This leads to a couple of questions I'm hoping folks can clarify for me.
> Apologies if these questions seem childish, but I'm hoping not to 
> encounter
> answers that paraphrase Louis Armstrong's famous reply to the question,
> "What is jazz?" ("If you have to ask, you'll never know.") I really would
> like some concrete information that I can pass on to magazine readers.
>
> I'm aware that Python code can be embedded in an instr, and conversely 
> that
> Csound can be run from a Python interpreter such as Idle. My question is:
> why do that? Can someone give me a couple of examples of provocative 
> musical
> outcomes that might arise from doing either of the above?
>
> I guess I need to ask the same questions about AthenaCL, TclCsound, and
> CsoundAV. And not only, "What are these things good for?", but also, more
> basically, "How can one learn how to use them?" In looking at the
> descriptions of the former on the Web and of the latter in the Csound
> manual, I frankly can't make heads nor tails of any of it.
>
> Here, for instance, is a more or less typical excerpt from the manual: 
> "With
> Cswish, Tk widgets and commands can be used to provide graphical interface
> and event handling. As with cstclsh, running the cswish command also opens
> an interactive shell." Because I don't have a degree in computer science,
> that's precisely as clear as mud to me. I have no idea what an interactive
> shell is, I wouldn't know how to run the scwish command, and I wouldn't 
> know
> what to do with it after I ran it.
>
> Is any of this stuff documented with step-by-step tutorials designed for 
> the
> non-expert? Inquiring minds want to know!
>
> --Jim Aikin
>
>
>
> -- 
> View this message in context: 
> http://www.nabble.com/Newbie-%28sort-of%29-Questions-tp17593144p17593144.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
>
> Send bugs reports to this list.
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe 
> csound" 


Date2008-06-02 05:57
FromJim Aikin
Subject[Csnd] Re: Newbie (sort of) Questions
> "A Csound Tutorial" by me on Csounds.com has an introduction to Python 
> scripting for Csound.

Yes, I've downloaded that and skimmed it. It has some very good information,
but as with other tutorials, it seems to make certain invisible assumptions
(and I'm not even sure what they are).

A little while ago I loaded Koch.py into SciTE. When I issue the Run command
from SciTE, the output window says this:

>pythonw -u "Koch.py"
>The system cannot find the file specified.

Now, my best guess is that I need to set a path somewhere. But where? In
Csound, in SciTE, or in Python? And how would I do it? When I look in the
big fat Python tutorial, it provides no concrete information about exactly
how one would set paths. It mumbles a bit about what you would need to do in
Unix, but those paragraphs are obviously written for Unix professionals, not
for Windows amateurs like me. So I can't run Koch.py.

This is the kind of logjam I'm talking about.

> The advantage of Python is in using Python scripts as a concise form of 
> music notation. You use Python to generate the score, and feed notes to 
> Csound. There is a further advantage in that Python enables the use of 
> fractals, mathematical music theory, and so forth to generate scores, or 
> transform scores, in ways that are not necessarily easy to imagine.

Ah, but my job as a journalist is _precisely_ to make them easy to imagine!
That's why I'm hoping for some specific information on this point.

> AthenaCL, by Christopher Ariza, is a whole toolkit of operations and
> classes 
> for doing score generation and score manipulation. CsoundAC, by me, which
> is 
> part of Csound, is another such toolkit.

Yes, I've looked briefly at the documentation on both of those. Sad to say,
I can't make heads nor tails of either of them.

I plan to keep plugging away at it, and eventually the clouds should start
to clear away. I'm already a halfway decent hobbyist programmer, so there's
hope. But I can't help wishing I could find some resources that provided
more in the way of introductory information for people who have never taken
a university-level course in computer science.

--JA



-- 
View this message in context: http://www.nabble.com/Newbie-%28sort-of%29-Questions-tp17593144p17593998.html
Sent from the Csound - General mailing list archive at Nabble.com.


Date2008-06-02 10:46
FromRichard Dobson
Subject[Csnd] Re: Re: Newbie (sort of) Questions
Jim Aikin wrote:
..
>> The advantage of Python is in using Python scripts as a concise form of 
>> music notation. You use Python to generate the score, and feed notes to 
>> Csound. There is a further advantage in that Python enables the use of 
>> fractals, mathematical music theory, and so forth to generate scores, or 
>> transform scores, in ways that are not necessarily easy to imagine.
> 
> Ah, but my job as a journalist is _precisely_ to make them easy to imagine!
> That's why I'm hoping for some specific information on this point.
> 


Probably your target readership thinks not in abstract processes but in 
concrete tasks (or artifacts). So, they don't think in terms of 
"generating scores" (much less transforming them) but in running 
arpeggiators, or laying down pads (textures) and grooves. So one might 
say that, instead of running your fingers randomly over the keyboard for 
10 mins to create a random texture, you write a little script and get 
the computer to do it for you.

Many people think neither numerically nor algorithmically. They adjust a 
slider or knob until it "sounds right". If they see numbers, that is an 
emergent feature to which they may pay no attention. Rarely do they want 
to start literally from scratch, they want to modify presets where most 
of the work has already been done. This is not meant to be any sort of 
put-down - I do it myself, if it means I get a  desired result quicker. 
The challenge of Csound is that it still favours those who are prepared 
to start from scratch (and who do think numerically and 
algorithmically), over those who want a vast arsenal of presets to 
tweak. Bottom-up v top-down, therefore.

Richard Dobson