Jump to content
LaunchBox Community Forums

Big Box Voice Search 0.0.4

   (0 reviews)

3 Screenshots

About This File

BigBoxVoiceSearch
BigBoxVoiceSearch is a plug-in for BigBox that enables searching for games using your voice and a microphone via microsoft's speech recognition.  To make use of this plug-in, the plug-in components must be installed to the LaunchBox plugins folder and a few lines of XAML code must be added to the themes where you wish to use it.
 

Demo

Installation
1.  Download the latest version of BigBoxVoiceSearch.zip from the LaunchBox forums or from this github repositories Releases
2.  Extract BigBoxVoiceSearch.zip to a folder.  Inside the BigBoxVoiceSearch folder is a folder called LaunchBox.  Inside the LaunchBox folder is a folder called Plugins.  Copy the plugins folder
3.  Go to your LaunchBox installation folder and paste the copied folder
4.  To verify the installation - confirm the following files exist in your LaunchBox\Plugins folder
  - BigBoxVoiceSearch.dll
  - System.Speech.dll    
5.  You can delete the downloaded zip file and extracted folder once the files have been copied into your LaunchBox plugins folder

Adding the voice search element to a theme
In order to use the voice recognition function, a few lines of XAML must be added to the views of the themes that you would like to use this with.  Since it's easy to make simple mistakes while tinkering with XAML, it's strongly recommended to make a copy of whatever theme you plan to use this with and make your changes to a copy of the theme so that you can revert to the original theme if mistakes are made.  Inside your copied theme there is a views folder.  Inside the views folder are xaml files that correspond to the views that you use in BigBox.  Select the view(s) for which you wish to include voice searching functionality and edit them in a text editor like notepad or visual studio.

XMLNS
Each view starts with a UserControl element.  The user control element will include several lines that start with xmlns.  Add the following line to the user control element along with the other xmlns lines.  

xmlns:BigBoxVoiceSearch="clr-namespace:BigBoxVoiceSearch.View;assembly=BigBoxVoiceSearch"

Examples of adding the voice search user control to a theme

Once the above XMLNS line has been added to a views user control element, you can add the BigBoxVoiceSearch:MainWindowView anywhere inside the theme that you would like it to appear.  There are a few properties that you can set on the voice search control to specify how it should behave.  First, here are some examples of how it would look to add the voice search control inside a theme:

<!-- Trigger voice recognition with page up, the control is always displayed -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="PageUp" 
                                  ShowInitializing="true"
                                  ShowInitializingFailed="true"
                                  ShowInactive="true"
                                  ShowActive="true"
                                  ShowRecognizing="true"/>

 

<!-- Trigger voice recognition with page down, the control is only displayed while recognizing -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="PageDown" 
                                  ShowInitializing="false"
                                  ShowInitializingFailed="false"
                                  ShowInactive="false"
                                  ShowActive="false"
                                  ShowRecognizing="true"/>

 

<!-- Activate the user control with Up - you will need to press enter to trigger the voice search, the control is always displayed --> 
<BigBoxVoiceSearch:MainWindowView ActivationMode="Up" 
                                  ShowInitializing="true"
                                  ShowInitializingFailed="true"
                                  ShowInactive="true"
                                  ShowActive="true"
                                  ShowRecognizing="true"/>

 

<!-- Trigger voice recognition with page up, the control is always displayed, override default images with theme specific images -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="PageUp"
  ShowInitializing="true" InitializingImagePath="Plugins\BigBoxVoiceSearch\Media\MySpecialTheme\Initializing.png"
  ShowInitializingFailed="true" InitializingFailedImagePath="Plugins\BigBoxVoiceSearch\Media\MySpecialTheme\InitializingFailed.png"
  ShowInactive="true" InactiveImagePath="Plugins\BigBoxVoiceSearch\Media\MySpecialTheme\Inactive.png"        
  ShowRecognizing="true" RecognizingImagePath="Plugins\BigBoxVoiceSearch\Media\MySpecialTheme\Recognizing.png"/>

 

ActivationMode
By specifying the ActivationMode property on the voice search user control, you can control how the voice search control is activated and how the voice search is triggered with the following options: 

  • Off
    • The plug-in is effectively disabled
    • No button will activate the user control or trigger speech recognition
  • Up
    • The up button will activate the user control
    • The down button will deactivate the user control 
    • Once activated, press enter to start speech recognition
  • Down
    • The down button will activate the user control
    • The up button will deactivate the user control 
    • Once activated, press enter to start speech recognition
  • Left
    • The left button will activate the user control
    • The right button will deactivate the user control 
    • Once activated, press enter to start speech recognition
  • Right
    • The right button will activate the user control
    • The left button will deactivate the user control 
    • Once activated, press enter to start speech recognition
  • PageUp
    • The page up button will trigger voice recognition immediately
    • You do not need to press enter after pressing Page Up
    • You do not need to press any button to deactivate the user control
  • PageDown
    • The page down button will trigger voice recognition immediately
    • You do not need to press enter after pressing Page Down
    • You do not need to press any button to deactivate the user control

VisibilityMode 
The VisibilityMode property from previous versions has been replaced with individual boolean properties ShowInitializing, ShowInitializingFailed, ShowInactive, ShowActive, and ShowRecognizing.

ShowInitializing
The ShowInitializing property accepts the values "true" or "false" to indicate whether the user control should be displayed while initializing.  When the view is loaded, there is an intialization period where the titles in the launchbox game library are parsed to create the speech recognition grammar.  Setting this property to true can give a visual indication that the speech recognition functionality is not yet ready to use.  This property defaults to false if not specified on the UserControl.  
  
ShowInitializingFailed
The ShowInitializingFailed property accepts the values "true" or "false" to indicate whether the user control should be displayed if initialization fails.  Failures could occur while the user control is initializing if there is no default audio device for the speech recognition engine to use.  Setting this property to true can give the indication that speech recognition was not setup successfully and is therefore disabled.  If errors are encountered, check the log.txt file in the LaunchBox\Plugins\BigBoxVoiceSearch folder for any error details.  This property defaults to false if not specified on the UserControl.  

ShowInactive
The ShowInactive property accepts the values "true" or "false" to indicate whether the user control should be displayed while it is inactive.  The user control will be inactive after initialization completes successfully.  Setting this property to true can give the indication that speech recognition is setup and available to use.  The property defaults to false if not specified on the UserControl.  

ShowActive
The ShowActive property accepts the values "true" or "false" to indicate whether the user control should be displayed while it is active.  The user control is put in an active state when you press Up, Down, Left, or Right and the ActivationMode property is set to Up, Down, Left, or Right.  Setting this property to true can give the indication that the speech recognition user control is active and will perform a search of enter is pressed.  The property defaults to false if not specified on the UserControl.  

ShowRecognizing
The ShowRecognizing property accepts the values "true" or "false" to indicates whether the usr control should be displayed while recognizing speech.  The user control recognizes speech when you press Page Up or Page Down and the ActivationMode is set to PageUp or PageDown or when you press Enter while the speech recognition user control is active (if ActivationMode set to Up, Down, Left, or Right).  The property defaults to false if not specified on the UserControl.

Default image paths 
If no custom image paths are specified on the user control, the plugin will look for images with the following path to display in various states: 

| State              | Default image path                                                          |
|--------------------|-----------------------------------------------------------------------------|
| Initializing       | ..\LaunchBox\Plugins\BigBoxVoiceSearch\Media\Default\Initializing.png       |
| InitializingFailed | ..\LaunchBox\Plugins\BigBoxVoiceSearch\Media\Default\InitializingFailed.png |
| Inactive           | ..\LaunchBox\Plugins\BigBoxVoiceSearch\Media\Default\Inactive.png           |
| Active             | ..\LaunchBox\Plugins\BigBoxVoiceSearch\Media\Default\Active.png             |
| Recognizing        | ..\LaunchBox\Plugins\BigBoxVoiceSearch\Media\Default\Recognizing.png        |

 

 

Custom image paths 
Images displayed by the user control can be overridden or customized by specifying a relative path to the image file on the user control with the following properties: 
- InitializingImagePath
- InitializingFailedImagePath
- InactiveImagePath
- ActiveImagePath
- RecognizingImagePath

Settings

When BigBox loads for the first time, a settings file will be created that will allow you specify how the plugin should behave.  Currently there is only one setting to configure 

{
  "VoiceSearchTimeoutInSeconds": 5
}

VoiceSearchTimeoutInSeconds
Specify the number of seconds that the voice search should stay open before it stops listening

Link to GitHub repo

https://github.com/AtomFry/BigBoxVoiceSearch

 

Edited by Fry
Updates for version 0.0.3


What's New in Version 0.0.2   See changelog

Released

Removed the SearchOnPageUp and SearchOnPageDown settings from the settings.json file. They are no longer needed with the addition of the ActivationMode property that is set on the user control when adding to a theme.

Added VisibilityMode that can be specified on the user control with the following values:
Never: do not show the user control
Always: show the user control
Active: only show the user control when active (and recognizing)
Recognizing: only show the user control when recognizing

Added ActivationMode that can be specified on the user control with the following values:
Off: no buttons will activate the user control
Up: up button activates the user control (down will deactivate). Pressing enter will trigger speech recognition.
Down: down button activates the user control (up will deactivate). Pressing enter will trigger speech recognition.
Left: left button activates the user control (right will deactivate). Pressing enter will trigger speech recognition.
Right: right button activates the user control (left will deactivate). Pressing enter will trigger speech recognition.
PageUp: Page Up button will trigger voice recognition. You do not need to press enter after pressing Page Up
PageDown: Page Down button will trigger voice recognition. You do not need to press enter after pressing Page Down

Added a media folder in the plug-in directory. You can include images with the following names and they will appear in the plugin:
Active.png - appears in the foreground when the user control is active
ActiveBackground.png - appears in the background when the user control is active

Recognizing.png - appears in the foreground when the user control is recognizing speech
RecognizingBackground.png - appears in the background when the user control is recognizing speech

Inactive.png - appears in the foreground when the user control is inactive
InactiveBackground.png - appears in the background when the user control is inactive

Examples of user control in a theme:

<!-- Trigger voice recognition with page up, the control is always displayed -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="PageUp" VisibilityMode="Always"/>

 

<!-- Trigger voice recognition with page down, the control is only displayed while recognizing -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="PageDown" VisibilityMode="Recognizing"/>

 

<!-- Activate the user control with Up - you will need to press enter to trigger the voice search, the control is always displayed -->
<BigBoxVoiceSearch:MainWindowView ActivationMode="Up" VisibilityMode="Always"/>

 

  • Like 5
  • Unusual Gem 3

User Feedback

You may only provide a review once you have downloaded the file.

There are no reviews to display.

×
×
  • Create New...