github csound/csound 6.09.0
Csound 6.09.0

latest releases: 6.18.1, 6.18.0, 6.17.0...
6 years ago

CSOUND VERSION 6.09 RELEASE NOTES

A mixed bag of new opcodes and many fixes and improvements.

Also as usual there are a number of internal changes, including many
memory leaks fixed and more robust code.

-- The Developers

USER-LEVEL CHANGES

New opcodes

  • select -- sample-by-sample comparison of audio selecting the output.

  • midiarp opcode -- generates arpeggios based on currently held MIDI notes.

  • hilbert2 -- a DFT-based implementation of a Hilbert transformer.

  • Ableton Link opcodes -- for synchronizing tempo and beat across local area networks.

  • pvstrace -- retain only the N loudest bins.

  • several new unary functions/opcodes for k-rate and i-time numeric
    arrays: ceil, floor, round, int, frac, powoftwo, abs, log2, log10,
    log, exp, sqrt, cos, sin, tan, acos, asin, atan, sinh, cosh, tanh,
    cbrt, limit1.

  • several new binary functions/opcodes for k-rate and i-time numeric
    arrays: atan2, pow,hypot, fmod, fmax, fmin.

  • limit -- numeric limiting within a given range (for arrays).

  • tvconv -- a time-varying convolution (FIR filter) opcode.

  • liveconv -- partitioned convolution with dynamically reloadable impulse response

  • bpf, xyscale, ntom, mton -- (from SuperCollider?).

  • OSCsendA -- asynchronous version of OSCsend,

  • OSCsend -- now implemented directly using system sockets. Old version
    using liblo has been kept as OSCsend_lo.

  • OSCraw -- to listen for all OSC messages at a given port.

  • New implementation of OSCsend not using liblo, with previous version
    now called OSCsend_lo,

  • sorta and sortd -- sort elements of an array.

  • dot -- calculates the dot product of two arrays.

  • zero delay filters -- zdf_1pole_mode, zdf_2pole_mode, zdf_ladder,
    zdf_1pole and zdf_2pole.xml, diode_ladder, z35_hpf and K35_lpf.

  • product -- takes a numeric array (k or i-rate) and calculates its product.

  • supercollider ugens -- sc_phasor, sc_lag, sc_lagud, sc_trig added.

New Gen and Macros

Orchestra

  • Including a directory of UDO files no longer fails if more than about 20 entries.

  • It was possible for kr, sr, and ksmps to be inconsistent in one case, no more.

  • Macro names better policed and bracket matching.

  • Octal values as \000 can be in strings

Score

  • Improved line number reporting in r opcode and case with no macro implemented.

  • m and n opcodes fixed.

  • Expansion of [...] corrected and improved.

  • Strings in scores improved

  • The ) character can be in a macro argument if it is escaped with .

  • Use of the characters e or s could lead to errors; now fixed.

  • Macro names better policed, and bracket matching.

  • p2 and p3 are now at higher precision, no longer truncated to 6 decimal places.

  • new opcode d to switch off infinite notes (denote); same as i with negative p1.

  • named instruments can be turned off with i if a - follows the "

Options

  • jack midi module now can report available devices under --midi-devices.

Modified Opcodes and Gens

  • ftgentmp improved string arguments.

  • hdf5read opcode now reads entire data sets when dataset name string
    is suffixed with an asterisk.

  • use of non power-of-two lengths now acceptable where before it was inconsistent.

  • ampmidid optionally can be aware of 0dbfs.

  • dust and dust2 at k-rate now conform to the manual (NOTE: this is an
    incompatible change).

  • In prints the format %% now prints one %.

  • OSClisten can be used with no data outputs.

  • GEN18 corrected to write to requested range.

  • sockrev now can read strings.

  • vbap system can in some cases allow arbitrary number of speakers via
    arrays (work in progress).

  • Websocket server can only accept one protocol output, so limiting
    intype to just a single argument.

  • sum opcode will also sum elements of an array.

  • Overloaded pvs2tab and tab2pvs now can create and use split
    magnitude and phase arrays.

Utilities

  • dnoise fixed.

Frontends

  • icsound:

  • csound~:

  • csdebugger:

  • HTML5

  • Removed HTML5 Csound editor which has quit working.

  • Emscripten: Emscripten Csound (asm.js) now requires sourcing in CsoundObj.js and
    FileList.js separately from libcsound.js. This is to accommodate using the
    same JS API with either asm.js or wasm backends.

  • CsoundQT: CsoundQt 0.9.4 is announced:
    https://github.com/CsoundQt/CsoundQt/blob/develop/release_notes/Release%20notes%200.9.4.md.

  • Windows installer with CsoundQt includes PythonQt.

General Usage

Bugs Fixed

  • pwd works on OSX.

  • Fencepost error in sensLine fixed.

  • OSCsend corrected for caching of host name.

  • Bug in push/pop opcodes fixed (this opcode is now a plugin and deprecated).

  • Bug in sprintf removed.

  • Bug in soundin removed.

  • losci/losci3 fixed in case of long tables.

  • inrg was broke for a while.

  • Partikkel channelmask panning laws had an indexing error, now fixed.

  • jack audio module now allows for independent numbers of in and out channels.

  • Bug in string copying fixed.

  • Bug in hdf5read where if two hdf5read opcodes were placed in series
    in an instrument, the argument names of the second opcode instance
    would be incorrect due to directly changing the last string
    character of the first when reading an entire dataset.

SYSTEM LEVEL CHANGES

System Changes

  • soundin now uses the diskin2 code.

  • out family of opcodes reworked to reduce interleaving costs and to
    take proper regard if nchnls value.

API

  • New csound_threaded.hpp header-only facility, obviating need for
    csPerfThread.cpp object in some projects.

  • Added GetA4 function.

  • New framework for plugin opcode development in C++ using Csound's allocator.

  • Added StrDup function.

  • Boost dependencies removed from Csound interfaces, CsoundAC, and CsoundVST.

Platform Specific

  • iOS

  • iPad portrait SplitView fix+animation, info popover resizing, stop
    button fix in Soundfile Pitch Shifter.

  • Csound-iOS API updates; Examples cleaned up, enhanced/expanded, and reordered.
    Manual revised, expanded, updated. Updates to API and examples
    support iOS 10 and Xcode 8.

  • Android

  • Multichannel input and output allowed.

  • Windows

  • csound64.lib import library added to Windows installer.

  • OSX

  • GNU/Linux

Don't miss a new csound release

NewReleases is sending notifications on new releases.