Applied Speech and Audio Processing: With matlab examples


Download 2.66 Mb.
Pdf ko'rish
bet31/170
Sana18.10.2023
Hajmi2.66 Mb.
#1708320
1   ...   27   28   29   30   31   32   33   34   ...   170
Bog'liq
Applied Speech and Audio Processing With MATLAB Examples ( PDFDrive )

Basic audio processing
detection in the cepstrum may be easier to achieve automatically (assume a constrained
search range), and certainly the cepstrum can highlight features missed in a correlogram.
The correlogram on the other hand is significantly easier to compute and scale than the
cepstrum. Both are visualisation and analysis tools available to speech researchers, and
many times both should be consulted during a particular analysis to compare their dif-
ferent viewpoints.
Finally, note that the cepstrum is often calculated with a nonlinear Mel frequency
band mapping. The resulting Mel frequency cepstral coefficients (MFCC) are used for
speaker identification, speech recognition and several other speech analysis tasks [6].
2.7
Sound generation
It is often quite useful to be able to generate sounds, especially when experimenting
with, or testing, audio and hearing responses. Some of these techniques will come in
useful during later chapters which provide Matlab code to demonstrate several auditory
phenomena.
2.7.1
Pure tone generation
A pure tone is an unmodulated sinusoid in shape. To generate such a tone of frequency
Ft
at a sample rate of Fs, lasting for Td seconds, is reasonably easy, and in fact we will
create a small Matlab function called tonegen() to do precisely this.
function [s]=tonegen(Ft, Fs, Td)
s=sin([1:Fs*Td]*2*pi*Ft/Fs);
Such a function, saved in the Matlab work directory using a filename of tonegen.m,
would then be accessible to other functions and programs written in Matlab.
Thus, using this to generate and listen to a 2 second pure tone of frequency 440 Hz
(corresponding to A
4
on the musical scale as described in Infobox 2.5 on page 33), we
would do the following:
note=tonegen(440, 16000, 2);
soundsc(note, 16000);
2.7.2
White noise generation
White noise consists of uniformly distributed random numbers, which are easily gener-
ated in Matlab, using the same notation as previously of Td seconds duration at sample
rate Fs:
noise=rand(1,Fs*Td);



Download 2.66 Mb.

Do'stlaringiz bilan baham:
1   ...   27   28   29   30   31   32   33   34   ...   170




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling