How to convert Speech to Text

48 views (last 30 days)
I am doing project on speech signal analysis.how to convert speech to text any one help me

Accepted Answer

Gabriele Bunkheila
Gabriele Bunkheila on 16 Jan 2018
Hi Nemala,
I work at MathWorks and I noticed this old question of yours just now. In case it was useful to others, I thought I'd leave a link to our recent MATLAB Central sumbission speech2text:
That enables to leverage 3rd party speech-to-text web services (so far including from Google, Microsoft and IBM) directly from MATLAB using a simple MATLAB Function. The syntax looks like the following:
>> [samples, fs] = audioread('helloaudioPD.wav');
>> soundsc(samples, fs)
>> speechObject = speechClient('Google','languageCode','en-US');
>> outInfo = speech2text(speechObject, samples, fs);
>> outInfo.TRANSCRIPT =
ans =
'hello audio product Developers'
>> outInfo.CONFIDENCE =
ans =
0.9385
Please refer to the html folder in the submission for a step-by-step getting started guide.
Thanks,
Gabriele.
  11 Comments
batool
batool on 16 Nov 2023
Hello, I want to do a project for arabic speech to text conversion using matlab. Can I use wav2vec?
Gabriele Bunkheila
Gabriele Bunkheila on 16 Nov 2023
As of R2023b, all pre-trained speech-to-text models available with MATLAB via Audio Toolbox (including wav2vec) only support the English language.
For different languages, including Arabic, you want to use one of the cloud services supported by speech2text. Please remember that this workflow requires first creating an account with one of 4 supported services (Amazon Transcribe™ is also part of the mix since R2022b) and then downloading a credentials files onto a local folder on your MATLAB path. You can refer to the accompanying examples of speech2text for the details.
For Arabic specifically, you want to ensure you read the documentation of the service of your choice and identify the language localization most closely related to the content you need to transcribe.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 1 May 2015
Not an answer for you, but in case anyone is interested in the reverse direction (text to speech).....If you have Windows, try .Net. Try this MATLAB code snippet:
% Program to do text to speech.
% Get user's sentence
userPrompt = 'What do you want the computer to say?';
titleBar = 'Text to Speech';
defaultString = 'Hello World! MATLAB is an awesome program!';
caUserInput = inputdlg(userPrompt, titleBar, 1, {defaultString});
if isempty(caUserInput)
return;
end; % Bail out if they clicked Cancel.
caUserInput = char(caUserInput); % Convert from cell to string.
NET.addAssembly('System.Speech');
obj = System.Speech.Synthesis.SpeechSynthesizer;
obj.Volume = 100;
Speak(obj, caUserInput);
Speech to text is a lot more complicated of course.
  4 Comments
Nikos Korobos
Nikos Korobos on 23 Mar 2022
Hi, is there any possibility to function STT without an internet connection?
Asking because it makes use of various SAPIs
Gabriele Bunkheila
Gabriele Bunkheila on 23 Mar 2022
Please see the response provided to this same question in the main thread

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!