Announcement

Collapse
No announcement yet.

RRVoice

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • RRVoice

    Sept 4, 2010, 6:17:04 PM
    RRVoice.dll Version 1.1.0.10 BETA
    Voice Control for RideRunner
    Earlier versions are not supported.
    Tested on Windows 2000
    Tested on Windows XP
    There are known issues with Windows Vista and Win7 at this time.
    Developed using Visual Basic 6 Service Pack 6.
    If you have RideRunner installed you should have all VB6 runtime files needed.
    RRVoice was developed for my personal use.
    I am offering it free, for personal use.
    Donations greatly appreciated >>> PayPal


    ## SETUP ##
    Turn off RideRunners built in VR in rr.ini if you have it on.
    Make sure that Voice Recognition and your Microphone is set up correctly.
    1. Unzip and Drop the all files into "RRPATH"\Plugins\RRVoice"
    Note: There are sample .skin and .png files (DFX4)
    2. Run the batch file in the folder: "RRPATH"\Plugins\RRVoice\Register.bat
    3. Open RRVoiceConfig.exe and Click the "Create" Button and let it find your MP3 and WMA files.
    Note: Currently only finds MP3 and WMA Files.
    You will note that you have full ini editing capabilities in RRVoiceConfig.exe.
    Debug is off by default in both apps, Leave it off for now. Turn it on later if you need to debug.
    You can close RRVoiceConfig.exe now if you wish.
    Start RideRunner. RRVoice will start and stop with RideRunner.
    On startup RRVoice will minimize to system tray, right click on it to pop it up.
    RRVoice now Creates a list (RRVoice.txt) of CURRENT Commands in it's Folder by Calling "RRVOICE_LIST"
    ## Testing ##
    Take a look at and scroll through the default commands listed in the Commands Listbox in RRVoice.
    I have it currently setup with a few default commands as you can see in the Commands Listbox.
    Now click on the word "VR OFF" on the RRVoice form
    -or-
    Use the skin commands as noted below
    -or-
    Use serialswitch and a momentary button, as noted below, to execute the RRVOICE_ON command
    -or-
    Use any input device to execute the RRVOICE_ON command.
    "VR OFF" will change to "VR ON" on the RRVoice Form.
    Say a command and you will see the application and RR recognize your command.
    If everything is correct you will see the RideRunner command in bold at the bottom of RRVoice
    and RR will execute your command.
    If not. Go back and Setup or Train SAPI or Setup your microphone correctly.
    I will not provide support for your SAPI VR or Microphone issues.

    /-----------------------------------------------------------------
    ## Explanation of RRVoice.ini ##
    /--------------------------------------------------------------
    [Paths]
    /The path to RRVoice.
    /This path is also set on RRVoice startup in RR.ini [Extra's] as RRVOICEPATH
    LoadPath=C:\Program Files\Road Runner\Plugins\RRVoice\
    /Music Path setup from RR at startup.
    MusicPath=C:\media\Music\
    /Path to current skin specific voice commands, set at onskinstart
    /Full path to LoadIniFile is SkinPath & "Plugins\RRVoice\" & LoadIniFile
    /RRVoice ignores if not found and uses RRVoice.ini only for commands
    /If found RRVoice uses both LoadIniFile and RRVoice.ini, in that order
    SkinPath=C:\Program Files\Road Runner\Skins\DigitalFX 5.0\
    [Settings]
    /The result of RRVoiceConfig's Music Search
    MusicCmdStatus=You Have 1151 Voice Command Songs!
    /For RRVCConfig voice command formatting , DO NOT CHANGE!!!
    StripChar=-_[],.()!@#$%^*+><?
    /RRVoiceConfig debug, T/F
    ConfigDebug=True
    /Future use
    UserName=Joe Grau
    /RRVoice debug, T/F
    Debug=False
    /Default ini section to load, both RRVoice.ini and LoadIniFile
    LoadIniSection=Commands
    /Default skin ini file to load
    LoadIniFile=Menu.ini
    /DO NOT CHANGE!!!
    PlayMusicCommand=LOADLIST;
    /DO NOT CHANGE!!!
    PlayMusicXtra=PLEXEC
    /DO NOT CHANGE!!!
    PlaySongCommand=PLAYITEM;
    PlaySongXtra=
    /Internal use
    LastCommand=Last Song
    LastScreen=menu.skin
    LastArtist=Play Artist Eagles
    LastAlbum=
    LastSong=Play Song Wasted Time
    /-----------------------------------------------------------------
    ## Explanation of Commands ##
    /--------------------------------------------------------------
    /On RRVoice Startup and Shutdown from RRVoice to RideRunner
    ON_RRVOICE_STARTUP
    ON_RRVOICE_SHUTDOWN
    /RRVoice path variable, Set on Startup in RR.ini in [EXTRA'S] section by RRVoice
    RRVOICEPATH
    /Turns VR ON or OFF. "RRVOICE_OFF" is there for utility purposes as
    /RRVoice switches VR off after a Recognized Command
    RRVOICE_ON
    RRVOICE_OFF
    /Executed "ON VR ON" or "ON VR OFF" from RRVoice.
    ON_RRVOICE_ON
    ON_RRVOICE_OFF
    /Refreshes the voice commands after a setting change.
    RRVOICE_REFRESH
    /INDICATOR Code for IS RRVoice Listening or Not, T/F, set by RRVoice
    RRVOICE_LISTENING
    /INDICATOR Code for RRVoice Active or Not, T/F, set by RRVoice
    RRVOICE
    /OPTIONAL
    /Loads RRVoice Skin
    "MyCommand","LOAD;rrvoice.skin"
    /Creates RRVoice.txt, a List of Current Commands, in RRVoice folder.
    /If on RRVoice.skin also sends list to CL on that screen
    /Else just creates list in RRVoice folder
    RRVOICE_LIST
    /Adds or edits RRVoice commands. Filename must be present.
    /RRVOICE_ADD;<section>;<listen cmd>;<exec cmd>;<Filename> = RRVoice.ini, LoadPath is provided by RRVoice.ni
    "RRVOICE_ADD;Commands;Menu;load;menu.skin;RRVoice. ini"
    /or if found in $SkinPath$RRVoice\LoadIniFile name from RRVoice.ini, LoadIniFile=Menu.ini
    /RRVOICE_ADD;<section>;<listen cmd>;<exec cmd>;<Filename> = Menu.ini, SkinPath is provided by RRVoice.ini
    "RRVOICE_ADD;Commands;Weather;load;weather.skin;Me nu.ini"
    /or in the submenu section of your choice in either ini
    RRVOICE_ADD;SkinSettings_Global.skin;Another Test;Main;RRVoice.ini
    RRVOICE_ADD;SkinSettings_Global.skin;Another Test;Main;menu.ini
    /RRVOICE_ADD is currently limited to NON stacked commands, ||, <exec cmd||exec cmd> currently won't work.
    /Example skin translation code in Exectbl.ini:
    "MyCommand1","RRVOICE_ON"
    "MyCommand2","RRVOICE_OFF"
    ## EXAMPLE Skin Commands ##---------------------------------------------
    /These are executable label commands to Enable/Disable VR.
    /This puts a hidden executable label in the center of the Menu Skin to switch VR on.
    L,301,235,204,124,,,,,,"EXEC;MyCommand1||=",
    /This puts a smaller hidden executable label near the center of a Skin to switch VR off.
    /For example to Cancel a VR command
    L1,443,371,91,85,,,,,,"EXEC;MyCommand2||=",
    /Example Skin Indicator Code
    /You can switch your RRVoice listening indicator on/off from this.
    RRVOICE_LISTENING
    I,252,150,21,20,"RRVOICE_LISTENING"
    /-----------------------------------------------------------------
    ## Editing Ini Files ##
    RRVoice is fully configurable.
    Any Voice Command in RRVoice.ini can be associated with any or multiple RR Commands.
    This should be self explanatory by studying the ini files.
    Note: No command will show up twice in the Command list
    ## Music ##
    This is one area I have tried to put a lot of effort into getting right. I have 1150 songs.
    Some of you have over 10,000 songs in your car???
    When you clicked on the "Create" button in RRVConfig you will have found out if my efforts at
    automatically creating the VR music commands works.
    The way your Music is set up on your drive determines how your voice commands are found and setup.
    ARTIST > ALBUM > SONG is the the way that RRVoice wants to see, and is the most effective at creating VR Music Commands
    This brings us to your music structure. I use the folder names as you can see. Future effort will be to expand on this.
    This also brings us to song names. There are some album/song names that just don't lend themselves to voice recognition.
    Take for example Korn, "4U" or Korn, "K@#0%!" How in the heck is VR gonna recognize those commands? How are you gonna say them?
    In VR all numbers must be spelled out for the command match. Ha! spell this, "K@#0%!". You can't.
    So to get VR to recognize these, they must be edited in your Music.ini or Songs.ini. Change them to something VR can recognize.
    If you don't, you can't VR these songs. Just change the "K@#0%!" to something you can say.
    Use RRVConfig to do this. There is a Find Function, a Set Value Function, and a Delete Key Function.
    If you change the structure of your Music Paths, you must Delete and Create your ini files in RRVConfig.
    Remember you might have changed K@#0%! to something VR can understand
    Now Start RideRunner, Start RRSkinTool, and start setting up your VR Menu Commands for your favorite skin.
    Please post the bugs...
    I'm sure I missed something in the plugin and or in this readme. Remember, This is BETA. Questions? Ask...
    ...JJG
    Attached Files
    Last edited by Jebus; 04-27-2011, 11:06 PM. Reason: Updated RRVoice and RRVoiceConfig

  • #2
    Reserved

    UPDATED to Version 1.0.0.389


    RRVCommands.png missing for sample RRVoice Screen
    Updated zip posted -or- see file below


    Note: If you are a new user then you must remove the word "sample" from these three ini files:
    SampleRRVoice.ini
    SampleSongs.ini
    SampleMusic.ini

    I did this so as to not overwrite older installs.

    UpDated DLL:
    Added: AddVoiceCommand

    /Adds or edits RRVoice ini files from skin
    AddVoiceCommand;<section>;<listen cmd>;<exec cmd>
    Example: AddVoiceCommand;Commands;Audio;Audio

    AddVoiceCommand has changed, DO NOT call ini file at end....
    writes to RRVoice.ini only....

    fixed minor bugs...
    updated RRVoiceDLL.zip
    updated RRVoice.zip
    In First Post
    ...JJG
    Attached Files

    Comment


    • #3
      Not trying to be rude here(!), but what is new/changed in this version?

      Thanks.
      RideRunner...The #1 FE, PERIOD.

      Current Project: DFXVoice [v1.0 Released]
      Next in line: RRMedia v2.0

      DFX 5.1.1 Skin
      Appstore Link

      My RideRunner Plugins
      RRMedia
      RRExtended
      DFXVoice

      "There are no bugs - only undocumented features."

      Comment


      • #4
        Jebus, again Thank You for such awesome plugin. I'm giving it a try on DFX4 and Newborn skins before DFX5 its released (hoping it won't be that long anyway).

        Comment


        • #5
          Blue: Look @ RRVoice_Skin_Commands.txt, compare. Just minor improvements to code.
          Mostly just releasing it into the wild, see if it lives...

          jarepa: YW, let me know how another skin works with this...

          ...JJG

          Comment


          • #6
            I will try to make this request again...Please allow all of the volume handling to be external to this plugin.

            We could then use your events (ONRRVC_ON/ONRRVC_OFF) to do whatever we would like it to do as far as the volume control is concerned.

            Again Thanks for all the effort put into a really great PI!
            RideRunner...The #1 FE, PERIOD.

            Current Project: DFXVoice [v1.0 Released]
            Next in line: RRMedia v2.0

            DFX 5.1.1 Skin
            Appstore Link

            My RideRunner Plugins
            RRMedia
            RRExtended
            DFXVoice

            "There are no bugs - only undocumented features."

            Comment


            • #7
              Blue;
              Hmm... If you just change
              VROnCmd=SETVOL;Master;0
              to
              VROnCmd= Or whatever
              and
              VROffCmd=SETVOL;Master;
              to
              VROffCmd= OR whatever

              Then it will do nothing to the volume or whatever command is there.
              I do see a potential issue in code that I am changing right now...

              You also have

              BeforeVRONCmd=
              AfterVROFFCmd=

              They do just what you think they do...
              ...JJG

              Comment


              • #8
                Ok, great! I may have missed that or just forgot about it in all the other reading and mind clutter I have right now with trying to help geting DFX5.0 to its released point.
                RideRunner...The #1 FE, PERIOD.

                Current Project: DFXVoice [v1.0 Released]
                Next in line: RRMedia v2.0

                DFX 5.1.1 Skin
                Appstore Link

                My RideRunner Plugins
                RRMedia
                RRExtended
                DFXVoice

                "There are no bugs - only undocumented features."

                Comment


                • #9
                  I'm gonna burn for this, but, You guys take your time on DFX5.
                  I'm gonna do a minor update later this eve.
                  It is best for all that we get as many bugs squashed as possible...
                  ...JJG

                  Comment


                  • #10
                    I know I shouldn't but... I will also remention this from the old thread...

                    Another small handy request, could we have a cmd to dynamically add global VCommands on the fly. Eg..."RRVC_AddCmd;<listen cmd>;<exec cmd>" or a way to specify a txt file to append to the global cmds sect.

                    I wouldn't be asking if we didn't have something in mind for this.

                    Thanks
                    RideRunner...The #1 FE, PERIOD.

                    Current Project: DFXVoice [v1.0 Released]
                    Next in line: RRMedia v2.0

                    DFX 5.1.1 Skin
                    Appstore Link

                    My RideRunner Plugins
                    RRMedia
                    RRExtended
                    DFXVoice

                    "There are no bugs - only undocumented features."

                    Comment


                    • #11
                      Ok, I am having a couple of issues here.

                      When I start RR, the !RRVC_Ind indicator showing that the plugin is listening, turns ON when RR is started.

                      Also when RR starts, the VROnCmd=VoiceStart is firing when the plugin starts up. (VoiceStart is a command I have in the ExecTbl.ini to handle muting of the active audio source, in this case it is muting the audio on RR start because the command is firing)

                      Isn't VROnCmd only supposed to only fire when the RRVCON command is issued? The same thing for the indicator being turned on?
                      Front End of Choice: Ride Runner (Is there anything else??? ) & Powered by the DFX5.1 Skin Available in the Mobile App Mart

                      My Fiero Build Thread

                      Comment


                      • #12
                        Just Making sure that this would be the correct flow of cmds/events start to finish...

                        ONRRVCSTARTUP

                        RRVC_ON

                        BeforeVRONCmd=

                        VROnCmd=

                        ONRRVC_ON

                        < RRVC is listening and waiting >

                        [ RRVC_OFF ] - If VC is/was canceled

                        ONRRVC_OFF

                        VROffCmd=

                        AfterVROFFCmd=

                        ONRRVCSHUTDOWN
                        RideRunner...The #1 FE, PERIOD.

                        Current Project: DFXVoice [v1.0 Released]
                        Next in line: RRMedia v2.0

                        DFX 5.1.1 Skin
                        Appstore Link

                        My RideRunner Plugins
                        RRMedia
                        RRExtended
                        DFXVoice

                        "There are no bugs - only undocumented features."

                        Comment


                        • #13
                          Blue, That looks right. Less, on a trigger to listen,
                          RRVoice does a startup init to set things up correctly.
                          John you should see this @ startup but should be all off after init...Ready to trigger...
                          Here's what I see in the Skinner Tool @ Startup...
                          ...JJG
                          Attached Files

                          Comment


                          • #14
                            Using the 6/2010 RR version, your dll from above, and NOTHING set in cmd wise in the RRVoice.ini file. I also commented out the onskinstart cmd to keep things simple.

                            This is what I have in my widow:
                            ONRRVCSTARTUP
                            -
                            SAVETOINI;RRVCPath;C:\Program Files\RideRunner\Plugins\RRVoice\
                            -
                            SETIND;!RRVC_Ind;ON
                            -
                            ONRRVC_ON
                            -
                            ONLINE


                            So, I don't see:
                            the indicator being turned off
                            no, onrrvc_off event fired
                            RideRunner...The #1 FE, PERIOD.

                            Current Project: DFXVoice [v1.0 Released]
                            Next in line: RRMedia v2.0

                            DFX 5.1.1 Skin
                            Appstore Link

                            My RideRunner Plugins
                            RRMedia
                            RRExtended
                            DFXVoice

                            "There are no bugs - only undocumented features."

                            Comment


                            • #15
                              How "I" think that your plugin startup should look like, in theory...

                              RR Starts up
                              RR begins loading of RRVoice PI

                              <Inside PI>
                              pluginLoaded=False
                              < create sapi object >
                              < other setup codeing for vcrecon >
                              [ when going to call or execute any of the cmd settings or events it ]
                              [ checks if the plugin is done initilizing and if not, should NOT ]
                              [ fire/execute anything till after that first initial on/off that your doing ]
                              [ example: ]
                              [ If Pluginloaded then rrsdk.Execute(<VCOncmd>) ]
                              pluginLoaded=true
                              <Inside PI>

                              RR finishes loading of RRVoice PI
                              RR Done and at a Ready state

                              This would not execute any cmds or events till the PI is told to do so.

                              I hope you understand what i'm talking about or getting at. I don't have the code to give you a clearer/better example.

                              Understand?
                              RideRunner...The #1 FE, PERIOD.

                              Current Project: DFXVoice [v1.0 Released]
                              Next in line: RRMedia v2.0

                              DFX 5.1.1 Skin
                              Appstore Link

                              My RideRunner Plugins
                              RRMedia
                              RRExtended
                              DFXVoice

                              "There are no bugs - only undocumented features."

                              Comment

                              Working...
                              X