Audio Toolbox

 

Audio Toolbox

Concevoir et analyser des systèmes de traitement audio, acoustique et de la parole

En savoir plus :

Acquisition et lecture en streaming avec des interfaces audio

Connectez-vous à des cartes son standard d'ordinateurs portables et desktops pour un streaming audio multicanal à faible latence entre des fichiers ou des entrées et sorties temps réel.

Connectivité à des drivers audio standards

Lisez et écrivez des échantillons audio depuis et vers des cartes son (USB ou Thunderbolt™, par exemple) avec des drivers audio standard (tels que ASIO, WASAPI, CoreAudio ou ALSA) sur Windows®, Mac® et Linux®.

Streaming audio multicanal à faible latence

Traitez de l'audio en temps réel dans MATLAB avec une latence aller-retour de quelques millisecondes.

Entrée brute en temps réel depuis un réseau de microphones à quatre canaux.

Machine Learning et Deep Learning

Étiquetez, augmentez, créez et intégrez des jeux de données de parole et audio, faites l'extraction des caractéristiques et calculez des transformations temps-fréquence. Développez des analyses de parole et audio avec Statistics and Machine Learning Toolbox™, Deep Learning Toolbox™ ou d'autres outils de Machine Learning.

Modèles de Deep Learning pré-entraînés

Tirez parti du Deep Learning pour effectuer des tâches complexes de traitement du signal et extraire des embeddings audio avec une seule ligne de code. Accédez à des réseaux pré-entraînés éprouvés tels que YAMNet, VGGish, CREPE et OpenL3, puis appliquez-les grâce à des fonctions pré-configurées d'extraction de caractéristiques.

Nuage de mots affichant les types de sons identifiés par classifySound dans un segment audio donné.

Extraction de caractéristiques pour l'audio, la parole et l'acoustique. 

Transformez des signaux en représentations temps-fréquence comme les spectrogrammes Mel, Bark et ERB. Calculez les coefficients cepstraux tels que les MFCC (Mel-Frequency Cepstral Coefficients) et les GTCC (Gammatone Cepstral Coefficients), ainsi que des caractéristiques scalaires telles que le pitch, l'harmonicité et des descripteurs spectraux. Réalisez l'extraction des caractéristiques et des embeddings audio de haut niveau en utilisant des modèles de Deep Learning pré-entraînés (VGGisg, OpenL3) et le système i-vector. Accélérez l'extraction de caractéristiques avec des cartes graphiques compatibles.

Mel-spectrogramme de commandes vocales en temps réel.

Modèles de Machine Learning et guide pour l'apprentissage

Entraînez des algorithmes de Machine Learning courants avec vos jeux de données audio. Utilisez des systèmes de modèles éprouvés, tels que i-vectors, pour des applications comme l'identification et la vérification du locuteur. Apprenez, à partir d'exemples fonctionnels, à concevoir et entraîner des réseaux de neurones et des couches avancés pour des applications audio, de parole et acoustique.

Forme d'onde d'enregistrement de parole avec des segments entrelacés prononcés par des locuteurs différents. Les couleurs indiquent quel locuteur est en train de parler dans chaque région de parole détectée.

Résultats de l'identification des locuteurs obtenus avec des x-vectors sur un signal de parole comprenant cinq locuteurs différents.

Importez, annotez et prétraitez des jeux de données audio.

Lisez, partitionnez et prétraitez des collections d'enregistrements audio volumineuses. Annotez manuellement des signaux audio avec des applications. Identifiez et segmentez automatiquement les régions d'intérêt à l'aide de modèles de Machine Learning pré-entrainés.

Étiquettes de régions d'intérêt dans l'application Audio Labeler.

Étiquettes de régions d'intérêt dans l'application Audio Labeler.

Augmenter et synthétiser les jeux de données audio et de parole

Mettez en place des pipelines d'augmentation aléatoire des données en utilisant des combinaisons de décalage de pitch, d'étirement temporel et d'autres effets de traitement audio. Créez des enregistrements de parole synthétiques à partir de textes en utilisant des services cloud de synthèse vocale.

Estimation des formants pour le décalage de pitch sans variation du timbre.

Effets et algorithmes de traitement audio

Générez des formes d'onde standard, appliquez des effets audio courants et concevez des systèmes de traitement audio avec un réglage dynamique des paramètres et une visualisation en temps réel.

Égaliseurs et filtres audio

Modélisez et appliquez des filtres d'égalisation paramétriques, d'égalisation graphiques, plateaux et de pente variable. Concevez et simulez des filtres crossover numériques, par bandes d'octave ou d'octaves fractionnées.

Réglage interactif d'un filtre crossover à trois bandes avec visualisation en temps réel.

Contrôle et effets de la plage dynamique

Modélisez et appliquez des algorithmes de traitement de la plage dynamique tels qu'un compresseur, un limiteur, un expanseur et une noise gate. Ajoutez une réverbération artificielle avec des modèles paramétriques récursifs.

Réglage interactif de la réponse dynamique d'un compresseur.

Simulation système avec une modélisation par blocs

Concevez et simulez des modèles de systèmes avec des bibliothèques de blocs de traitement audio pour Simulink®. Réglez les paramètres et visualisez le comportement du système grâce à des contrôles interactifs et des tracés dynamiques.

Visualisation composée d'un modèle Simulink, avec des blocs et des sous-systèmes à différents niveaux dans la hiérarchie du modèle, un tracé d'une réponse de filtre et une interface utilisateur comprenant des touches interactives pour régler les différentes valeurs des paramètres.

Aperçu d'un modèle de compression multibandes de la plage dynamique dans Simulink.

Prototypage audio temps réel

Validez des algorithmes de traitement audio grâce à des tests d'écoute interactifs temps réel dans MATLAB.

Réglage des paramètres en temps réel via des interfaces utilisateur

Créez automatiquement des interfaces utilisateur pour les paramètres réglables d'algorithmes de traitement audio. Testez des algorithmes individuels avec l'application Audio Test Bench et réglez des paramètres dans des programmes en cours d'exécution avec des contrôles interactifs auto-générés.

Réglage interactif d'un égaliseur paramétrique trois bandes personnalisé avec Audio Test Bench.

Connectivité MIDI pour le contrôle de paramètres et l'échange de messages

Modifiez des paramètres d'algorithmes MATLAB de manière interactive en utilisant les surfaces de contrôle MIDI. Contrôlez du hardware externe ou répondez aux événements en envoyant et en recevant tout type de messages MIDI.

Schéma-blocs montrant un contrôleur de clavier MIDI qui envoie des messages MIDI à une session MATLAB, qui, à son tour, traite les messages, synthétise les formes d'onde des notes et lit les échantillons générés via un haut-parleur.

Message MIDI et flux de signal audio écrit dans MATLAB pour un synthétiseur instrumental.

Mesures acoustiques et audio spatial

Mesurez les réponses du système, analysez et mesurez des signaux et concevez des systèmes de traitement audio spatial.

Mesures et analyses standardisées

Appliquez des mesures de niveau de pression acoustique (SPL) et de niveau sonore à des signaux temps réel ou enregistrés. Analysez des signaux avec des filtres par bandes d'octave ou d'octaves fractionnées. Appliquez des filtres de pondération A, C ou K conformes aux normes à des enregistrements bruts. Mesurez l'acuité, les irrégularités et l'intensité des fluctuations acoustiques.

Visualisation de différentes mesures SPL sur des bandes de deux tiers d'octave.

Mesure de la réponse impulsionnelle

Mesurez les réponses impulsionnelles et en fréquence de systèmes audio et acoustiques avec des séquences MLS (maximum-length sequences) et des sinus de fréquence glissante (ESS). Commencez avec l'application Impulse Response Measurer. Automatisez les mesures en générant de manière programmatique des signaux d'excitation et en estimant les réponses du système.

Capture de l'application Impulse Response Mesurer, qui montre une estimation de la réponse dans le domaine temporel et fréquentiel, un menu avec une liste d'autres estimations de réponses impulsionnelles disponibles pour un tracé, ainsi que d'autres contrôles interactifs disponibles dans l'application.

 Application Impulse Response Measurer.

Convolution efficace avec des réponses impulsionnelles de salles

Convoluez efficacement des signaux avec des réponses impulsionnelles longues avec des implémentations overlap-and-add et overlap-and-save dans le domaine fréquentiel. Trouvez le bon compromis entre latence et vitesse de calcul avec le partitionnement automatique de la réponse impulsionnelle.

Figure MATLAB montrant la valeur absolue d'une réponse impulsionnelle assez longue au fil du temps, avec une échelle logarithmique pour l'axe des y. Après cinq secondes, le tracé montre que les valeurs absolues normalisées ne sont pas encore devenues inférieures à un millième de l'amplitude initiale.

Réponse impulsionnelle de cinq secondes ou de plus de 220 000 échantillons à 44 100 Hz.

Audio spatial

Codez et décodez différents formats ambisoniques. Interpolez des fonctions de transfert relatives à la tête (HRTF) échantillonnées spatialement.

Dessin d'un mannequin binaural, trois haut-parleurs au sommet d'un secteur sphérique représentant trois points où la fonction de transfert relative à la tête est connue, et un quatrième point à un endroit aléatoire dans le secteur pour lequel la fonction de transfert relative à la tête doit être estimée.

Exemple de position de source sonore souhaitée et des angles proches pour lesquels des mesures HRTF sont disponibles.

Générer et héberger des plugins audio

Prototypez des algorithmes de traitement audio dans MATLAB sous forme de plugins audio standard, et utilisez des plugins audio externes comme des objets MATLAB courants.

Génération de plugins audio

Générez des plugins VST, des plugins AU et des plugins exécutables autonomes directement depuis le code MATLAB sans avoir à concevoir manuellement les interfaces utilisateur. Générez des projets JUCE C++ prêts à l'emploi pour un prototypage de plugins plus avancé (nécessite MATLAB Coder™).

Interface utilisateur d'un plugin audio généré avec MATLAB, vue pendant son utilisation dans REAPER, une DAW largement utilisée. L'interface utilisateur inclut plusieurs curseurs et boutons de commande arrangés selon une grille de taille 3 par 3.

Exemple d'égaliseur paramétrique multibandes : plugin VST généré depuis le code MATLAB et exécuté dans REAPER.

Hébergement de plugins audio externes

Utilisez des plugins AU et VST externes comme des objets MATLAB courants. Modifiez les paramètres des plugins et traitez des tableaux MATLAB de manière programmatique. Automatisez également l'association des paramètres des plugins avec les interfaces utilisateur et les commandes MIDI. Hébergez des plugins générés depuis votre code MATLAB pour une exécution plus efficace.

À gauche, l'interface utilisateur d'un plugin audio commercial de débruitage audio, avec un grand bouton de commande permettant de régler le niveau de suppression du bruit. À droite, quelques lignes de code montrant comment ce même plugin peut être importé et utilisé programmatiquement comme un objet MATLAB.

Exemple de plugin VST externe pour le débruitage audio (Accusonus ERA-N) et d'interface de programmation dans MATLAB.

Cibler des systèmes audio embarqués temps réel

Utilisez la génération de code afin d'implémenter des designs de traitement audio sur des cartes logicielles et automatisez l'accès à des interfaces audio.

Génération de code pour des cibles CPU et GPU

Avec les produits Coder de MathWorks®, générez du code source en C et C++ à partir d'algorithmes de traitement du signal et de Machine Learning définis comme des fonctions, des objets ou des blocs de toolbox. Générez du code source CUDA depuis certaines fonctions d'extraction de caractéristiques comme mfcc et mel-spectrogramme.

Tracé rapportant le temps passé à chaque cycle de prédiction pour un système de reconnaissance de commande vocale, montrant que le temps utilisé est bien en dessous des 50 millisecondes disponibles.

Profilage dynamique pour l'implémentation optimisée sur un processeur ARM Cortex-A d'un système de reconnaissance de commandes vocales basé sur le Deep Learning

Cartes mobiles et low-cost

Prototypez des designs de traitement audio sur Raspberry Pi™ avec des interfaces audio multicanal, intégrées ou externes. Créez des panneaux de contrôle interactifs sous forme d'applications mobiles pour les dispositifs iOS ou Android®.

Photo d'une carte Raspberry Pi.

Carte Raspberry Pi 3 pour le prototypage de design.

Systèmes à latence zéro

Prototypez des designs de traitement audio avec des entrées et des sorties à échantillon unique pour le contrôle adaptatif du bruit, la validation d'appareils auditifs ou d'autres applications nécessitant une latence DSP aller-retour minimale. Ciblez automatiquement des systèmes audio Speedgoat et des cartes ST Discovery directement à partir de modèles Simulink.