Live data from Hacker News

Csound: A sound and music computing system

csound.com

61–70 of 94 posts

Re: Csound: A sound and music computing system

#61
post #45

I'm looking for a volunteer to add Csound as a script backend to VCV Prototype ( https://vcvrack.com/Prototype ), or any other scripting language of your choice that's not already available. Open an issue if interested. https://github.com/VCVRack/VCV-Prototype#adding-a-script-eng...

That is a fantastic idea!

Re: Csound: A sound and music computing system

#63

Earlier quoted context omitted.

Have you used it? I usually don't use proprietary software but I've been thinking of giving it a go. Supposedly bitwig has a language as well but I haven't used it either

Miller Puckette originally created Max at IRCAM (Institut de Recherche et Coordination Acoustique/Musique) in 1985, which is now marketed by Cycling '74. Then he later developed the open source Pure Data (PD) in the 90's, which also included real time signal processing features (flowing streams of high frequency audio over wires whose samples are at a much higher rate than the frame rate of the visual program's contr…

> flowing streams of high frequency audio over wires whose samples are at a much higher rate than the frame rate of the visual program's control signals

Pd's "control" classes are probably confusing to programmers coming from other computer music environments. There's no control rate in Pd.

The "control" classes (the ones without a tilde at the end of their name) send messages in zero logical time and may be triggered sporadically. Building diagrams out of them is like building an immediate-mode Rube Goldberg machine.

There are some conversion classes that allow control signal object communication. Some of the control-to-signal classes do conversion at what you could call "control rate"-- e.g., they might compute a single value and copy it to the rest of the samples for output. Others do sub-sample accuracy bounded by the precision of floats (single or double as Pd can be compiled to use either).

If you're weird you can use [bang~] to emulate a control rate diagram-- it will literally output the "bang" message at each block which you can then feed to a downstream Rube Goldberg machine in order to do arbitrary message passing each block. But that's less ergonomic than just using signal objects which a) all send the same type of vector data and b) get automatically ordered by the graph builder and are therefore easier to read. (The irony being that signal diagrams generally deal with DSP, so the readable part of the diagram is the most conceptually complex and the simple stuff like branching or counting to 10 tends to end up looking like a plate of spaghetti.)

There's also overhead in the control message dispatch which would probably undo any imagined efficiency gains. Signal diagrams on the other hand get sorted into an array of function callbacks (as needed during runtime or editing time), so there's no chasing of pointers or type-checking to eat up cycles.

Re: Csound: A sound and music computing system

#64
post #55

Earlier quoted context omitted.

I'm not trying to burn anyone. The people who make the project really care about it and have put a lot of effort in it. I personally am just too stupid to figure it out. I think like Haskell and R it's designed for a different profession so to people like me who are programmers first I am scratching my head the whole time. I can do some thing in it, yeah eventually, usually... The documentation appears complete and I…

Do you have any recommendations for learning sound synthesis and such (for the purpose of music production) for those who are, as you say, programmers first? Most the materials I’ve found teach using Csound, PD, SC etc (understandably), and that’s always a bit off-putting to me and appears as another obstacle / headache, so the projects get shelfed more quickly. I’ve begun reading Miller Puckett’s book Theory and Tec…

The fundamentals of sound synthesis are things like oscillators, delays, filters etc as you see in Miller Puckett's book, and teaching materials tend to lean towards environments like Csound, pd, SC etc for their practical exercises because they all contain roughly equivalent implementations of those fundamental tools, albeit wrapped in some uniquely opinionated structural or UI paradigm, in each of those environments.

If you think as a programmer you might be happier around low-level things, take a look at Soundpipe, which contains those same fundamental elements again - often with the same or similar names to their equivalents in the above programs - but in plain C code.

https://paulbatchelor.github.io/proj/soundpipe.html

For something a little more 'live' and high-level built on that library by the same author, check out Sporth, or another guy's browser-based embedding of it called AudioMasher - which has some very nice examples.

https://paulbatchelor.github.io/proj/sporth.html https://audiomasher.org/

Re: Csound: A sound and music computing system

#65
post #55

Earlier quoted context omitted.

I'm not trying to burn anyone. The people who make the project really care about it and have put a lot of effort in it. I personally am just too stupid to figure it out. I think like Haskell and R it's designed for a different profession so to people like me who are programmers first I am scratching my head the whole time. I can do some thing in it, yeah eventually, usually... The documentation appears complete and I…

Do you have any recommendations for learning sound synthesis and such (for the purpose of music production) for those who are, as you say, programmers first? Most the materials I’ve found teach using Csound, PD, SC etc (understandably), and that’s always a bit off-putting to me and appears as another obstacle / headache, so the projects get shelfed more quickly. I’ve begun reading Miller Puckett’s book Theory and Tec…

Chuck [1] is what clicked for me, as it is C/Java-like with the DSP basics built-in. Im biased here however as I eventually became one of its developers. Its easy to get started although unfortunately also easy to outgrow :)

SonicPi/Overtone or Gibber are also nice also as they are based off of existing languages.

[1] https://chuck.stanford.edu/

Re: Csound: A sound and music computing system

#66
Here's an interview with Aaron McLeran, who has done a lot of work with CSound, and collaborated with Brian Eno on the procedural music in Will Wright's "Spore" computer game at Maxis, using Pure Data (PD).

Immersive Audio Podcast Episode 7 Aaron McLeran

https://podcasts.apple.com/ie/podcast/immersive-audio-podcas...

https://soundcloud.com/user-713907742/immersive-audio-podcas...

>In today’s episode Oliver was joined via Skype by Aaron McLeran, Lead Audio Programmer at Epic Games. Aaron’s first taste of audio programming was writing computer music in CSound while in graduate school at University of Notre Dame (when he was supposed to be doing astrophysics research). Realising his true calling, he left physics to study procedural and interactive computer music, audio synthesis, and audio analysis with Dr. Curtis Roads at the University of Santa Barbara. His first game audio experience was writing procedural music on Spore where he got to collaborate with Brian Eno and Maxis’ audio director Kent Jolly on writing much of the game’s truly procedural music. His next game audio gig was a sound designer on Dead Space 2 where he wrote much of the games interactive audio systems in Lua along with accomplished audio director Don Veca. He made the leap from technical sound designer to audio programmer at Sledgehammer Games where he worked on Call of Duty: Modern Warfare 3 and Call of Duty: Advanced Warfare. His next audio programming gig was at ArenaNet where he got to wrangle with the unpredictability and scale of game audio in the context of an MMO and developed some pretty cool tech around for player-created music and musical interaction. He’s currently working on a new multi-platform audio mixer backend for UE4 and developing new tech and approaches to game audio for VR.

>Aaron speaks to Oliver about all things Game Audio and Procedural Audio and his unusual entry into the industry.

GDC Vault: Procedural Music in SPORE, with Kent Jolly, Aaron McLeran

https://www.gdcvault.com/play/323/Procedural-Music-in

MAKE YOUR OWN KIND OF MUSIC IN 'SPORE' WITH HELP FROM BRIAN ENO (LISTEN TO THIS)

http://www.mtv.com/news/2456432/make-your-own-kind-of-music-...

THE BEAT GOES ON: DYNAMIC MUSIC IN SPORE: Audio engineers Kent Jolly and Aaron McLeran unveil Spore's procedural music generation.

https://www.moredarkthanshark.org/eno_int_gspy-feb08.html

Will Wright and Brian Eno - Generative Systems

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

Pure Data

https://en.wikipedia.org/wiki/Pure_Data#Projects_using_Pure_...

>Projects using Pure Data

>Pure Data has been used as the basis of a number of projects, as a prototyping language and a sound engine. The table interface called the Reactable and the abandoned iPhone app RjDj both embed Pd as a sound engine.

>Pd has been used for prototyping audio for video games by a number of audio designers. For example, EAPd is the internal version of Pd that is used at Electronic Arts (EA). It has also been embedded into EA Spore.

>Pd has also been used for networked performance, in the Networked Resources for Collaborative Improvisation (NRCI) Library.

Re: Csound: A sound and music computing system

#67
post #40

Long-time user of Csound, Max, and Pd (& have spent a little time with ChucK & Supercollider). Max & Pd are fantastic for incorporating sensors & other physical interfaces, real-time interactivity, routing signals, creating visualizations, & all that. Supercollider is fantastic for generative music & using control flow compositionally. Csound, on the other hand, is really, really great for creating beautiful & nuance…

> beautiful & nuanced electronic compositions. wondering if you have any favorites that you can recommend.

This one’s my favorite: https://m.youtube.com/watch?v=TecDlpGAhq0

Really beautiful album, especially the 5.1 surround version.

Re: Csound: A sound and music computing system

#68

Earlier quoted context omitted.

This is exactly my experience with both sc and Csound. (And Max too, for different reasons.) Csound is based on a synthesis paradigm that dates back to the very first computer music experiments. It started life as a microcomputer implementation of Music 11, which was based on Music IV, which dates back to the 60s - and it hasn't moved on from there. Meanwhile sc is a masterpiece of software development - a smooth and…

Max/MSP struck me like a very opinionated and schizophrenic elderly camel, who's been across the desert many times: it's wonderful and indispensable in certain situations, but it will get mad and spit on you if you don't treat it right, and it's butt-ugly, and some Max programmers have a way of cultivating and celebrating that butt-uglyness. (See any of AntiOrp's Nato.0+55+3d code!) https://en.wikipedia.org/wiki/Nato…

I found some great links (which I've archive.orgified) on Jeremy Bornstein's page on Nato:

Here is some of the delightfully stylized "documentation" of some interesting NATO extensions, written with Netochka Nezvanova's poetic simply.SUPERIOR Eastern European Marxist Feminist Punk Hacker ASCII Art Razzle Dazzle.

http://www.bootsquad.com/old_site/nato/nato00.html

If the built-in NATO objects aren't enough for you, you may purchase several `extended` objects for NATO. At the time of this writing, they include:

- 242.wto: video streaming objects

https://web.archive.org/web/20010707090427/http://eusocial.c...

         242.wto + 242.wto2 -  feu!lez de mdl c!t!zn malad!e
         242.wto + 242.wto2 -  nato.0+55.modular objekts

         realtime video streaming 4rom nato.0+55 2 nato.0+55
         i.e. 01 wto global video processing network.
         performance dependent on internet konekzie.
 
         "have tested via ethernet from g4 > g3.
         full framerate, no visible delays.
         video codec works best here.

         320x240 codecq 3 using video
         is my choice at the mom.
         runs stable since three hours" - fm life 4rm.
- 242.parazit: a plug-in host for Image/ine plug-ins

https://web.archive.org/web/20010707090427/http://eusocial.c...

      242.parazit  -  a nato.0+55 plug-in host for steim image\ine plug-ins

      image\ine plug-ins are lovelier in nato.0+55 modular due 2 :
      one may operate them in parallel or sequentially as desired
      + one may instantiate as many kopies as desired
      + due 2 fakt nato.0+55 is much more flexible regarding image resolution
      measures have been taken so that the image\ine plug-ins
      operate in one similar fashion - hence it is not required
      that one restarts the host application in order to modify the output resolution.
      + naturally one may now kontrol image\ine plug-ins via innumerable max routines.

      nato.0+55    - is of course the most superb realtime.non.realtime. 
      m9ndfszp video \ image etcetera etcetera distraktiv kode kontainer.
      juzt 1 kl!k   -  http://membank.org/     juzt ur kl!k 
- 242.fireuire: several FireWire objects, which permit NATO to send various data (image & effects data, DV data, MSP audio data) through your FireWire port

https://web.archive.org/web/20010707090427/http://eusocial.c...

             -    N 4 � �.firewire  :  beauty has its reasons.

    N 4 � �.firewire is a multi klient \ multi application firewire extension.
    permitting multiple applications and klients to simultaneously engage in  
    video + audio firewire aktivity.
    
    klients exist for nato.0+55.modular. image\ine.  msp.
- 242.o204: an internet data transfer (download/upload) object

https://web.archive.org/web/20010707090427/http://eusocial.c...

        242.0+204  -  max c++\c-- objekt primarily konstrukted for utilization 
                              with nato.0+55.  if desired it may be utilized independently as well.

        242.0+204 performs http \ https \ ftp file transfers - 
        automatic compression and decompression [stuffit engine required] 
        of data transferred = feasible.  operations may be sequential. logged. 
        synchronous + asynchronous

        nato.0+55 + 242.0+204 locked in one digital embrace
        may be utilized for timed video and audio data capture + automatik \ programmatik 
        upload of mute+media kapzulz to an internet ftp location. - furdzr unatendd        
        populaz!on=poluz!on ov dze !nternaz!onl b!t ztream = !nev!tabl + !mperat!v

        4 an example - may konsum [>]
- 242.axial: a directory/search engine utility

https://web.archive.org/web/20010707090427/http://eusocial.c...

        242.axial  -  ultra superb avec nato.0+55 modular + non-modular 
        242.axial  -  01 morphology ov 01 direktory zmak routine
      
        ultra elegant _ recursive + infinite search engine
        index the stem + branch into the axial system of a directory strukt.

        nato.0+55 operators may access + only _ juzt 1 klik [>]
- 242.of02: a realtime, recursive multi-layer photoshop file to qt movie converter

https://web.archive.org/web/20010707090427/http://eusocial.c...

        242.0+f02  -  max c++\c-- objekt primarily konstrukted for utilization 
                              with nato.0+55. if desired it may be utilized independently as + well.

        242.0+f02 performs the conversion of multi image or multi layer files - photoshop. tiff. flashpix
        to single track quicktime films. multiple track quicktime films or multiple quicktime films.   

        the film outputted may be sequential - the image files are placed in one track sequentially
        the film outputted may be parallel - the image files are placed in separate film tracks starting at time 0
        the film outputted may be parallel and sequential - [m9ndfukc.macht.fre!.n!chtz+?]
        the image files are placed in separate film tracks starting at sequential times.
        the film outputted may be autonomous films - plural
        the image files are placed in separate films entirely.
- 242.obl!ke: a media preview object

https://web.archive.org/web/20010707090427/http://eusocial.c...

        obl!ke.0+0000  -  max c++\c-- objekt . facilitates previewing of aiff\sd2\film files 
     
        for auto-loading into the buffer~ and sfplay~ msp objekts + movie + nato.0+55 
        max objektz + etc. it may also be utilized as a file path aggregator \ accumulator for   
        convenient access to previously specified \ selected files  -  and if desired for 
        converting formats - such as cd audio for subsequent automatik loading into objekts 
        enumerated.    

        please insert addtl ko!nsz +? [>]
- 242.gl: an OpenGL renderer

https://web.archive.org/web/20010707090427/http://eusocial.c...

        NATO.0+55.GL - brings OpenGL rendering to NATO.0+55 in 01 superb. ultra sanitary fashion.
        NATO.0+55.GL - is totally + totally integrated within NATO.0+55

        NATO.0+55.is a realtime + modular authoring environment 
        comprised of approx 130 objekts [1.22.01] encompassing QT, QTVR, 
        2D + 3D GRAPHIKS, LIVE-VIDEO, FIREWIRE, VIDEO-STREAMING, FLASH, MP3. QTFX etc.

        NATO.0+55.GL facilitates
        realtime 3d model specification. manipulation. texture mapping. lighting. fog. etc.

        Unlike the ultra rigid + centralized 1 track korporat monstrosities sponsored by INTEL 
        \+\ populated by aesthetically + biologically destitute xy computer programmers 
        avec 0+0 imagination and 0+100 percent model citizen predilections - 
        NATO.0+55.GL is kompletely modular + infinitely flexible.

        NATO.0+55.GL permits an infinite number of render sequences.
        NATO.0+55.GL permits an infinite number of render sequences.

                NO treatments. No columns. No windows. 
                NO inhibitors. NO prolonged inkubations. 
                NO korporat translations. 

                PURIFIKATION>
- 242.qtfx: a QuickTime effects host

https://web.archive.org/web/20010707090427/http://eusocial.c...

     -   NATO.0+55.QTFX  :  realtime quicktime effects processing within NATO.0+55 [>]
                                        in 01 superb. ultra sanitary + flexible fashion.

     one may process video + 3d + 2d data via std quicktime effects + 3rd party effects
     in realtime + non-realtime - as desired.  operation = ultra sanitary + flexible evidament.

     one may process video + 3d + 2d data via std quicktime transitions + 3rd party transitions
     in realtime + non-realtime - as desired.  operation = ultra sanitary + flexible evidament.

     2 versions = may be selekted - standard + ultralux. ultralux permits the compilation of standalone applications
     for non-commercial or commercial [during the korporat fascist (r)evolution life forms are presently experiencing
     in which 01 googolplex of iszkrema flavorz are ultra available everything = ist pure komersz - inkluziv of +
     not limited to one's simply genial m9nd kontainer [>] whilst the standard version does not.
     one may selekt as one's status permits _____...    body without borders [want zom +?]    

     si vouz voulez ____...  
            
     just 1 klik \ ur klik     _   http://order.immunology.com/>YES PLEASE+?
- 242.nr+: some non-realtime objects

https://web.archive.org/web/20010707090427/http://eusocial.c...

       242.nr+ - nato.0+55 objekts facilitate realtime \ non-realtime rendering \ processing.
       generally nato.0+55 attempts to operate in realtime. depending on the underlying hardware
       this may restrict the type and \ or number of processes that may be performed.
       the realtime \ non-realtime objekts may be utilized to rekord data in non-realtime 
       thus facilitating high quality rendering and \ or processor intensive tasks.

       likewise 242.nr+ permits operations unfeasible in any other environment.
       i.e. one may render a film in reverse \ randomly \ stochastically \ programmatically.
       e.g. one may specify that only every other frame is to be rendered or that every 10 frames
       a loop should be applied. or that only those frames that fit a certain criteria should
       be rendered.  in other words NATO.0+55 renders korporat fascist kode null + ultra null
       in 01 ultra sanitary \ elegant + ekxpedient fashion.

      komentari

      "the non-realtime objects prove that there is truly 
       nothing you can't do with nato.0+55 -- now i can 
       work in high resolution with full-frame rate results.
       it truly renders all other `nonlinear` editing applications 
       ultra null"

      "ultra lovely :-) "
- 242.rna: NATO to MSP sound manager driver and associated software.

https://web.archive.org/web/20010707090427/http://eusocial.c...

             NATO.0+55.RNA  :  beauty has its reasons.

             NATO.0+55.RNA is a multi klient \ multi application audio library \ patchbay
             permitting multiple applications + klients to simultaneously engage in ___... 
             unilateral global.OS vociferous akkords. da + ultra da.
             
             klik 2 m9ndfukc [>]    klik if u do not own nato.0+55 [>]

             it is the ultra.inauguration of multi.format multi.klient FREE global.OS konverzazie.
             + some 01 in ost europa kontrols the protokol [>] 
             NATO kontra NN +? nn u!zprz - uarm.kompaz!onat.zm!le okz!dent kr!!!!ket.

             klients exist for nato.0+55.modular. msp.
    

             NATO.0+55.RNA  :  01 addtl simply.SUPERIOR + ultra mortal projekt by Netochka Nezvanova. 
             implemented by ___... mmmmmm _

             `must play a game of mother` - i smell baby powder!!!
             _____.... nn cannot play mother!!! nn can play mistress +? da + ultra da.
             apropos. most of your children [ne. make that all]
             arnt very attractive. they must not be yours a +?

             bon. let us play - delicious kouard. firstly however - letz konfuze dzm [>]

Re: Csound: A sound and music computing system

#69

Earlier quoted context omitted.

This is exactly my experience with both sc and Csound. (And Max too, for different reasons.) Csound is based on a synthesis paradigm that dates back to the very first computer music experiments. It started life as a microcomputer implementation of Music 11, which was based on Music IV, which dates back to the 60s - and it hasn't moved on from there. Meanwhile sc is a masterpiece of software development - a smooth and…

You make some good points...sonically, out of all the visual node-based and text-based audio DSP environments, only Native Instruments' Reaktor has a reputation for DSP sound quality rivaling commercial software instruments/effects. Worth noting that Reaktor is itself a commercial AU/VST/standalone instrument/effect. As a resident of both Davis and Berkeley, CA I've heard a lot of stiff academic music made in Max/MSP…

John Bischoff, of Mills College in Oakland, California, has been active in the SF Bay Area experimental music scene for a long time.

https://en.wikipedia.org/wiki/John_Bischoff_(musician)

https://www.johnbischoff.com/

Lots of amazing interviews with amazing people here:

https://econtact.ca/12_2/interviews_golden.html

John Bischoff

https://econtact.ca/12_2/audio/JohnBischoff.mp3

By now, one of the West Coast biggies, actually, make that international, he’s at the level where he’s thought of as one of the masters, though he is very mild-mannered and modest. In the 70s he formed League of Automatic Music Composers, one of the first computer music network bands, along with Jim Horton, Rich Gold, Tim Perkis. They would use Kim computers and plenty of homemade code and software (and get roasted in the newspapers by the critics especially during New Music America 1981, they were mocked unmercifully, but water off a duck’s back). Who’s laughing now, eh? [November 1988, dur. 11:24]

Laurie Anderson

https://econtact.ca/12_2/audio/LaurieAnderson.mp3

Probably one of the most famous of all our EA people, who successfully bridged the gap between the avant-garde and the “in the know” mainstream.” Even in the early 80s she packed the Mills College Concert Hall, with her violin, millions of “toys” including vibrators, plenty of digital delay and thrilled us all. A sidebar: when I was interviewing Laurie at The Phoenix Motel in San Francisco, a guy came into the room, she told him to introduce himself to Barbara, and he extended his hand and said: “Hello, I am Wim Wenders”… [17 February 1990, dur. 29:00]

Re: Csound: A sound and music computing system

#70
post #67

Earlier quoted context omitted.

> beautiful & nuanced electronic compositions. wondering if you have any favorites that you can recommend.

This one’s my favorite: https://m.youtube.com/watch?v=TecDlpGAhq0 Really beautiful album, especially the 5.1 surround version.

I clicked the link and was like "ha, what, no way BT uses CSound" but I was wrong!

http://simoncpage.co.uk/blog/2008/10/bt-this-binary-universe...

Post reply on HN