Author Topic: VoxCommando 0.833 MediaMonkey Edition is released:  (Read 17896 times)

0 Members and 3 Guests are viewing this topic.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #15 on: November 02, 2010, 05:03:07 PM »
Thanks for the info, I will look into this.

I had noticed that it took a bit longer for the rating to show up than with EventGhost (a few seconds), but not that I had to go to the next song.  And I had not noticed that the rating was not permanent.  That is very odd.  Let me play with it a bit.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #16 on: November 02, 2010, 05:40:24 PM »
OK, I think I have this fixed. I will be releasing a new version in the next couple of days, and this fix will be included.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #17 on: November 02, 2010, 06:00:32 PM »
Also is it possible to get a copy of your voicecommands.xml that you personally use?
I have so many.  The main one that I actually use on my htpc is quite out of date because I have been more concerned with development than actually using VC!  In any case I am away from home for about 5-6 weeks so I don't have access to that computer.  I have a bunch of voicecommands files used to test different programs etc, and even some from different users that I have used to debug problems, but nothing comprehensive.

If there is anything in particular that you are interested in though, just ask.

shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #18 on: November 03, 2010, 11:52:52 AM »
Another bug for me:
If I put my system to sleep then wake the system, voxcommando doesn't detect new sounds anymore until I press the "restart" button within the application. In fact, it behaves identically to when it's in "off" mode.

Additional info:
I use windows 7.
I use a usb audio device that remains plugged in.
A voip application I have works normally after sleep/wakeup so the audio device works fine.



As for voicecommands.xml, it'd nice if you could post any that you have. It's just to see how people are using it so maybe I can copy some ideas there without having to do too much work configuring it.
« Last Edit: November 03, 2010, 11:59:36 AM by shamans »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #19 on: November 03, 2010, 12:48:41 PM »
It seems that you can turn VC to off mode, sleep, wake, and switch to on mode and it works.

It may also be possible even if you sleep in on mode, after waking, to switch to off mode then back to on mode, instead of doing a restart.  If you have a large media library this will be much faster.

I will see if there is a way to detect windows going into sleep and waking and automatically switch to off, and on modes respectively.

shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #20 on: November 03, 2010, 12:58:23 PM »
It seems that you can turn VC to off mode, sleep, wake, and switch to on mode and it works.

It may also be possible even if you sleep in on mode, after waking, to switch to off mode then back to on mode, instead of doing a restart.  If you have a large media library this will be much faster.

I will see if there is a way to detect windows going into sleep and waking and automatically switch to off, and on modes respectively.

Well, yes, that's my point...it should keep working regardless of sleep/wake.

There's also issues with talking to MediaMonkey or EventGhost after sleep/wake but I'd have to do more testing there.

Another thing: Maybe you can do a client/server approach where the microphones from multiple devices feed onto one vox commando server...
Some options to choose the mic device might also be useful in future.
« Last Edit: November 03, 2010, 01:00:25 PM by shamans »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #21 on: November 03, 2010, 01:29:17 PM »
I understand your point, which is why I said "I will see if there is a way to detect windows going into sleep and waking and automatically switch to off, and on modes respectively."  I'm offering you work-around options until I can (hopefully) address it in code.

I am not aware of any issues relating to EventGhost or MediaMonkey after sleeping.  I will try to do some testing myself, but if you can provide any details it would be appreciated.

There won't be an option to select audio inputs other than the default recording device until Microsoft change their speech api.  Perhaps a there exists a 3rd party application that can do something like that and fool windows into thinking it is using the default input device.

It is also possible to save a wav to a folder and have VC open and recognize it, but obviously there would be some lag there, and this feature has not been thoroughly developed or tested.

shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #22 on: November 03, 2010, 03:12:19 PM »
I understand your point, which is why I said "I will see if there is a way to detect windows going into sleep and waking and automatically switch to off, and on modes respectively."  I'm offering you work-around options until I can (hopefully) address it in code.

I am not aware of any issues relating to EventGhost or MediaMonkey after sleeping.  I will try to do some testing myself, but if you can provide any details it would be appreciated.

There won't be an option to select audio inputs other than the default recording device until Microsoft change their speech api.  Perhaps a there exists a 3rd party application that can do something like that and fool windows into thinking it is using the default input device.

It is also possible to save a wav to a folder and have VC open and recognize it, but obviously there would be some lag there, and this feature has not been thoroughly developed or tested.

Communication with MM and VC is good after sleep/wake.

Communication with EG and VC is not working properly after sleep/wake. It seems as if the broadcaster plugin on EG no longer works. The plugin I use is the one found here: http://www.eventghost.org/websvn/eventghost/trunk/plugins/Broadcaster/ . A restart of EG is needed to return operations to normal. Any thoughts/suggestions?


Also, another feature to think about is to be able to control the status (on/standby/off) of VC from EG.
« Last Edit: November 03, 2010, 03:40:28 PM by shamans »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #23 on: November 03, 2010, 04:32:13 PM »
After a few tests I don't have a problem with MM or EG after resume.  The problem may be related to EG and the speed at which your network card etc. wakes up and in what sequence.  Or maybe your ip address is changing and messing up the broadcast plugin that way?  Is there any error message in EventGhost log after you wake?  Do you have some other way to test if the broadcaster plugin is working after wake, other than from VC?  I will try to help you figure it out but you might also want to post on the EG forum if you can determine that the problem is with broadcaster and not VC, because someone might have already dealt with this issue.

I did a test of sleep / wake using the built in microphone on my laptop and everything seemed normal after wake.  It could vary from machine to machine and mic to mic or it may be specifically a usb microphone problem.  I am working on the method of putting VC into off mode before sleep, and restoring its state a little while after the system resumes.  Do you want to help me test this by trying it on your system?  Also can you verify if after waking, switching to off and then on modes fixes the problem?

I have not done any tests with hibernate because I don't have the patience to go through the whole sequence!

It is possible to control VC from eventGhost using the broadcaster.  Paste the following into your EG Config Tree and add events to trigger the commands:
Code: [Select]
<?xml version="1.0" encoding="UTF-8" ?>
<EventGhost Version="1462">
    <Folder Name="Set VoxCommando State" Expanded="True">
        <Macro Name="Broadcaster: Broadcast: vox&amp;&amp;on" Expanded="True">
            <Action>
                BroadcastListener.Broadcast(u'vox&amp;&amp;on', u'', 33000)
            </Action>
        </Macro>
        <Macro Name="Broadcaster: Broadcast: vox&amp;&amp;off" Expanded="True">
            <Action Name="Broadcaster: Broadcast: vox&amp;&amp;off">
                BroadcastListener.Broadcast(u'vox&amp;&amp;off', u'', 33000)
            </Action>
        </Macro>
        <Macro Name="Broadcaster: Broadcast: vox&amp;&amp;standby" Expanded="True">
            <Action Name="Broadcaster: Broadcast: vox&amp;&amp;standby">
                BroadcastListener.Broadcast(u'vox&amp;&amp;standby', u'', 33000)
            </Action>
        </Macro>
    </Folder>
</EventGhost>



shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #24 on: November 03, 2010, 05:15:28 PM »
There's no error message after sleep/wake on EG. My IP remains the same. I'll try to see if I can somehow restart the broadcaster plugin after sleep/wake. But all my other plugins work normally.

I can help you test if you'd like.

Your commands for controlling VC from EG work well.

----

Info on the broadcast plugin is centered around vox commando so I thought that if you didn't know, nobody else probably knew....
What I did to work around the issue of "VC->EG communication" is to simply modify the broadcast plugin with a new "ReInit" Command:

Code: [Select]
class ReInit(eg.ActionClass):
 
    def __call__(self):
        try:
            self.server = Server(self.plugin.port, self.plugin.listenAddr, self.plugin.selfBroadcast, self.plugin.payDelim, self.plugin)
        except socket.error, exc:
            raise self.Exception(exc[1].decode(eg.systemEncoding))       

I call the "ReInit" command after sleep/wake. One interesting thing I noticed is that if I called right after the system starts, it has no effect. I'd have to wait a couple seconds. So maybe it's related to when my network card "wakes up" and that may be causing the original problem with EventGhost.
« Last Edit: November 03, 2010, 06:23:53 PM by shamans »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #25 on: November 03, 2010, 06:46:37 PM »
that's cool. :D  If you haven't already done so, you might want to post that code to the EG forum.  Others there might be able to benefit from it.  I contributed to the broadcaster code in order to get payloads working with VC, but I am not completely familiar with it, and it has been a long time since I even looked at that code.  There are plenty of other people who use it without using VC though...

shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #26 on: November 03, 2010, 07:49:43 PM »
I'm too lazy to register to post. Feel free to post my experience if anyone encounters a similar problem.

Other ideas:
1) It's probably a good idea to stop distributing VC with 1 syllable commands like "play" and "pause" because it severely increases the chance of false positives with VC. Maybe something like "play music" or "pause music" is better. I have an extremely (good) sensitive usb mic and typing at my keyboard would cause it to think i said "pause".
2) Minimize to tray-icon on minimize / close button
3) Give option to change the # of seconds to show OSD
4) A tree-graph representation of commands instead of list view. Each node could possibly execute some sort of action.
5) A section in your application showing verbal commands that often get confused with each other.
« Last Edit: November 03, 2010, 08:05:13 PM by shamans »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #27 on: November 03, 2010, 09:24:33 PM »
I'm too lazy to register to post. Feel free to post my experience if anyone encounters a similar problem.

Other ideas:
1) It's probably a good idea to stop distributing VC with 1 syllable commands like "play" and "pause" because it severely increases the chance of false positives with VC. Maybe something like "play music" or "pause music" is better. I have an extremely (good) sensitive usb mic and typing at my keyboard would cause it to think i said "pause".
2) Minimize to tray-icon on minimize / close button
3) Give option to change the # of seconds to show OSD
4) A tree-graph representation of commands instead of list view. Each node could possibly execute some sort of action.
5) A section in your application showing verbal commands that often get confused with each other.

1 - good point, but a lot of people use prefix mode to get around this. Luckily VC is easy to customize.  You are probably right though.  It might be better for new users.
2 - you can do this just by clicking the notification icon
3 - yes I keep meaning to do this.  One of many things.
4 - I don't really know what you mean.  The current list view is there so that you can see which groups are currently enabled.  What are you suggesting?
5 - This sounds interesting but could you elaborate?

shamans

  • Jr. Member
  • **
  • Posts: 7
  • Karma: 0
    • View Profile
Re: VoxCommando 0.833 MediaMonkey Edition is released:
« Reply #28 on: November 03, 2010, 10:49:08 PM »
I'm too lazy to register to post. Feel free to post my experience if anyone encounters a similar problem.

Other ideas:
1) It's probably a good idea to stop distributing VC with 1 syllable commands like "play" and "pause" because it severely increases the chance of false positives with VC. Maybe something like "play music" or "pause music" is better. I have an extremely (good) sensitive usb mic and typing at my keyboard would cause it to think i said "pause".
2) Minimize to tray-icon on minimize / close button
3) Give option to change the # of seconds to show OSD
4) A tree-graph representation of commands instead of list view. Each node could possibly execute some sort of action.
5) A section in your application showing verbal commands that often get confused with each other.

1 - good point, but a lot of people use prefix mode to get around this. Luckily VC is easy to customize.  You are probably right though.  It might be better for new users.
2 - you can do this just by clicking the notification icon
3 - yes I keep meaning to do this.  One of many things.
4 - I don't really know what you mean.  The current list view is there so that you can see which groups are currently enabled.  What are you suggesting?
5 - This sounds interesting but could you elaborate?

2 - yes, but I'm describing the Minimize and Close buttons on the main window (on the top right). Making this an option would be good.
4 - A tree-graph is more graphically intuitive but is harder to render. It would look something like this: http://en.wikipedia.org/wiki/Decision_tree
5 - Often, I get options when VC is not sure what I said. If you collect this data, you should be able to see common occurrences for where 2 or more phrases get confused. The user can then see how often VC gets confused and if he should change his phrases to be more differentiating.

Additional suggestion:
6 - Success associative mode. In this mode, recent phrases being identified will cause future phrases to be more likely identified. The inverse is also true. An optional prefix keyword will also cause future phrases to be more likely identified. This mode should result in allowing the occasional conversation to be held with VC still being enabled.
« Last Edit: November 03, 2010, 11:07:44 PM by shamans »