Csound Csound-dev Csound-tekno Search About

[Csnd] Announcing Csound 5.18

Date2012-08-29 14:09
Fromjohn ffitch
Subject[Csnd] Announcing Csound 5.18
It is with great pleasure that I can announce the availability of
Csound 5.18.  The manual, release notes and sources are on
Sourceforge, together with a growing number of packaged system.

The release notes are below, and I do not want to single out any
particular changes, but bug fixes, speed ups, easier use and
user-requested facilities have been the leading drivers.

Thank you to all the contributors to this release.

==John ffitch
------------------------------------------------------------------------
Notes for 5.18
==============

This is mainly a bug-fixing release but with a number of new opcodes and
enhanced features. 



New Opcodes:
      log2 function to calculate logarithm base 2
      joystick to read input values (Linux only)
      platerev, a physical model from Stefan Bilbao
      vbap opcode is a generalisation of the various fixed number of
        channels
      vbapg opcode is like vbap except just calculates gains
      pwd opcode to obtain the working directory
      readf/readfi to read strings from a file
      centroid opcode (like pvscent but acting on audio signals)
      cosseg opcode, like linseg but with cosine interpolation
      cossegb opcode, like linsegb but with cosine interpolation
      cossegr opcode, like linsegr but with cosine interpolation

New Gen and Macros:
      NONE

Score
      A score may be omitted totally
  

Modified Opcodes and Gens:
      New features in partikkel
          - panning law for channelmasks can now be set using a
            function table (second optional arg to partikkel) 
          - new support opcodes partikkelget and partikkelset, to
            access and modify the internal mask indices of partikkel 
      follow2 was reworked do the i-rate and k-rate calculations are
          the same
      pvscent corrected as it returned half the correct value
      vbaplsinit can create more than one speaker layout which
          vbap/vbapg can use.  Also much better diagnostics on
          incorrect layouts

Utilities
      csbeats: internal fixes to remove crashing 
  
Frontends
      CsoundAc has seen considerable developments
  
Bugs fixed:
      dates could crash on 64bit architecture
      Some multicore interlocks were wrong
      Some files could be closed twice, leading to a crash
    
System Changes:
      Changes to  to allow spaces between words, and escaped
         characters. 
      Code changed so bison 2.6 can be used
      fout and fin use a better buffering strategy, and so are faster
      It is possible to specify just an orchestra with the --orc flag.
        Useful when a score is not needed
      added a --ogg flag for easy use of ogg/vorbis output
      It is assumed that libsndfile version 1.0.19 or later is available
      Added alsaseq real-time midi (see below)

API:
      NONE  

Internal:
      Many!  Some messages quietened, more defensive code etc
      Code speeded up in many places; hopefully not many bugs introduced

========================================================================
Alsaseq
=======

Memorandum about the syntax of the connections:

-M address_list
-Q address_list

where:

  address_list ::= address[,address,...]

  address ::= client_number[:port_number]
  address ::= client_name[:port_number]

  client_number and port_number are integers >= 0

  The default port_number is 0.

  client_name is a string where the first char is not a number

Example with `CsOptions':


-odac ; etc
-+rtmidi=alsaseq
;; The default name of the client is 'Csound'
-+alsaseq_client="Csound ALSA Sequencer Test"
;; If there are spaces in the name of the client,
;; we can put it between the "..."
-M 20,"USB MIDI Controller:1",128:3,keykit:1
-Q LinuxSampler,LinuxSampler:1

;; Also the follow is valid
;; -M "20,USB MIDI Controller:1,128:3,keykit:1"
;;
;; Here is an extreme example that uses the characters ','
;; and ':' in the name of the client.
;;
;;   -M "Uno\,Due\,Tre\:4"
;;
;; The name of the client is Uno,Due,Tre:4 and the port is 0.
;; Idem but the port is 1 (it also works without escape for ':')
;;
;;   -M "Uno\,Due\,Tre:4:1"
;;