Scale data and play as sound
the values of audio signal
y to fit in the range
from –1.0 to 1.0, and then sends the data to the speaker at
the default sample rate of 8192 hertz. By first scaling the data,
the audio as loudly as possible without clipping. The mean of the
dynamic range of the data is set to zero.
Load the example file
which contains sample data
y and rate
and listen to the audio.
load gong.mat; soundsc(y);
Play an excerpt from Handel's "Hallelujah Chorus" at twice the recorded sample rate.
load handel.mat; soundsc(y, 2*Fs);
load handel.mat; nBits = 16; soundsc(y,Fs,nBits);
MATLAB® plays the scaled audio with a bit depth of 16 bits per sample.
load handel.mat; yRange = [-0.7,0.7]; soundsc(y,yRange);
y— Audio datacolumn vector |
Audio data, specified as an
vector for single-channel (mono) audio, or an
matrix for stereo playback, where
m is the number
of audio samples. If
y is an
matrix, then the first column corresponds to the left channel, and
the second column corresponds to the right channel. Stereo playback
is available only if your system supports it.
Fs— Sample rate8192 (default) | positive number
Sample rate, in hertz, of audio data
as a positive number between 80 and 1000000.
nBits— Bit depth of sample values8 (default) | 16 | 24
Bit depth of the sample values, specified as an integer. Valid values depend on the audio hardware installed. Most platforms support bit depths of 8 bits or 16 bits.
yRange— Range of audio data to scale
[-max(abs(y)),max(abs(y))](default) | two-element vector
Range of audio data to scale, specified as a two-element vector
of the form
the lower and upper limits of the range. Values in
are scaled beyond
[-1.0, 1.0] are clipped when
played back on a sound device.