Author Topic: VC2 in Russian -- Тестирование VoxCommando 2 на русском языке  (Read 16511 times)

0 Members and 1 Guest are viewing this topic.

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 1999
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Testing the Russian speech recognition engine with VoxCommando version 2. :)

http://www.screencast.com/t/opvqqYZ2

==================================================================

Download VoxCommando 2 here: http://voxcommando.com/home/downloads/  (Note: Requires .Net 4.5)

You will also need to download and install:
(1) MS Speech Platform 11 x86 version 32-bit,
(2) the Russian language pack.
(3) You may also want to download a TTS voice from Microsoft (Elena), but this is optional.

Instructions with images: http://voxcommando.com/mediawiki/index.php?title=MS_Speech_Platform

IMPORTANT: Do NOT install VoxCommando in C:\Program Files or another protected directory. VC is a portable program. Create a folder for it on your desktop or some other user directory.

To edit commands, click "Edit" in the main menu. DO NOT EDIT THE XML DIRECTLY.

It is easy to share commands or groups of commands using copy and paste. See this short video demonstration: http://www.screencast.com/t/5dh9bcduUeJY
« Last Edit: April 24, 2015, 04:20:06 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
I've translated XBMC commands to Russian.

I've translated most of the items (~80%), except some of the test items and items that use payload lists (ex. focus window), these need to be changed to payload xml, I might do it later if there is interest in it.
All of the TTS.Speak commands are changed to TTSMS.Speak, as the default Russian TTS voice (in windows 8 ) sounds very bad.  The voice that comes with the Speech Platform sounds much better.
Live TV commands were added to config.

Ensure that your movies/albums/tv channels are scrapped correctly, the titles, actor names, genres, etc must be in Russian, otherwise you will not be able to select it by name or title.

I've also changed some of the options:
TTSMS plugin is enabled
Speech Culture is set to ru-RU
Speech recognizer is set to Microsoft Server Speech Recognition Language - TELE (ru-RU)



« Last Edit: September 07, 2015, 07:21:37 PM by nime5ter »

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
Some notes/requests for future:

Currently if you install Version 2 and you do not have en-US speech recognizer language installed, the VoxCommandoSP.exe will fail to start.
To overcome this issue, either:
  • install en-US
  • or run VoxCommando.exe go into options and change Speech Recognizer Culture to ru-RU, after that the VoxCommandoSP.exe will start correctly
  • or unpack the configuration file I've supplied in previous post

And a small request: would it be possible for Escape key to close dialogs in Vox?

P.S. James, if you send me the XML for Display language, I can translate it to Russian too.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
That is wonderful Filipok.  Thank you very much for this!

Which dialog boxes specifically do you want to be able to close using escape?

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
Preferably all that have a Cancel button, for example options dialog, LCB dialog.
And actually dialogs for plugin settings could do that too, as the way it is right now, it is not too clear (for novice users) how to close those dialogs without saving settings.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Well, for many of these full-fledged windows I prefer not to use escape because I use often escape, for example, to stop editing a label in the command tree and I don't want to accidentally close the edit window.

As with any window in Windows, you should be able to close them using Alt-F4

I will think about this and try to decide if and where I think it is appropriate.  In the meantime I hope that Alt-F4 will work OK for you.

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
Yes, Alt-F4 is fine for me :)

But take a look at LCB and option window, in neither of them Escape does anything at all.

In the command tree you are correct, it much better there to Escape editing the labels or payloads than close the window.

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
I've updated XBMC Russian commands.

Now the only untranslated part remaining are the sort orders.

Changes:
 - "Activate XBMC screens" payload XML created, added some of the screens that were missing in original payload list, also removed duplicates from other sections of commands list
 - Aeon MQ5 viewmodes payload XML created, covers all of 15+ MQ5 views, existing MQ2 payload XML kept, if someone needs it edit the "Activate Window" command to use the old "aeon viewmodes.xml"
   if someone wants to use it for other languages I've added comments to the XML, so it is easy to understand what view it is.
 - some misc changes and fixes


Please note I am using nightly builds of XBMC (which is XBMC Gotham beta 3+ currently) with Aeon MQ5 skin.
« Last Edit: September 07, 2015, 07:21:58 PM by nime5ter »

Filipok

  • Jr. Member
  • **
  • Posts: 14
  • Karma: 2
    • View Profile
update config attached:

 - Comments removed from XML
 - Right/Left directions fixed
« Last Edit: September 07, 2015, 07:21:18 PM by nime5ter »

Phobophile

  • Jr. Member
  • **
  • Posts: 36
  • Karma: 7
    • View Profile
    • Facebook
Hi everyone!
Russian recognition works good! But do I understand correctly, that you cannot use English and Russian recognition simultaneously? Nearly all of my music/video library is in English. For example, I would like to say command "play" in Russian followed by the name of the artist in English. Is this technically possible? I think, that would be a great feature.

PS: "there's been some interest from Russian-speaking people" - I humbly hope that I have something to do with this, since couple months ago I mentioned VC in the article published on the top Russian IT-website, habrahabr.ru.  ;D

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2320
  • Karma: 47
    • View Profile
You can not get russian and english in one instance of VC, but you can run two instances of VC in one is the russian recognition active and in the second instance english - I know, this will solve not your wish. It is possible to pronounce for example the russian word "играть" to english. I did not speak russian, so I have no idea how it will work, but I have some tests done in this way with german language which works for easy commands.
***********  get excited and make things  **********

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Following up on Kalle's response (just elaborating on what he said in case it is not 100% clear):

As far as I know there is no such thing as a multilingual speech recognition engine, made by anyone on any platform.  As far as VC is concerned it would need to be implemented by Microsoft as part of their api before we could use it.  Don't hold your breath on that one!

As Kalle says, you can run two instances of VC at once, side by side, using two different configurations (and languages).  By default VC won't allow opening a second version of itself when one is running so you need to add the command line parameter -new to tell it to open a second instance.

Kalle is also saying that, alternatively you can run VC with an English engine, and you can write some Russian phrases phonetically using the English alphabet.  Well, you can try anyway.  I believe that Wanilton was able to do quite well using this technique with Portuguese / Brazil.

We are aware of your help in promoting VC and the very nice (and amusing) blog (or whatever it was) that you created.  If you take a look at our Google+ community you'll see that we linked to your blog and probably also referred to it in a couple of other places.  Thanks!  :hugs

https://plus.google.com/communities/114617052029490561887

Phobophile

  • Jr. Member
  • **
  • Posts: 36
  • Karma: 7
    • View Profile
    • Facebook
You can not get russian and english in one instance of VC, but you can run two instances of VC in one is the russian recognition active and in the second instance english - I know, this will solve not your wish. It is possible to pronounce for example the russian word "играть" to english. I did not speak russian, so I have no idea how it will work, but I have some tests done in this way with german language which works for easy commands.
Tried it long ago when searching for a decent Russian recognition software. It doesn't work too well. Maybe it's because that Russian is too much phonetically different from English and other European languages.  :-\
Will give it another try though.

As Kalle says, you can run two instances of VC at once, side by side, using two different configurations (and languages).  By default VC won't allow opening a second version of itself when one is running so you need to add the command line parameter -new to tell it to open a second instance.
Yeah, that's probably the best way for now. One instance for controlling XBMC and another for some home automation, for example.

Thanks for you replies!

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 1999
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Maybe it will be obvious to you, but if you run two instances of VC at once, you'll want to use prefix mode with 2 different prefixes so that each VC instance knows when to listen.

... Kalle demos this nicely in one of his youtube videos with German ("Komputer" ) and English ("Emily") instances, but I can't find it right now.

I think nime5ter mean this video at time 5m58s which shows the two instances in action.

http://www.youtube.com/watch?v=HhhmWdd02Vc

Kalle ;)
« Last Edit: May 26, 2014, 12:52:02 PM by Kalle »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Phobophile

  • Jr. Member
  • **
  • Posts: 36
  • Karma: 7
    • View Profile
    • Facebook
Maybe it will be obvious to you, but if you run two instances of VC at once, you'll want to use prefix mode with 2 different prefixes so that each VC instance knows when to listen.
Do I really need prefixes? Won't two VC instances work simultaneously? I mean, "English" VC won't recognize Russian commands and vice versa, right?

P.S.: Kalle, I like your chair! ;D What model is this? Looks very comfortable (also expensive :()

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2320
  • Karma: 47
    • View Profile
You've right, you need no prefix - I will get only save that VC didn't recognize any sound as a command. I use the prefix also to mute the sound which come from music or movie when I ask for a command.

Thanks, the chair is a Le Corbusier LC4

 [url][http://www.ambientedirect.com/cassina/le-corbusier-lc4-liege-cassina_pid_2573_38119.html?lan=de&shop_country=de&art=229009&src=gmc&gclid=CjkKEQjw75CcBRCz2LiEs5OPsZoBEiQADgUma1Crn7nvzctfG5r9GR1qz4wiYRjn0oTwptAsibqvlZXw_wcB&aff=gmc/url]

but there are also many copies arround the net which is even cheaper ;-)

***********  get excited and make things  **********

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Do I really need prefixes? Won't two VC instances work simultaneously? I mean, "English" VC won't recognize Russian commands and vice versa, right?

P.S.: Kalle, I like your chair! ;D What model is this? Looks very comfortable (also expensive :()

Try it both ways.  Having the prefix will just make it more certain to correclty differentiate which instance you are addressing.  The point of a prefix is that it is optional anyway, when you are in "on" mode and you only need to say it when you are in "standby" mode.  You could also use the prefix event to control which instance is on and which is in standby.  When VC hears you speaking clearly the engine more or less assumes you are saying something it should understand.  It is possible that it will sometimes stretch the truth a bit to find the most likely match.

Anyway it doesn't hurt to experiment with it a bit both ways.

One of the challenges with using two instances of VC is that they can't both use the same UDP or TCP ports for receiving messages.
« Last Edit: May 27, 2014, 02:38:01 PM by nime5ter »