how to use soundsc with function
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi i have written a code which is executing perfectly for DTMF tones with this command. I am listening tones in speaker
dtmf=dtmfdial([1 1 9 9 2 2 0 0]);
The last portion of my code is
dtmf = cat(2, D{:});
soundsc(dtmf,12000);
Now the book says that following matlab command should play the tones corresponding to input vector,input,through computer speaker
sound(dtmfdial([input]),12000)
How can i achieve this, what should i do with my final cell dtmf???
0 commentaires
Réponse acceptée
Wayne King
le 6 Oct 2011
Your function is actually outputting a vector. Your code
dtmf = cat(2, D{:});
is producing a vector, soundsc() works on that vector. So the line
soundsc(dtmfdial([3 7 3]),8000)
Says "call dtmfdial with the input [3 7 3] which inside your code builds a signal (the vector dtmf) out of the frequencies defined by that input vector (in table). Play the output of dtmfdial() with a sampling frequency 8,000 Hz.
Plus de réponses (5)
Wayne King
le 6 Oct 2011
Is your dtmf a Nx1 cell array? Can you do
soundsc(cell2mat(dtmf),Fs)
0 commentaires
Wayne King
le 6 Oct 2011
Transpose your cell array
dtmf = dtmf';
Then try
soundsc(cell2mat(dtmf),8000);
0 commentaires
moonman
le 6 Oct 2011
1 commentaire
Walter Roberson
le 8 Oct 2011
When a function A is given as an argument to another function B, then the first output of A becomes an input to B. *Only* the first output of A is accessible when you do this: there is NO way in MATLAB to have multiple outputs of a function used as inputs to another function, other than assigning those multiple outputs to variables and passing in the variables.
Voir également
Catégories
En savoir plus sur DTMF dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!