audio compression (shorten an audio file)
Afficher commentaires plus anciens
I want to compress an audio file to make it shorter to put in a game for sound effects. I use the following:
[y,Fs]=wavread('blast.wav');
t1=0;% start time
t2=2;% end time
yNew=y((Fs*t1+1):Fs*t2,1);
wavwrite(yNew,Fs,'soundShort.wav');
The compression is fine and 'soundShort.wav' can play. But command sound(wavread('soundShort.wav')) no longer has any sound, though it's runnable. I wonder what goes wrong.
13 commentaires
Geoff Hayes
le 4 Déc 2018
a - are you really calling the code as
sound('soundShort.wav')
and so are passing a string to the sound method? If I try that (in my version of MATLAB) then I observe a
Error using sound (line 33)
Audio data must be real and floating point.
What happens when you call
sound(yNew, Fs);
instead? Presumably the yNew array has Fs samples...
a a
le 7 Déc 2018
Walter Roberson
le 7 Déc 2018
sound() with only one input assumes 8000 Hz.
a a
le 8 Déc 2018
Walter Roberson
le 8 Déc 2018
8000 samples per second. Fs = 8000 .
a a
le 8 Déc 2018
Walter Roberson
le 8 Déc 2018
your original code uses a statement that reads in both the signal and the sampling frequency. You need to do that . Then you need to pass the signal and the sampling frequency to sound() like Geoff posted .
a a
le 9 Déc 2018
Walter Roberson
le 9 Déc 2018
What shows up for size(y) and for min(y) and max(y) ?
a a
le 9 Déc 2018
a a
le 9 Déc 2018
Walter Roberson
le 9 Déc 2018
http://pcauthorities.com/windows-xp/how-to-troubleshoot-sound-problems-in-windows-xp/
a a
le 10 Déc 2018
Réponses (0)
Catégories
En savoir plus sur Measurements and Spatial Audio dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!