Why standard Waveform from audio out gets distorted when i reduce the amplitude?
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
shyam
am 28 Jul. 2015
Kommentiert: Dinesh Iyer
am 28 Jul. 2015
In my attempt to generate a standard sine wave out of a sound card, i started using matlab which has a function soundsc for scaling the output
t = 0:1/48000:10;
y = sin(1000*2*pi*t);
soundsc(y,48000,[a b]);
its ok when my a and b are -1 and 1 respectively, when i try to make them even -0.9 and 0.9 respectively the standard sine wave of 1Khz gets distorted why so ?
are our sound cards will not be able to handle standard sounds ??
0 Kommentare
Akzeptierte Antwort
Dinesh Iyer
am 28 Jul. 2015
Shyam,
The reason for this distortion is that some of the signal values are being clipped. When you specify [a, b], it is assumed that signal you are attempting to playback has values in the range [a, b] and it allows you to scale it to the the range [-1, 1].
In your case, the signal "y" has values in the range [-1, 1] and by specifying [a, b] t be [-0.9 0.9], the values between [-0.9 0.9] in "y" are being scaled to [-1 1]. Values greater than 0.9 are scaled out of range and hence clipped.
The help for the soundsc function makes this clear.
Dinesh
2 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Audio I/O and Waveform Generation finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!