Gérer l'audio



Présentation

Ce document s'intéresse à celles des problématiques de l'audio qui peuvent se poser pour une console de jeu : acquisition, restitution, encodage et compression, stéréo et son 3D, etc.

La compression/décompression mp3

On peut utiliser un circuit DSP de décompression mp3 (ex : MAS ou VS1001k). Un circuit spécialisé supportant le format libre Ogg Vorbis serait appréciable. Notons toutefois que ces tâches pourraient fort bien aussi être prises en charge par le processeur principal : un choix de conception s'impose.

Principes de génération du son

Consulter ce guide technique pour en avoir les détails.

Caractéristiques techniques répertoriées

La principale d'entre elles est la capacité à restituer du son numérique. C'est de cette possibilité que dépendent la plupart des autres traitements envisageables.

Voici une liste à la Prévert des principales caractéristiques répertoriées pour un dispositif sonore utilisable dans une console (typiquement, une carte son), elle peut servir de grille d'évaluation des capacités des différentes solutions technologiques envisageables pour Once Sol.

Connections

Dans le cadre d'une console, l'acquisition sonore est de moindre importance. Son principal intérêt se trouve dans les jeux permettant à des équipiers de communiquer directement par la parole.

Facteurs de qualité

La qualité de la manipulation du son dépend en grande partie de celle des convertisseurs analogique/numérique.

Idées sur la gestion du son pour le projet Once Sol

Il serait envisageable d'utiliser un microprocesseur généraliste (par exemple de type PowerPC), mais qui soit du point de vue de la console entièrement dédié à la gestion du son, et qui donc en déchargerait le processeur central.

Ce processeur serait, si possible, de la même famille que les autres processeurs utilisés dans la console, mais probablement cadencé à une fréquence moindre, et aurait en charge les entrées et sorties sonores : il manipulerait sur ses propres entrées/sorties le signal sonore, éventuellement aidé par une interface d'adaptation des niveaux des signaux échangés avec l'extérieur, par l'intermédiaire des connecteurs.

Il aurait dès lors la charge de synthétiser les sons et de gérer les effets, les voies et les canaux (stéréo ou plus). Notons que cela a pour inconvénient de probablement obliger à recopier préalablement les sons dans la mémoire propre du processeur sonore (le temps réel et le full duplex seraient-ils gérables ainsi ? La question des temps de latence se pose), et ce processeur dédié devra aussi un minimum gérer sa propre mémoire et ses ressources système en même temps qu'il fera tourner les routines sonores.

Il serait ainsi envisageable de faire tourner sur ce processeur un micro-kernel, capable de charger des routines de restitution sonore (et, éventuellement, de capture) et de les faire exécuter sur des données transférées. Plus précisément, les opérations de transfert suivantes seraient intéressantes :

Il faudrait par ailleurs que le chipset soit à même de gérer ces processeurs au mieux, d'en maximiser la parallélisation des traitements et des transferts de données, à la manière du DMA.

La question de l'utilisation de la mémoire centrale par le processeur sonore a encore été peu explorée, mais serait très intéressante : elle permettrait de s'affranchir des nombreux transferts (DMA ou non) nécessaires pour jouer ou enregistrer un son. S'il existait une mémoire vive rapide et bon marché qui permette deux, voire plus, accès en lecture simultanés (et un en écriture, voire plus par l'utilisation de sémaphores matériels), alors cela autoriserait des solutions élégantes en matière sonore, mais aussi dans d'autres domaines (ex : 3D calculée en parallèle par des processeurs élémentaires qui liraient dans une mémoire partagée entre eux et avec le processeur central).

[Consulter le retour d'expérience d'un projet semblable]

Liens sur le son et son électronique

Pour disposer de nombre d'informations plus typées électronique, y compris pour accéder à un glossaire élucidant le sens de nombre des appellations utilisées dans le projet Once Sol, il est conseillé de commencer par se référer à son projet support pour l'électronique, Clonic Tree.

Liens externes :





N'hésitez pas à nous faire part de votre avis !

Si vous avez des remarques à formuler, ou si vous disposez d'informations plus détaillées ou plus récentes que celles présentées dans ce document, si vous avez remarqué des erreurs, oublis, ou points insuffisamment traités, ou si vous avez envie d'apporter une aide, aussi petite soit-elle, envoyez-nous un courriel !




Retour en haut de page

Dernière mise à jour : 17 Août 2004