Les nouveautés de Csound 6.09

Notes de parution de Csound 6.09 (mai 2017)

De nouveaux opcodes et plusieurs corrections et améliorations.

Il y a comme d'habitude un certain nombres de changement internes, y compris plusieurs corrections de fuites de mémoire et un code plus robuste.

Notes de parution de Csound 6.08 (novembre 2016)

Comme d'habitude, il y a un certain nombre de corrections et d'améliorations des opcodes, mais les changements les plus importants apparaissent dans les structures du langage. Tout d'abord, dans le langage de partition, la gestion des macros et le prétraitement ont été entièrement rénovés, pour s'aligner sur les mêmes fonctionnalités de l'orchestre. L'analyse de l'orchestre a reçu un certain nombre de corrections décrites ci-dessous.

Un changement majeur et pas complètement compatible a été opéré dans la lecture et l'écriture des éléments de tableau. Maintenant, le taux de l'indice détermine souvent le taux de traitement ; voir l'entrée Orchestre ci-dessous. Ceci simplifie pas mal de code et semble répondre aux attentes des utilisateurs ; le code précédent comportait plusieurs anomalies.

Il y a également de nouveaux opcodes, des corrections internes de fuites de mémoire et un code plus robuste.

Notes de parution de Csound 6.07 (mars 2016)

De nombreux bogues corrigés, dont certains importants, des éléments internes sont inclus, ainsi que de nouvelles fonctionnalités et extensions. Comme d'habitude, il y a aussi des améliotations du code.

Notes de parution de Csound 6.06 (septembre 2015)

De nombreux bogues, certains assez importants, ont été corrigés et de nouvelles facilités et extensions ont été ajoutées.

Notes de parution de Csound 6.05 (Avril 2015)

Comme toujours il y a de nouvelles facilités et de nombreuses corrections de bogues. Une grande partie de cette livraison consiste en la suppression de nombreuses fuites et de saturation de mémoire. Naturellement ces changements ne sont pas très visibles à part une empreinte mémoire moindre. Noter que nous traitons les bogues et les demandes d'amélioration via le system de questions de github, et celles-ci ont grandement affecté cette parution.

Notes de parution de Csound 6.04 (novembre 2014)

Cette nouvelle version comprend de nombreuses extensions et corrections ; de nouveaux opcodes et un nombre important de réorganisations internes. Il y a un nouveau frontal et les versions iOS et Android présentent de nombreuses améliorations.

Nous suivons les bogues et les demandes d'amélioration via le système de signalement de github. Des propositions pour la parution suivante sont déjà faites, mais la quantité de changements impose une parution dès maintenant.

Notes de parution de Csound 6.03 (mai 2014)

Cette nouvelle version corrige de nombreux bogues, comprenant la résolution de tickets sur SourceForge et sur GitHub. Elle apporte également des changements internes pour améliorer l'exécution.

Notes de parution de Csound 6.02

Cette nouvelle version comporte de nombreuses corrections de bogues (y compris la résolution générale de tous les tickets sur SourceForge). Elle introduit aussi quelques nouvelles facilités telles qu'un serveur, du code pour exécuter Csound dans un navigateur et une large généralisation des opcodes de filtre pour les doter de paramètres modifiables au taux audio.

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)