Les nouveautés de Csound 6.00.1

Notes de parution de Csound6

Csound6 est une réécriture significative d'une grande partie du code. En particulier, l'API n'est plus compatible, mais tous les anciens fichiers au format orc/sco/csd devraient fonctionner.

Il y a de nouvelles facilités comme la précision à l'échantillon et le mode temps réel décrit ci-dessous.

IMPORTANT : la variables d'environnement localisant les greffons se nomme OPCODE6DIR64 ou OPCODE6DIR (noter le 6) afin que Csound6 puisse coexister avec Csound5.

De même .csoundrc est renommé .csound6rc.

Les tableaux sont maintenant intégrés avec le support d'une syntaxe et d'opcodes. Ils existent également en format multidimensionnel. Ils sont habituellement créés avec l'opcode init ou avec l'opcode fillarray.

  k1[]  init 4

génère un tableau de taux-k à une dimension, de longueur 4. De même

  a2[][] init 4, 4

crée un tableau carré 4x4 de taux-a.

  k2[]  fillarray 1, 2, 3, 4

crée un vecteur de 4 éléments rempli avec 1,...4, qui définit aussi sa longueur.

Les éléments sont atteints par indexation entre [] comme k1[2] ou a2[2][3]. Les tableaux unidimensionnels remplaces les tvars et on peut les utiliser dans des opcodes comme maxtab, mintab et sumtab (voir ci-dessous). Un élément de tableau peut être rempli en le plaçant à la gauche d'un opcode :

  aSigs[0] vco2 .1, 440
  aSigs[1] vco2 .1, 880

Le nouveau mode prioritaire temps réel peut être activé en passant --realtime ou en fixant le champ realtime_mode de CSOUND_PARAMS à 1. Cela provoque les effets suivants :

  1. tout opcode de lecture/écriture de fichier audio est traité de manière asynchrone dans un thread séparé.
  2. toutes les opérations d'initialisation sont exécutées de manière asynchrone.

Le support du multicoeurs a été entièrement réécrit avec l'utilisation d'un algorithme différent pour la répartition des tâches, ce qui devrait consommer moins de mémoire et moins de verroux.

Nouveautés dans la version 5.19 (7 janvier 2013)

C'est principalement une distribution de correction de bogues avec cependant de nouveaux opcodes et des améliorations.

Nouveautés dans la version 5.18 (29 août 2012)

C'est principalement une distribution de correction de bogues avec cependant de nouveaux opcodes et des améliorations.

Nouveautés dans la version 5.17 (mars 2012)

C'est principalement une distribution sans changement majeur mais avec de nombreuses corrections.

Nouveautés dans la version 5.16 (février 2012)

Le changement principal est que le nouveau parseur est maintenant employé par défaut. L'ancien parseur est toujours disponible en cas de difficultés, mais le nouveau parseur a été testé en profondeur depuis le début de l'année, et il a reçu une restructuration complète de l'expansion des macros. Une des conséquences est l'exécution plus rapide de la plupart des orchestres bien que leur analyse soit plus lente. Quelques optimisations sont implémentées sous la forme de réduction en constante dans des cas simples. Les numéros de ligne et les noms de fichier sont mieux tracés qu'auparavant.

Quelques fuites de mémoire ont été aussi corrigées.

Nouveautés dans la version 5.15 (décembre 2011)

Nouveautés dans la version 5.14 (octobre 2011)

Nouveautés dans la version 5.13 (janvier 2011)

Nouveautés dans la version 5.12 (janvier 2010)

Nouveautés dans la version 5.11 (juin 2009)

Nouveautés dans la version 5.10 (décembre 2008)

Nouveautés dans la version 5.09 (octobre 2008)

Nouveautés dans la version 5.08 (février 2008)

Nouveautés dans la version 5.07 (octobre 2007)

Nouveautés dans la version 5.06 (juin 2007)