[Csnd] Compositional Approach

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

[Csnd] Compositional Approach

fauveboy
A lot of my composition experience so far has included the immediate feedback of a live instrument, or recording an idea and have it playback (in a loop perhaps) immediately to tinker with and develop. So far I have this same iterative process of writing code and compiling with Csound, however. As you can probably appreciate, this process doesn't allow for such an immediate intuitive/spontaneous response as using a live instrument. The approach with Csound isn't that efficient. How can I adapt and change my approach here to make the most of Csound. I essentially aim to compose music with it.

Many Thanks,

Joel

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Oeyvind Brandtsegg-3
Hi Joel,

I usually wrap my Csound instrruments as VST plugins and then play around with them as a live instrument. This can help significantly in the musical exploration of techniques. Of course, the instrument design itself is also an iterative and sometimes cumbersome process...

2018-01-08 22:18 GMT+01:00 Joel Ramsbottom <[hidden email]>:
A lot of my composition experience so far has included the immediate feedback of a live instrument, or recording an idea and have it playback (in a loop perhaps) immediately to tinker with and develop. So far I have this same iterative process of writing code and compiling with Csound, however. As you can probably appreciate, this process doesn't allow for such an immediate intuitive/spontaneous response as using a live instrument. The approach with Csound isn't that efficient. How can I adapt and change my approach here to make the most of Csound. I essentially aim to compose music with it.

Many Thanks,

Joel

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here



--
Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Michael Gogins-2
TL;DR: Write you pieces in a text editor to which you have added
custom menus so that you can instantly run and hear an edited piece.
It would be useful to know the general sorts of pieces or directions
that you are interested in.

I totally share your concern with a fast turnaround so I can actually
compose with Csound. In order of increasing time I have invested,
implying increasing order of usefulness:

(1) Using Csound as a VST plugin in a VST host.
(2) Writing my pieces in Java or Python as algorithmic compositions,
and using Csound as a library.
(3) Writing my pieces in Csound code, but with Lua code embedded to do
algorithmic composition.
(4) Writing my pieces in HTML code, using HTML for user interfaces,
JavaScript for algorithmic composition, and using embedded Csound. In
order of increasing time/usefulness:
(4.1) ...Using CsoundQt with HTML5 enabled.
(4.2) ...Using Csound for WebAssemby, which embeds Csound right in
your Web browser (see the Csound Showcase at
http://csound-showcase.com/ for examples).
(4.2) ...Using Csound for Android, with HTML5 embedded in the CSD.
(4.3) ...Using NW.js, with csound.node acting to embed Csound in the
JavaScript context.

In all cases, I code in a text editor, SciTE is what I end up using
because it is simple though others would do, and have added menus to
the editor so that I can with one menu command to run Csound to run a
.csd piece, and another menu command to run NW.js to run an .html
piece.

In all cases, I try to make a user interface in CsoundQt or in HTML
that will control critical parameters of my Csound instruments.

Regards,
Mike

-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Mon, Jan 8, 2018 at 4:26 PM, Oeyvind Brandtsegg
<[hidden email]> wrote:

> Hi Joel,
>
> I usually wrap my Csound instrruments as VST plugins and then play around
> with them as a live instrument. This can help significantly in the musical
> exploration of techniques. Of course, the instrument design itself is also
> an iterative and sometimes cumbersome process...
>
> 2018-01-08 22:18 GMT+01:00 Joel Ramsbottom <[hidden email]>:
>>
>> A lot of my composition experience so far has included the immediate
>> feedback of a live instrument, or recording an idea and have it playback (in
>> a loop perhaps) immediately to tinker with and develop. So far I have this
>> same iterative process of writing code and compiling with Csound, however.
>> As you can probably appreciate, this process doesn't allow for such an
>> immediate intuitive/spontaneous response as using a live instrument. The
>> approach with Csound isn't that efficient. How can I adapt and change my
>> approach here to make the most of Csound. I essentially aim to compose music
>> with it.
>>
>> Many Thanks,
>>
>> Joel
>>
>> Csound mailing list
>> [hidden email]
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
>
>
>
> --
>
> Oeyvind Brandtsegg
> Professor of Music Technology
> NTNU
> 7491 Trondheim
> Norway
> Cell: +47 92 203 205
>
> http://www.partikkelaudio.com/
> http://crossadaptive.hf.ntnu.no
> http://gdsp.hf.ntnu.no/
> http://soundcloud.com/brandtsegg
> http://flyndresang.no/
> http://soundcloud.com/t-emp
>
> Csound mailing list [hidden email]
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

fauveboy
In reply to this post by fauveboy
interesting thanks...and can I extend this question to mixing. How can the sound be monitored? particularly if you're playing multiple sounds at once from Csound. In a DAW you can continually observe and automate ect...This if fact takes but a big part of the process once the sound is written getting the mix right...How can this be approached in csound?

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Michael Gogins-2
You can obviously have one instance of Csound on each track, and receive midi controllers from the automation on the tracks.

You could do the same thing in pure Csound by recording UI values during performance into a table that is saved to disk and played back on succeeding performances. I think Steven Yi's blue can do that, you should probably check out blue as it implements a good part of the functionality of a DAW just using Csound and java. 

Regards,
Mike

On Jan 8, 2018 6:17 PM, "Joel Ramsbottom" <[hidden email]> wrote:
interesting thanks...and can I extend this question to mixing. How can the sound be monitored? particularly if you're playing multiple sounds at once from Csound. In a DAW you can continually observe and automate ect...This if fact takes but a big part of the process once the sound is written getting the mix right...How can this be approached in csound?

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

thorin kerr
In reply to this post by fauveboy
Live coding?

On 9 Jan 2018 7:18 AM, "Joel Ramsbottom" <[hidden email]> wrote:
A lot of my composition experience so far has included the immediate feedback of a live instrument, or recording an idea and have it playback (in a loop perhaps) immediately to tinker with and develop. So far I have this same iterative process of writing code and compiling with Csound, however. As you can probably appreciate, this process doesn't allow for such an immediate intuitive/spontaneous response as using a live instrument. The approach with Csound isn't that efficient. How can I adapt and change my approach here to make the most of Csound. I essentially aim to compose music with it.

Many Thanks,

Joel

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

AndreaS

I think that in twenty-third century a new musical instrument could be born, how was the violin or the piano in the past.

Perhaps the VST technology is a useful step.

You can immagine Stradivari that carves the wood and mixes his mysterious paints in a stage, in a public concert?

He never did it, as far as I know,  the technical development was not sufficiently omnipotent at that time.

'Live coding' is  an attempt to impose an aesthetic, because the technique thinks he is sufficiently omnipotent.

And it is succeeding, as it happened that avertising industry of consumering imposed his aesthetic, with personalities like Andy Wharol.

It's an ancient scheme: who has the power dictates the aesthetics.

Beauty is an immanent category, not transcendent category.

But we often forget that the maximum power is in nature, with your 'logos'.

Andrea S.



Il 09/01/2018 08:10, thorin kerr ha scritto:
Live coding?

On 9 Jan 2018 7:18 AM, "Joel Ramsbottom" <[hidden email]> wrote:
A lot of my composition experience so far has included the immediate feedback of a live instrument, or recording an idea and have it playback (in a loop perhaps) immediately to tinker with and develop. So far I have this same iterative process of writing code and compiling with Csound, however. As you can probably appreciate, this process doesn't allow for such an immediate intuitive/spontaneous response as using a live instrument. The approach with Csound isn't that efficient. How can I adapt and change my approach here to make the most of Csound. I essentially aim to compose music with it.

Many Thanks,

Joel

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Dave Phillips
In reply to this post by fauveboy
Greetings,


On 01/08/2018 04:18 PM, Joel Ramsbottom wrote:
> A lot of my composition experience so far has included the immediate feedback of a live instrument, or recording an idea and have it playback (in a loop perhaps) immediately to tinker with and develop. So far I have this same iterative process of writing code and compiling with Csound, however. As you can probably appreciate, this process doesn't allow for such an immediate intuitive/spontaneous response as using a live instrument. The approach with Csound isn't that efficient. How can I adapt and change my approach here to make the most of Csound. I essentially aim to compose music with it.
>
>

I think there are basically two approaches to consider:

1) Using Csound to compose.

2) Composing using Csound.

That is, in case 1 you'll use the Csound language to compose your works.
This can be a tedious process, but you'll be working at a highly
detailed level.

In case 2, you'll use anything extant in the Csound ecosphere to assist
you in your composition, e.g Cabbage plugins in a DAW, composition
environments such as AVSynthesis, OpenMusic, and blue, code-oriented
front-ends such CsoundQt, etc etc etc.

So, strictly Csound and/or a more hybrid method. Given the enormous
flexibilities offered by contemporary music software, I tend towards the
hybrid approach. OTOH, if you want really know Csound, you'll want to
try composing something using only its language capabilities, which are
themselves rather enormous.

My two pfennigs.

dp

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Steven Yi
Hi Joel,

I wasn't sure of any particular suggestions as I wasn't sure what
tools you are using or what aesthetic you are exploring. I thought I'd
share some thoughts from recent experiences/practices in hopes that it
might be useful.

1. When it comes to "code" and Csound, that brings up a number of
associations. Sometimes, I spend time just developing instruments or
effects, whether using Csound code alone in a text editor or as part
of graphical instrument/effect in Blue.  Other times, I am writing
code for generating score to drive instruments. I typically move
between layers of construction (complex sounds, motives, phrases,
parts, periods, etc.) and the kind of code changes.

2. Sometimes a piece comes together just from code (for example, my
two recent pieces "Wuji" and "Reflections" were pure Csound CSD
pieces).  For these works, I composed mostly using Csound in UDP mode
(--port=10000), a text editor (Vim), and make.  In the beginning I
mostly live coded these works: I would write some instrument code,
evaluate the instrument, fire off a note to listen to the instrument,
change code, re-evaluate, etc.  When the sounding instruments got to a
point that was interesting I'd start writing instrument code that
generated score events to create textures/melodies/etc.  This too was
an iterative process of alteration, evaluation, and listening, but all
while Csound ran in the background.  At this point, I'd often be
developing and trying out score material while playing existing
material.  I think for both of these pieces, once it got to a certain
level of complexity, I found that notation and organization no longer
became efficient with live coding and I switched to rendering part
(using -+skip_seconds=xxx) or all of the CSD, audition, edit,
re-render.

3. For more complex instruments, I find using code alone inefficient
(too many parameters to read/understand/modify).  When I have this
kind of interest/need, I use Blue's visual instruments and effects.
I'll focus my time on designing and coding instruments and effects
using Blue's GUI builder and Csound ORC code. I try to keep that
practice separate from my sound design/exploration and composition
practices as I find it more efficient to focus just on coding an
instrument or just on composing with it. This tends to go in cycles of
designing an instrument, exploring it, creating a piece with it,
coming back to enhance the instrument, finding new sounds, creating
new works, etc.

4. I find visual timelines useful for organizing ideas in time. (Here
again I use Blue for this.) I like code for generating gestures and
ideas, but I find that visual interface make it easier for me to see
relationships between ideas, audition parts, and to modify the score.
Again, this depends on the material and piece; for example, a piece
I'm working on now started off as a CSD-only piece but got to a level
of complexity where I thought it'd be better to use a timeline and so
I imported it into Blue and moved on from there.

5. For shaping of the piece, I use Blue's mixer and automation system.
Most visual instruments/effects have widgets that can be automated on
Blue's timeline, and I can make changes in realtime while listening to
the work which makes it fairly intuitive. This isn't to say that Blue
doesn't have a number of things that really should be there (ahem,
metering...) but I find it's largely more plus than minus.

6. I've been exploring live coding of beat-oriented music a fair
amount lately. Most of the coding here is for creating sequences and
patterns of notes and I've been largely using pre-written instruments.
So far, the live coding has been done using Csound/Vim or Csound/Web
(http://live.csound.com), and the instruments that come with that are
all I'm using.  Recently I've been practicing a little bit more with
live coding in Blue, which allows working in a hybrid way (graphical
instruments/effects/mixer, but realtime score generation code). While
the kind of music I've largely been exploring here is different than
the experimental/art music side of my life, I find that practicing
coding live has helped me become more efficient in other aesthetic
explorations.

Cheers!
steven



On Tue, Jan 9, 2018 at 7:50 AM, Dave Phillips <[hidden email]> wrote:

> Greetings,
>
>
> On 01/08/2018 04:18 PM, Joel Ramsbottom wrote:
>>
>> A lot of my composition experience so far has included the immediate
>> feedback of a live instrument, or recording an idea and have it playback (in
>> a loop perhaps) immediately to tinker with and develop. So far I have this
>> same iterative process of writing code and compiling with Csound, however.
>> As you can probably appreciate, this process doesn't allow for such an
>> immediate intuitive/spontaneous response as using a live instrument. The
>> approach with Csound isn't that efficient. How can I adapt and change my
>> approach here to make the most of Csound. I essentially aim to compose music
>> with it.
>>
>>
>
> I think there are basically two approaches to consider:
>
> 1) Using Csound to compose.
>
> 2) Composing using Csound.
>
> That is, in case 1 you'll use the Csound language to compose your works.
> This can be a tedious process, but you'll be working at a highly detailed
> level.
>
> In case 2, you'll use anything extant in the Csound ecosphere to assist you
> in your composition, e.g Cabbage plugins in a DAW, composition environments
> such as AVSynthesis, OpenMusic, and blue, code-oriented front-ends such
> CsoundQt, etc etc etc.
>
> So, strictly Csound and/or a more hybrid method. Given the enormous
> flexibilities offered by contemporary music software, I tend towards the
> hybrid approach. OTOH, if you want really know Csound, you'll want to try
> composing something using only its language capabilities, which are
> themselves rather enormous.
>
> My two pfennigs.
>
> dp
>
>
> Csound mailing list
> [hidden email]
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

fauveboy
In reply to this post by fauveboy
Wow, theres alot to take in here...How can I live code csound with vim?

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

fauveboy
In reply to this post by fauveboy
Does this mean an instrument can be set up in the code and you can fire score/note events ?

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Steven Yi
Hi Joel,

For Vim, I'd first install two plugins:

Plugin 'luisjure/csound'
Plugin 'kunstmusik/csound-repl'

(I use Vundle for plugin management in Vim; those two plugins
correspond to Github projects https://github.com/luisjure/csound and
https://github.com/kunstmusik/csound-repl).

The first plugin has all of the language things (syntax highlighting,
opcode docs, etc.) and the second has just a few pieces for live
coding.

Once installed, the process generally works:

1. Start csound on commandline using --port flag (i.e., csound
--port=10000 some.csd).  That starts Csound with UDP listening on port
10000 for commands.
2. In Vim, load a Csound file or create an empty new Csound buffer to
use. csound-repl will default to using port 10000 for UDP.
3. With Csound running, select text and use <leader>eo  (on my system,
leader key is comma).  That's short for "evaluate orchestra" code.
You can also use <leader>es to evaluate and send score code to the
running Csound.
4. If in normal mode and you don't have any visual selection, using
<leader>eo will assume you are inside an instrument definition and you
want to evaluate the code between instr and endin that surrounds where
your cursor is.

You can see it all happening in this video:

https://www.youtube.com/watch?v=G5P_MP_2a18

(If it's not quite clear what's going on,I can record more of a
tutorial-style video that shows score and orchestra evaluations.)

steven


On Tue, Jan 9, 2018 at 2:24 PM, Joel Ramsbottom
<[hidden email]> wrote:
> Does this mean an instrument can be set up in the code and you can fire score/note events ?
>
> Csound mailing list
> [hidden email]
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

Giovanni Damiani
In reply to this post by fauveboy
My suggestions as composer:
1) if the work is score-oriented, you can enter events by midi (live or by sequencer);
2) if you want control each row in the score, or a selection of row, is very useful the feature of CsoundQt ‘evaluate selection’ (problems arise when refer to existing ftTables)
3) but to ‘touch the score’ I prefer the 'extract feature', now in 6.10 again ok, in which I can cut time (also across sections!) and make muting and solos of instruments.
4) It’s also possible to write as Widget a snapshot of a mix or what else.
In each case in CsoundQt I prefer my keyboard shortcut, two Function keys, so I can instantly run and stop Csound with a short physical gesture also to modify what I want of my project: a full algorithm as a single dB.
greetings
Giovanni Damiani
Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Reply | Threaded
Open this post in threaded view
|

Re: [Csnd] Compositional Approach

akjmicro
My 2 cents: using Csound in any way in your workflow is bound to create _some_ kind of speed bottleneck: whether it's assembling a score or designing the timbres themselves.

However, if you can accept that reality, and yield to it, it can bear fruit. It's definitely less immediate and for sure sometime more frustrating, but working via text directly (I use my own "microcsound" for example) can be rewarding. I recommend a workflow that will allow you to get feedback on small sections: e.g. have a master file and a temporary file that you actively use for auditioning passages.

Big picture: the critical question then becomes: how deeply do I want to go with Csound?

As others have mentioned, too: Csound as a MIDI instrument (or VST plugin) is a different thing than Csound as a text-to-sound compiler. There's much to explore in the middle-ground, via midi2sco utilites, I imagine.

-AKJ


On Jan 9, 2018 16:08, "Giovanni" <[hidden email]> wrote:
My suggestions as composer:
1) if the work is score-oriented, you can enter events by midi (live or by sequencer);
2) if you want control each row in the score, or a selection of row, is very useful the feature of CsoundQt ‘evaluate selection’ (problems arise when refer to existing ftTables)
3) but to ‘touch the score’ I prefer the 'extract feature', now in 6.10 again ok, in which I can cut time (also across sections!) and make muting and solos of instruments.
4) It’s also possible to write as Widget a snapshot of a mix or what else.
In each case in CsoundQt I prefer my keyboard shortcut, two Function keys, so I can instantly run and stop Csound with a short physical gesture also to modify what I want of my project: a full algorithm as a single dB.
greetings
Giovanni Damiani
Csound mailing list
[hidden email]
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
Csound mailing list [hidden email] https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here