
Voici quelques informations en vrac. Ce n'est pas très structuré, mais CopperLan est tellement vaste et a un tel potentiel que c'est difficile de le décrire succinctement. De plus le risque est grand de laisser sous-entendre une complexité qui n'existe pas…
Tout ce qui est décrit ci-dessous est soit géré automatiquement, soit ne nécessite que peut d'effort de programmation.
Et donc, CopperLan est une technologie de mise en réseau d'équipements et d'applications conçu sur base des principes suivants:
- le réseau peut passer à travers n'importe quel support physique (USB, Firewire, Ethernet...)
- les performances permettent l'exploitation temps réel. Elles dépendent cependant des capacités du réseau physique et du hardware connecté.
- l'utilisateur est libéré de tout problème de configuration. Par exemple, les équipements USB ne nécessitent pas de driver dédié (un driver générique est fourni avec le package CopperLan), et la connexion Ethernet ne nécessite pas d'adresse IP (CopperLan a son propre Ethertype IEEE 0x8927, il est donc possible de désactiver tous les protocoles réseau... excepté CopperLan bien sûr)
- le réseau est totalement décentralisé, son intelligence est distribuée sur toutes les machines. Il n’y a pas de maître de sorte que la perte d’une machine ne fera jamais tomber l’entièreté des applications (autres que celles tournant sur la machine perdue évidemment).
- une application (terme utilisé pour décrire un hardware ou software CopperLan) doit pouvoir être déplacée sans impact sur son adressage
- le débranchement accidentel d'un hardware ne perturbe pas le réseau, tout comme son rebranchement.
- une application est déclarée automatiquement lors de son arrivée sur le réseau de sorte à pouvoir être exploitée par d'autres. Cette déclaration contient des informations telles que l'identité propre (utile pour les applications en bundle), le domaine d'application (musical, lumière, audio, ...), ses capacités spécifiques, etc...
- l’établissement de connexion est assisté par CopperLan qui permet de filtrer les destinations potentielles compatibles avec la source indiquée. Ainsi on peut n’afficher que les instruments lorsqu’on cherche une destination pour un clavier, que les mixeurs pour un certain contrôleur, que les plugins pour un autre, etc…
- transport de message normalisés et/ou customisés de type numérique à haute résolution, texte ou bloc binaire; mais aussi des horloges à résolutions multiples, des signaux, des messages d'alerte...
- le réseau supporte l’envoi de message direct, multicast ou broadcast.
- plusieurs messages peuvent être encapsulés dans une transaction afin de permettre l'application instantanée de multiples paramètres.
- l'automation est bien entendu largement supportée
- les options de recording permettent aisément à une application d'espionner une source pour ensuite se faire passer pour elle.
- une source est avertie lorsqu'une destination lui est attribuée ou supprimée. De même une destination est avertie lorsqu'une source est connectée ou déconnectée. Bien que les connexions puissent être gérées de n’importe où, une application peut donc toujours contrôler avec qui elle parle.
- toute entité exposée sur le réseau peut être masquée à l’utilisateur si nécessaire (il est parfois utile de masquer un point d’accès privé par exemple)
- afin de garantir une compatibilité avec l'existant, le MIDI est traduit en CopperLan pour pouvoir attaquer nativement des applications CopperLan, et inversément CopperLan peut être traduit en MIDI moyennant une perte de résolution.
- chaque application peut exposer ses paramètres de sorte à pouvoir permettre une découverte dynamique et d’être éditable à partir de n’importe où sans connaissance préalable de sa topologie. Editable veut dire qu'une application tierce peut modifier ses paramètres mais aussi être avertie des changement de valeur et répliquer la valeur courante sur son interface.
- chaque application peut également échanger des blocs binaires (dont elle maîtrise le format) avec des systèmes de collecte et restauration de setup. Ceci permet une sauvegarde centralisée de tous les settings de l’ensemble du réseau.
- un hardware léger n'ayant aucun bouton ou afficheur est toutefois totalement éditable à travers le réseau. On peut ainsi aisément réaliser un plugins sous forme d'une boîte noire hardware juste dotée d'un connecteur Ethernet qui s'insère dans un flux CopperLan suite au simple fait d'être connecté au réseau...
Restons-en là pour aujourd'hui... mais il y a encore tellement de choses à dire :-)