Why 'play' doesn't work within a function?

2 Ansichten (letzte 30 Tage)
Urit Gordon
Urit Gordon am 21 Feb. 2013
Hi,
When I create an audioplayer object inside a function it doesn't play the sound. for example- this code doesn't work:
noise=wgn(8192, 1,0);
runaudio(noise)
function runaudio(noise)
pl=audioplayer(noise,8192);
play(pl);
end
But if i pass the player object it does work.
for example - this code works:
noise=wgn(8192, 1,0);
pl=audioplayer(noise,8192);
runaudioP(pl)
function runaudioP(pl)
play(pl);
end
What am I missing here?
Thanks,
Urit

Antworten (1)

Daniel Shub
Daniel Shub am 21 Feb. 2013
This question has been asked and answered here before a number of times. The simple answer is that when the function exits, the audio player object gets deleted. If you pass the object. To the function, then the object still exits in the base workspace.

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by