Why standard Waveform from audio out gets distorted when i reduce the amplitude?
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
shyam
el 28 de Jul. de 2015
Comentada: Dinesh Iyer
el 28 de Jul. de 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 comentarios
Respuesta aceptada
Dinesh Iyer
el 28 de Jul. de 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 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Audio I/O and Waveform Generation en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!