MATLAB Answers

soundsc

29 views (last 30 days)
Stephen
Stephen on 1 Jun 2012
Commented: 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

  3 Comments

Walter Roberson
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
Kye Taylor on 1 Jun 2012
Turn off your speakers :)
I'm also interested in how one might kill this process...
EkoSusatio
EkoSusatio on 22 Sep 2015
Give clear all in command windows, the noises will stop

Sign in to comment.

Accepted Answer

Daniel Shub
Daniel Shub on 1 Jun 2012
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

Stephen
Stephen on 2 Jun 2012
thanks man

Sign in to comment.

More Answers (0)

Sign in to answer this question.

Tags