MATLAB Answers



Asked by Stephen
on 1 Jun 2012
Latest activity Commented on by EkoSusatio on 22 Sep 2015
So, I noticed that you can't cntr + c out of the sound playback from soundsc. Is there a way to kill the horrible noises I'm making? Thanks


Walter Roberson
on 1 Jun 2012
MS Windows? If so I believe MATLAB starts a process to play the sound; killing the process should be interesting.
Kye Taylor
on 1 Jun 2012
Turn off your speakers :)
I'm also interested in how one might kill this process...
EkoSusatio on 22 Sep 2015
Give clear all in command windows, the noises will stop

Sign in to comment.


1 Answer

Daniel Shub
Answer by Daniel Shub
on 1 Jun 2012
 Accepted Answer

The reason you cannot cancel the sound with crtl+c is that MATLAB plays the sound asynchronously. This means you can do other things while the sound is playing. If you want crtl+c to cancel the sound, you need to make SOUNDSC perform play blocking. If all you want is a way to stop the sound, then you need SOUNDSC to return a handle to the sound playing object. Both can be accomplished by deleting the PLAYSND mex file. This will force SOUNDSC to use an AUDIOPLAYER object. AUDIOPLAYER objects can be used to provide play blocking as well as provide a handle for stopping sound once playback has started.
If you also look at the source code for SOUNDSC you will see that it calls SOUND which calls PLAYSND. PLAYSND is either a mex (Windows) or an m file (Linux). The m file version uses AUDIOPLAYER, so it should be trivial to create your own playblocking version of SOUNDSC

  1 Comment

on 2 Jun 2012
thanks man

Sign in to comment.