24
L’Audio sur PC • Comparaison Numérique vs Analogique • Comparaison Audio sur PC vs Hardware dédié (DSP) • Rmq : beaucoup de simulitudes avec la vidéo, mais débit vidéo bcp + élevé!

L’Audio sur PC

  • Upload
    turner

  • View
    32

  • Download
    3

Embed Size (px)

DESCRIPTION

L’Audio sur PC. Comparaison Numérique vs Analogique Comparaison Audio sur PC vs Hardware dédié (DSP) Rmq : beaucoup de simulitudes avec la vidéo, mais débit vidéo bcp + élevé!. Dsp: les +. + optimisé, « puissant » pour le traitement de signal - PowerPoint PPT Presentation

Citation preview

Page 1: L’Audio sur PC

L’Audio sur PC

• Comparaison Numérique vs Analogique

• Comparaison Audio sur PC vs Hardware dédié (DSP)

• Rmq: beaucoup de simulitudes avec la vidéo, mais débit vidéo bcp + élevé!

Page 2: L’Audio sur PC

Dsp: les +

• + optimisé, « puissant » pour le traitement de signal

• + travail échantillon par éch => latence = 1 échantillon

• + produit final embarqué, simple , pas cher, …

Page 3: L’Audio sur PC

DSP: les -

• - Difficultés de développement (connaissance architecture, langage bas-niveau)

• - Code peu réutilisable• - Entrées / sorties limitées • - Cher pour un petit développeur (pas

possible à la maison!)• - Communication avec d’autres soft et

avec l’utilisateur (clavier, écran,…)

Page 4: L’Audio sur PC

PC: les +

• + On en a 1 chez soi!• + Langage de programmation haut-niveau• + Communication autres applications soft /

utilisateur• + Code réutilisable (plugins)• + Sortie carte son: dével applications

indépendantes du matériel grâce aux drivers• + Disque dur (lecture et ecriture) de fichiers,

stockés sous différents formats (waves, mp3, …)

Page 5: L’Audio sur PC

PC: les -

• - pas embarqué

• - latence (on travaille sur des blocs d’éch.)

• - OS pas temps réel

Page 6: L’Audio sur PC

Les drivers: Introduction

• Qu’est-ce qu’un driver (pilote)

• Présentation des drivers les plus courants– (MME)– DirectSound– ASIO– Linux: OSS et ALSA

Page 7: L’Audio sur PC

Présentation

• On entend par driver un ensemble d’APIs (application programming interfaces) permettant l’accès à un composant matériel sans devoir écrire du code spécifique à ce matériel.

• L’intérêt majeur d’un driver est de pouvoir utiliser un même et unique code pour tout matériel supportant ce driver.

Page 8: L’Audio sur PC

Présentation (suite)

• Le terme driver est utilisé à tort car derrière les APIs, il existe un vrai driver fourni par le fabriquant du matériel mais ce terme, que nous utiliserons dans la suite, est le plus courant.

• L’API accède au module du vrai driver chargé par le système au démarrage.

• Certaines fonctionnalités peuvent ne pas être prises en charge par le driver

Page 9: L’Audio sur PC

Drivers les plus courants

• (MME)• DirectSound• ASIO• OSS• ALSA

Page 10: L’Audio sur PC

MME

• MultiMedia Extension (Windows)

• Utilisé depuis Windows 3.0. Fait partie intégrante de l’O.S.

Page 11: L’Audio sur PC

DirectSound

• Composant de DirectX (Windows)

• Fait partie intégrante de l’O.S. Windows

• Plus simple, plus efficace et de latence plus faible que MME.

• Possède également des fonctions 3D

Page 12: L’Audio sur PC

ASIO

• Développé par Steinberg

• Audio pro, très faible latence

Page 13: L’Audio sur PC

LINUX

• OSS

• ALSA

Page 14: L’Audio sur PC

Comment ça marche: Direct Sound

• 1 buffer pour entrée (playback) et/ou 1 buffer pour sortie (capture)

• Le buffer est subdivisé en partitions• Dès que la « tête » de lecture (resp. écriture)

passe d’une partition à l’autre, un événement est généré pour signaler qu’un nouveau bloc d’échantillons peut être écrit (resp. lu)

• Taille du buffer et nombres de partitions paramétrable

Page 15: L’Audio sur PC

Les fonctions « callback »

• Un pointeur de fonctions est donné à chaque thread

• Avantage: on ne doit pas reprogrammer les fonctions exécutées dans les threads

• Permet de créer des plugins

Page 16: L’Audio sur PC

Les plugins

• Code compilé en shared et chargé dynamiquement

• Permet de faire évoluer une application de base (host) (pour les effets, les entrées/sorties)

• Plugin standard: VST

Page 17: L’Audio sur PC

Fichiers wave

• Header

• Échantillons entrelacés

Page 18: L’Audio sur PC

Autres formats de fichiers:

• MP3, Ogg Vorbis, etc.: on peut les ajouter à une application facilement (par ex. via plugins)

Page 19: L’Audio sur PC

Présentation du travail

• 1 application

• Entrée/sortie steréo

• 4 combinaisons entrée/sortie possible (fichier wave ou dsound)

• Dsound configurable (taille buffer et nombre de partitions) pour entrée et sortie (lantence!)

• Plugin de traitement

Page 20: L’Audio sur PC

Exemple de plugin:

• Voir code

• Compilation d’un plugin

Page 21: L’Audio sur PC

Outils à disposition

• Application

• Plugin exemple

• Pas obligatoire: Compilateur gratuit, librairies nécessaires, Makefile

Page 22: L’Audio sur PC

Remarques pour le travail

• Configuration entrée/sortie via fichier• Pas de messages d’erreur, peut donc planter si

mauvaise opération• Taille bloc d’entrée doit être identique en entrée

et sortie• Réglages controleur de volume• 16 bits, 44kHZ, stereo• Testé sur plusieurs pcs, mais toujours en

développement (entrée sature sur un pc)• Possibilité d’une interface graphique

Page 23: L’Audio sur PC

Remarques travail (suite)

• Nom du fichier plugin et du module à exporter: modifier le prefixe « bypass »(voir exemple)

• Echantillons dans le plugin au format Float normalisés entre –1 et 1

Page 24: L’Audio sur PC

Vocabulaire

• blocksize= nombre de frames d’une partition.

• 1 Frame= 1 couple échantillon (1 échantillon par canal)