Submitted by Pete.G on Tue, 12/04/2012 - 23:35.
I suspect nobody round here but me is using the Haiku OS (yet!), but I should let folks know anyway that I've ported Csound 5 to that platform.
It's a fairly complete, though command-line-only, port of 5.17.6. (Sorry it's not 5.18, but there were a number of delays, including a drive crash...) It includes real-time audio out and MIDI in, but no audio-in or MIDI-out as yet. None of the FLTK widgets are available, as that kit has not been ported to Haiku.
For reference, the package is at:
The source changes have been mailed to jpff and hopefully will get merged with the trunk.
Submitted by menno on Sun, 01/22/2012 - 15:52.
there are opcodes in the manual that are missing good, simple and/or complete examples. Sometimes there are just plain bugs and the opcodes do not work as they should. This makes that these opcodes like black boxes and make them unusable.
I think an example should clarify immediately why at the time it was necessary to create this particular opcode. Without this, the knowledge can get lost.
If someone knows of an example for an opcode that has been placed in the list below, please let me know.
These are the guidelines for the examples in the manual:
- work right-out-of-the-box
- run in realtime if possible
- sr = 44100 (or 48000 using jack)
- ksmps = 32
- nchnls = 2
- use the "modern" 0dbfs = 1 if possible (as used in Max and PD)
- be simple and clear in the purpose of that particular opcode
I'm testing with Ubuntu12.04 and CsoundQt.
I worked my way through the manual from A -Z twice now, but there are still examples for opcodes missing.
I hope that soon this blog can be deleted because all opcodes will have their examples in the manual and my work is done :)
This is the list with unsolved problems with examples
- #undef......no example
- #ifdef......no complete example
- #ifndef......no example
- >......no good example
- >=......no good example
- <=......no good example
- =......no good example
- <<......needs extra example
- >>......no good example
- |......no example
- ¬......no example
- chnparams..........no example
- copy2ftab..........no example
- copy2fttab..........no example
- cosh..........no good example
- cosinv........no good example
- ctrl14, ctrl21....no example (also initc14,21)
- delay1......no good example
- fareylen....no example
- FLTKopcodes....did not check examples
- fin(i)....no example
- foutk....no example
- frac....needs better example
- ftloadk/ftsavek....no example
- i....no example
- in32, inz, inh, inx, ino....no example (needed)
- initc14,21...no examples, together with ctrl14, 21
- inletf......no example
- inrg, outrg.........no example
- insremot, insglobal.........had no success so far
- jacko.csd....works on 32bit computer, not stable on 64bit?? may be a problem on my computer only
- log.......no good example
- loop_ge, loop_gt.......no example
- loscilx......plays 16 channel samples but not all is clear. what is iwsize and istrt?
- Linear Algebra opcodes.....no examples, desperately needed
- lpsholdp.......no example
- LPC..........not very stable opcodes (lpslot)
- midic14, 21..no examples
- midion2, midiout......sends no noteoff messages, note hangs
- midiremot, midglobal....connection OK, but plays too fast and hangs on final note
- MixerSetLevel_i.....no complete ex
- mrtmsg..........no ex
- noteoff, noteon....no example
- outletf....no example
- outletkid....no example
- outipat, outkpat......no example
- outic14, outkc14.........no ex
- octcps.....no good ex
- octmidi(b)....no good ex
- octpch....no good ex
- p5g, p5gdata.......cannot test
- pchmidi(b)...no examnple
- pchmidinn...no examnple
- pop_f.........no ex
- push_f....no ex
- ptablew...no examnple
- pvsdemix.....no ex
- pvsinit....no ex
- pvsout, pvsin.........no ex
- pvstencil........no ex with GEN 43
- python opcodes......some examples, can be more
- readclock.......not work for me
- remoteport.......no ex
- remove...no ex
- rigoto....no ex
- s16b14, s32b14.....will not make examples
- slider(16)(32)(64)(8)(f)(table(f)......will not make examples
- scanhammer........no ex
- serialEnd........no ex
- serialFlush........no ex
- serialPrint........no ex
- serialWrite_i........no ex
- sliderKAWAI....cannot test - but who can these days?
- socksend sockrecv.......cannot test
- sndload.......must be used with loscilx, a mystery
- specxxx.....no ex
- sinh(inv)........no ex
- splitrig........no ex
- subinstrinit........no ex
- strchar(k)....no example
- strcpy....no example
- strcmp(k)....no example
- strindex....no example
- strlen(k)....no example
- sstrlower(k)....no example
- strrindex(k)....no example
- strsubk....no example
- strtod(k)....no example
- strtol(k)....no example
- strtupper(k)....no example
- tb.........no example
- tabrec / tabplay.....no ex
- tablefilter........no ex
- table(i)gpw.........no example
- table(r)(w)a.........no example
- tablewkt.........no example
- tab2pvs.........no example
- tan(inv).........no good example
- tempest.........works but weird
- timeinstk.........no good ex
- timek.........no good ex
- turnoff2.........no example
- turnon.........no example
- vector opcodes....print stuff but don't produce any sound yet--> needs sonification
- vphaseseg....no ex
- zfilter2........no example, poor documentation
GEN & statement
- GEN43........no example
- GEN31.....no example
I think there are real problems with:
- LPC: a new set of new and streaming LPC opcodes would be welcome
I am happy with the great help i get from Joachim Heintz on "difficult" examples, and others!
Again, if you know how to use one of the opcodes above, create a working example and post it here. It will then be added to the manual.
Submitted by brian wong on Sat, 09/03/2011 - 21:49.
These are simple drone-like pieces generated algorithmically using only a basic sine-wave instrument. The csd files are created by analyzing PGN (Portable Game Notation) files, which are standard format files used to store chess games. The program was written in C++.
Game # 1 - Standard tuning pentatonic in A major
Game # 2 - 5-TET
Game # 3 - Just Intonation pentatonic
Game # 4 - 11-TET pentatonic
FourGames - 3h8TET - This piece was generated from a multiple game PGN file which includes all four of the other games.
The source chess games used are classics from the 1800's.
Submitted by edexter on Sun, 06/19/2011 - 07:36.
I have been playing around with building vst code generators and I also grabbed all the vst parameters so they can be edited in a spreadsheet. The blog doesn't seem to allow .zip files so I have them uploaded over here.
Submitted by Pete.G on Sun, 11/07/2010 - 07:11.
I've added a few more features to the (ruby script) midi2sco app that I wrote a while back (http://www.csounds.com/node/87), that I hope may make it a little more versatile.
It now (by default) separates instrument parameters in the file it generates with tabs rather than spaces. This doesn't hurt the output as a Score file at all, but makes it also acceptable to a spreadsheet program, so you can conveniently tweak parameters further if you wish.
Submitted by matt on Tue, 11/02/2010 - 19:03.
+ now supports latest CsoundLib Universal Binary
+ fixed crashing bugs when rendering to file and other problems
+ updated opcode color syntax library
+ added new opcode "soundinmac"
FEATURES (benefits over existing soundin/diskins)
:: automatic sample rate and channel conversion (# of outputs can be DIFFERENT than # of soundfile channels)
:: higher quality (k-rate) pitch shifting than diskin2's sinc interpolation
Submitted by edexter on Sun, 06/27/2010 - 02:40.
It is very common for ide's for programming languages to have menu's that are definable, This is the feature I am waiting for because there are a number of utilities that are available (I could make a python version of freq to sco) outside the gui that would be helpful to have. I.E. read from a file that the user can change. It is probably outside the possibility for the editor but I think that there is a 2 controller (I forget the name) that if the highlighting routines where written from scratch would provide highlighting for the table numbers although it is best to use constants.
Submitted by brian wong on Tue, 05/25/2010 - 19:16.
FMbot-00 is an constrained-random algorithmic just intonation composition, using a retriggering synth I call FMbot. The FMbot synth contains some simple constrained-random orchestra code and takes only the basic three pfields, instrument, note start time, and duration, making it a very easy synth to use and compose with. The results will be quite a bit different each time the song is played. I hope you find it interesting and/or amusing.
Submitted by brian wong on Wed, 05/05/2010 - 21:58.
I have posted two minor software tools on my website at http://www.bwong.ca
etrcalc.pd is a Pure Data patch that calculates the closest match to an interval within any equal temperament tuning.
ethan-00.zip is a Windows only executable file that displays tuning data in cents and frequency ratio for any equal temperament tuning.
Obviously these have nothing specifically to do with Csound, they are just my learning tutorials for a couple of new programming languages, but perhaps someone might find them useful utilities for composition or synth design, as I do.
Submitted by menno on Sat, 03/13/2010 - 15:59.
Installing of CsoundQt
CsoundQt - formerly know as Qutecsound - is developing fast.
This is how i got CsoundQt from SVN installed - with help from Andrés Cabrera **thanks**
- download CsoundQt from Sourceforge: svn co https://qutecsound.svn.sourceforge.net/svnroot/qutecsound qutecsound
- i already have built and installed Csound Double Precision - see another blog entry; http://www.csounds.com/node/1373
- install qt4-qmake and libqt4-dev
- go to qutecsound/trunk/qutecsound
- For Csound double precision use: qmake-qt4 qcs.pro CONFIG+=build64 LIBSNDFILE_LIBRARY_DIR="/usr/lib/x86_64-linux-gnu"
- stay at qutecsound/trunk/qutecsound
This will produce a working CsoundQt in qutecsound/trunk/qutecsound. Doublclick on "qutecsound" in the qutecsound/trunk/qutecsound/bin and CsoundQt opens.
Installing of Loris
For the Loris opcodes to work in Csound, i've used these instructions:
- go to http://sourceforge.net/projects/loris/files/ and get Loris version 1.8.
Submitted by brian wong on Sat, 03/13/2010 - 01:19.
All the heavens, seem to twinkle
With a crystalline delight;
Keeping time, time, time,
In a sort of Runic rhyme,
To the tintinnabulation that so musically wells
From the bells, bells, bells, bells,
Bells, bells, bells-
From the jingling and the tinkling of the bells.
Edgar Allen Poe, The Bells, 1849
Low quality mp3
Higher quality .ogg version here on the podcast http://www.csounds.com/node/1381
Submitted by Pete.G on Tue, 03/02/2010 - 02:36.
A while back, I posted about a script I wrote in Ruby to convert standard midifiles to Csound scores (http://www.csounds.com/node/87). Some people seem to have found it useful, so you might like to know that I've made a bit of an update.
Submitted by brian wong on Sun, 02/28/2010 - 00:06.
Unicycloid and Unicycloid2 are two pieces created with variations on a one-dimensional cellular automata composition system using a cycloid synth based on the design presented in the article by Hans Mikelson "Parametric Equation Oscillators" in Csound Magazine #2 http://www.csounds.com/ezine/spring1999/
You can check out the songs at http://www.soundcloud.com/brian-wong
Submitted by menno on Mon, 02/22/2010 - 04:00.
These are the steps i take for installing the most recent Csound install from GIT (using command: git clone git://git.code.sf.net/p/csound/csound5-git) in (K)(X)Ubuntu. The GIT version of Csound still may contain some bugs but i just want to have the most recent version of Csound on my system. After downloading the source package from GIT, these are the steps to take to build the latest version of Csound.
What packages are needed?