Author Topic: Compare {Last Spoken} to payload  (Read 4735 times)

0 Members and 3 Guests are viewing this topic.

boutzo

  • Jr. Member
  • **
  • Posts: 24
  • Karma: 0
    • View Profile
Compare {Last Spoken} to payload
« on: March 11, 2015, 09:29:59 AM »
Would I be able to compare a payload dictation:Regular to a payload phrase to boost dictation accuracy?

I'm trying to do a custom search to my movie payload or tv payload.  I want to take every word from every phrase in my movie or tv xml (minus duplicates) and create a "phrase only" payload to compare to my dictation to boost accuracy of what I'm trying to say.

Example: Everytime I say "star trek" it comes out as "star track". Then I get a long list of alternates or no results.

I want to try to eliminate that (as long as track isn't in my list)
I know the phrase list will be quite long
Is this even possible, "a waste of time" or will I take a big performance hit ?
Is there a better way to boost accuracy?  ex. speech training

Any thoughts
boutzo

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 1999
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Compare {Last Spoken} to payload
« Reply #1 on: March 11, 2015, 09:52:36 AM »
Windows speech training may help, and possibly a better microphone setup.

You can also do custom training on individual commands within VC, but NOT if the command uses open dictation. http://voxcommando.com/mediawiki/index.php?title=Profile_Training_Tool

What's a bit confusing at the moment is, why do you want to use open dictation rather than the movie and tv payload xml files? It's not clear from your description.

If there's no phrase "star track" in your payloadXML, the engine should not be interpreting your command as "star track". That would only happen with open dictation, but open dictation shouldn't ordinarily be needed for media control.
« Last Edit: March 11, 2015, 10:11:46 AM 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)

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Compare {Last Spoken} to payload
« Reply #2 on: March 11, 2015, 10:30:22 AM »
I also wonder why you are trying to use dictation for media control.

Here's a way to add words to your dictionary though.  I have not tested it personally, or not recently anyway.

http://windows.microsoft.com/en-ca/windows7/add-or-edit-words-in-the-speech-dictionary

boutzo

  • Jr. Member
  • **
  • Posts: 24
  • Karma: 0
    • View Profile
Re: Compare {Last Spoken} to payload
« Reply #3 on: March 11, 2015, 11:48:24 AM »
Can I check against multiple xml files or switch between them?

Search for "Movie" Star Trek would check movie.xml
Search for "TV Series" Star Trek would check series.xml

I was trying to combined all of them in a single search command with a payload list to determine the type of xml file to use.

Payload list: Movies, Series, Episode ect...

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 1999
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Compare {Last Spoken} to payload
« Reply #4 on: March 11, 2015, 12:02:46 PM »
To my knowledge, all of the standard configs of VC for the various media players come with those commands built in.

Usually there is one command for "Find movie {x}" that uses a payload xml file of movie titles, and a separate command "Find TV show {X}" that uses a payload XML file with TV series titles.

http://voxcommando.com/mediawiki/index.php?title=Default_VoxCommando_Configurations

You should just need to generate XML according to the installation instructions provided for whichever media software you're using.

http://voxcommando.com/mediawiki/index.php?title=Installation

If you're using some other media player that is not officially supported, I would just adapt the strategy that is already used.

EDIT ... if I'm understanding you now: I can think of no useful reason to try to combine all of those into one command. One command is not better than 3 on any functional, practical level.
« Last Edit: March 11, 2015, 12:19:03 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)

boutzo

  • Jr. Member
  • **
  • Posts: 24
  • Karma: 0
    • View Profile
Re: Compare {Last Spoken} to payload
« Reply #5 on: March 11, 2015, 12:32:08 PM »
For example the MB3 find movie will only pull up Star Trek (single Movie).  What I was looking to do was to pull up all movies with the name Star Trek in it. I was able to do it way back in MB2 with python. I guess I'll just have to script something similar if I want type "Movie" check movie.xml, gather up all ids in a list and do a Itemquery.

Built in MB3 search hint just gives to many extra hits (the way their function is set up).  It will return everything with star in the name and everything with trek in the name.  The way I did it before was a little more accurate because I was using match against payloads.  I just thought since then there may be an easier alternative.

I'll have to dig up the old script.

Thanks for the input

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Compare {Last Spoken} to payload
« Reply #6 on: March 11, 2015, 03:42:50 PM »
Even if you managed to find the ids for all the items you are interested in, how would you display the multiple items in MB?

boutzo

  • Jr. Member
  • **
  • Posts: 24
  • Karma: 0
    • View Profile
Re: Compare {Last Spoken} to payload
« Reply #7 on: March 12, 2015, 12:00:31 AM »
I created a virtual folder called "Search" and write shortcut links of my results to that folder then browse to the search folder and my results show up.  You also have to trigger a manual library refresh or you'll have to wait about 30-40sec for MB to recognize changes.  It works with MB Classic (which is what I prefer).  It also works in dashboard but you have to do a refresh of their web search page.

It was a little trick I learned when I was working with MB2, before they had a search function.  I would like to find out a way to send it to their virtual folders so I don't have to do all that writing and deleting but I don't know how to access them yet.

I have a little more control this way.  I can search by Episodes, Movies, Collections, TV Series and only get those specific results.  Later I might add actors, studios, ect...

I still have to use payload dictation to get the initial "search term" hence my original question about comparing dictation to an xml payload to prevent "trek" being interpreted as "track".

Although that could backfire if I ever need to search for something with "track" in it.
« Last Edit: March 12, 2015, 02:33:49 AM by boutzo »

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 1999
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Compare {Last Spoken} to payload
« Reply #8 on: March 12, 2015, 09:16:37 AM »
I still have to use payload dictation to get the initial "search term" hence my original question about comparing dictation to an xml payload to prevent "trek" being interpreted as "track".

You can still use payload xml and {LastSpoken}. Maybe this was your original question. Without understanding the aim and method of execution, I didn't interpret your post in this way.

Example with just movies:

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.1.4.2-->
<command id="1213" name="Search for movie {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
  <action>
    <cmdType>Results.RegEx</cmdType>
    <params>
      <param>Search.for.movie.(.+)</param>
      <param />
      <param>{LastSpoken}</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <action>
    <cmdType>OSD.ShowText</cmdType>
    <params>
      <param>{Match.1}</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <phrase>Search for movie</phrase>
  <payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">MB3Payloads\Movies.xml</payloadFromXML>
</command>
« Last Edit: March 12, 2015, 09:29:55 AM 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)