radio button to play song

1 Ansicht (letzte 30 Tage)
roget dubose
roget dubose am 14 Mär. 2014
Kommentiert: roget dubose am 15 Mär. 2014
im trying to come up with the code for selecting a radio button and making it play a song... i have asked my instructor with no luck, my book says nothing... if someone can point me in a direction... that would be great. !

Akzeptierte Antwort

Benjamin Avants
Benjamin Avants am 14 Mär. 2014
I have had success with the following.
In the opening function:
% Audio Players
[y,Fs,NBITS]=wavread('punch.wav');
handles.Punch = audioplayer(y,Fs,NBITS);
[y,Fs,NBITS]=wavread('electric buzz.wav');
handles.Buzz = audioplayer(y,Fs,NBITS);
[y,Fs,NBITS]=wavread('I_can_see.wav');
handles.See = audioplayer(y,Fs,NBITS);
and in the callback:
play(handles.Buzz); % or whichever sound is appropriate for the selected button/control
This preloads the audio and player object when the GUI is opened and then it can be controlled from the callbacks in the GUI without a delay.
  1 Kommentar
Benjamin Avants
Benjamin Avants am 14 Mär. 2014
If you're not using a GUI created in GUIDE, initialize the audio players in whatever function creates your GUI window. Save them as UserData in the button group or button that will use them and then you'll have access to them in the callback by using
get(hObject,'UserData')

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

roget dubose
roget dubose am 14 Mär. 2014
and what if its an mp3 not wav file?
  2 Kommentare
Benjamin Avants
Benjamin Avants am 15 Mär. 2014
You can read pretty much any audio file with
[y,Fs] = audioread('filename') ;
instead and the audio player will be initialized as
audioplayer(y,Fs);
If the audio data is in floating point format (shouldn't be with mp3) then you'll need to specify NBITS, the bits per sample.
roget dubose
roget dubose am 15 Mär. 2014

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by