Vous êtes sur la page 1sur 3

Faculté de technologie  Département de Génie électrique  M2 Systèmes de Télécommunications

TP N°01 Technologie et Protocoles pour le multimédia : Traitement du signal audio Correction

• Lire (read) un fichier audio :


clear all %Effacer toutes les variables enregistrées dans WorkSpace
close all %Fermer toutes les fenêtres ouvertes
clc %Effacer la fenêtre Command Window
[y, fs]=audioread(’Counting-16-44p1-mono-15secs.wav’); %Charger le fichier audio boy.wav
%et enregistrer les échantillons dans y et la féquence
%d’échantillonngae dans fs
sound(y, fs); %jouer le morceau enregister dans y avec sa fréquence fs
time=(1:length(y))/fs; %Création de l’espace temporel
plot(time, y); %Affichage de la courbe de y

Dans l’environnement Matlab, il existe des fichiers aux format audio(*.wav) exemple : dans la version 2016
le répertoire en question est MATLAB/R2016b/toolbox/audio. Le problème qui ce pose est que ce
répertoire dépend de la version du Matlab. Pour faciliter le travail on peut donc copier un fichier audio le
répertoire de travail. Dans cet exemple, la commande wavread par la commande audioread.

y regroupe les échantillons du signal audio, tandis que f s est la fréquence d’échantillonnage.
Dr Bouledjfane Badreddine (badreddine.bouledjfane@gmail.com)(2021-2022)

1
[filename1, pathname1]=uigetfile(’*.wav’) %Ouverture de la fenêtre d’ouverture de fichier
[y, fs]=audioread(filename1); %Charger le fichier
info = audioinfo(filename1); %Charger les informations sur le fichier
nbits = info.BitsPerSample; %Charger la valeur nbits
fprintf(’Information of the sound file "%s":\n’, filename1); %Afficher le nom du fichier
fprintf(’Duration = = %g sec\n’, length(y)/fs); %Afficher la durée du morceau audio
fprintf(’Sampling rate = %g samples/sec\n’, fs); %Afficher la fréquence d’échantionnage
fprintf(’Bit resolution = %g bits/sample\n’, nbits);%Afficher nombre de bits par échantillon

Dans la version 2016 la commande wavread a été remplacer par la commande audioread. A cet effet,
les arguments de sorties ne sont plus les même c-à-d que l’argument de sortie nbit dans la commande
wavread on peut la remplacer par le résultat de la commande audioinfo puis en accédant à la valeur de
BitsPerSample

• Jouer (Play) un fichier audio :


clear all
close all
clc
[y, fs]=audioread(’Counting-16-44p1-mono-15secs.wav’);
player = audioplayer(y, fs); %création de l’objet player
play(player); %Jouer le morceau

Dans cette partie il est indispensable que votre carte de son est installé et que votre haut parleur est
bien branché.

2
• Enregistrer (Record) un fichier audio : Pour qu’on puisse enregistrer un signal audio on doit im-
pérativement utiliser un microphone. La commande wavrecord ou audiorecorder permet de réaliser cette
opération :
Fs=16000; %Fréquence d’échantillonnage
duration=2; %Durée d’enregistrement
nBit=8 %8 bit
nChannels = 2 %Stéreo
recObj = audiorecorder(fs,nBits,nChannels);%Création de l’objet de l’enregistrement
disp(’Début de l’enregistrement’)
recordblocking(recObj, duration);% Début d’enregistrement
disp(’Fin de l’enregistrement.’);
play(recObj); % Jouer le morceau

Il faut s’assurer que votre carte de son, microphone et haut-parleur sont installés et configurés pour que
vous puissiez réaliser cette partie.
• Écrire (write) un fichier audio : Nous pouvons écrire des fichiers audio " .wav " en utilisant :
la commande de MATLAB wavwrite (Y, fs , nbits , nom_fichier )
ou
la commande audiowrite(nom_fichier,Y,fs,’BitsPerSample’,nbits);
Comme vous pouvez le voir avec deux commandes il faut bien mettre les arguments d’entrés dans l’ordre
octroyer pour chaque commande. L’utilisation de l’interface d’aide du Matlab est très utile pour réaliser
des programmes.

Vous aimerez peut-être aussi