Changing system('say') command values
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Making MATLAB to speak on a Mac can be done with system('say hello world') but how to modify the existing system('say') function values? how to specify the system voice name and speak the text from a file or a variable?
Does anybody have tried and succeeded for Chinese? system('say 你好')
0 Kommentare
Antworten (2)
Walter Roberson
am 2 Apr. 2014
system('say -v VoiceNameHere -f FileNameHere')
3 Kommentare
Walter Roberson
am 8 Apr. 2014
str = char([20320 22909]);
system( sprintf('say -v VoiceNameHere %s', str) )
My expectation would be that that will fail, considering the error message you saw. To get the UTF-8 using a file:
fid = fopen('FileNameHere', 'w', 'UTF-8');
fwrite(fid, char([20320 22909]), 'char');
fclose(fid);
and then the system() I showed above.
Why did I use [20320 22909] ? I looked up the characters at http://www.khngai.com/chinese/tools/codechar.php?code=%E5%A5%BD
With my Mac and MATLAB set up the way it is at the moment, I am not able to copy-and-paste the Chinese characters from another window into a MATLAB string. I am not certain if that could be changed.
Carlos Gonzalez
am 1 Apr. 2019
myString = "hello world";
command = strcat('say',{' '},myString);
system(command)
Where myString is the text you wish for your mac to speak.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Timing and presenting 2D and 3D stimuli finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!