I'm trying to develop an iOS app using speech-recognition for french language, but have been unsuccessful until now.
I tried using the openEars framework, which worked great for english language, but doesn't support french.
I used some info from this link.
If anyone know a solution it would be awesome.
Thanks
Openers is using English Acoustic and Language Models by default. So it works well with english, but doesn't support french.
You can download French Acoustic and Language Models from CMU Sphinx website
Some good French Acoustic and Language Models are available here
Download & Change your Openears Acoustic and Language Models with this one.
To do this, just replace Openears hub4wsj_sc_8k folder with the downloaded one and replace the .dic and .languagemodel files with the downloaded ones.
If you think , the downloaded French Acoustic and Language Models are too big, then create our own with few words using this documents
I ended up using this library iPhone-Speech-To-Text for my project.
It use the google voice api, sending a FLAC file of the speech and retrieving the appropriate text.
To make it work for french language, in SpeechToTextModule.m I juste changed the URL
NSURL *url = [NSURL URLWithString:#"https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=en-US"];
to
NSURL *url = [NSURL URLWithString:#"https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=fr"];
The alternative I found is Dragon Speech SDK for Mobile. You simply need to Register With Dragon Mobile and download SDK and Samples.
It Supports English, French, German Speech Recognition. Also it is working very accurately than openEars. I have tested this for English and its working very well.
Here is screen for that sample which supports Recognition in mentioned language
Note
The SDK is free to download and use for 90 days, but...
Related
I have written an App which internally supports a number of different languages in its UI/Strings without changing device region. All was working fine except Chinese. Apple dox state they use ISO 639-1 or -2 codes.
https://developer.apple.com/documentation/foundation/nslocale/1418015-isolanguagecodes
The ISO language code table says the code for Chinese(Simplified) is "zh" or "zh-TW" (Taiwan)
https://www.loc.gov/standards/iso639-2/php/English_list.php
My app uses several language processing APIs which use the standard ISO codes.
Using Xcode 14.01, and digging into the App Bundle, I found it creates lproj files with names of zh-Hans and zh-Hant when you add Chinese localization instead of zh and zh-TW. All other language localizations I checked conform to ISO.
It took a few hours of digging to find this issue, so I thought I would mention this boobytrap to other developers.
My question: Why doesn't Apple use ISO consistently, or at least update their documentation?
You must end up special casing Chinese, using zh-Hans or zh-Hant in your App, but zh or zh-TW in other APIs. All other language in Apple localization use standard ISO 639 codes.
In AVFoundation we can split and merge tracks of any media files. I assume a subtitle to be another track and I want to include this track based on the language the user chooses. My Idea is to include the hardcoded subtitles files as per languages I support in the project and add this subtitle track to the video file I have at run time.
I am not sure if this is possible with AVFoundation. Please direct me to a solution.
The apple provided example code "avsubtitleswriterOSX" is compatible with iOS 7 and 8. This solved my issue.
avsubtitleswriterOSX
I have Created one simple in-house app for ipads. I would like to have 2 language for that app. Based on ipad default language App language should be same as ipad default language.
I tried to goggling it but didn't find proper answer.
Is it possible?
How can I do that?
Any Links, examples any documents?
You can use TSLanguageManager SDK in order to do that. In basic, you define different string for each languages. Then the SDK checks your language and converts your defined strings/view elements into that language string. Also, you can switch between language by using this SDK in your app.
This is a good starting point for internationalization and localization resources for iOS apps.
I have been using Google's Translation web site to translate my localizable.strings file to multiple languages, but it is very tedious.
Does anyone know if there is a better way to do this?
Don't do that! Most people will prefer a non-localized English version to a poorly translated one.
Either contact a localization service (they will translate the .strings files directly) or don't localize your app.
I am trying to use iSpeech SDK for iOS.
I am using Free version.
I'm fine with English Text To Speech with following codes.
[ispeech ISpeechSpeak:#"HELLO World"];
But I also want to use multiple language like japanese, korean, etc...
How can I change language in iSpeech?
Check out the following examples which might help you;
DotNet Sample and
Web Examples
From that you should be able to make sense of what you trying to do, as the API is the same across Platform.
You might try:
[ispeech setVoice:#"jpjapanesemale"];
Voices are listed in the ISSpeechSynthesisVoices.h header file