Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - fishware

Pages: 1 2 [3]
31
XBMC / Re: Deutsche Befehle für XBMC (Aeon MQ 2)
« on: October 19, 2015, 01:15:30 PM »
first, thanks to the fast response.
Well, thats a good idea to answer so its possible in the native language. I think everyone of us can only learn at (or by?) those way. Great suggestion ;)

The first couple of things, I've tryed out.
I have problems e.g search for Fringe brings up Mensch. And I have shows with this name.
But the confidence in this case is only 40%. If I  search for "Mensch" then the confidence is higher than 65%
I think this significate different can be checked with an IF state.

On other hand, you give me a suggestion. Before I ask, I know which language the searchpattern is. So I can ask for "Suche englische Serie Fringe". This is different from standartquestion "Suche Serie es war einmal der Mensch". Now I see two ways to realize this. In the first case, routing the payload Fringe to an other instance of VC with english enviroment, analyse an give back the showID.
The second solution in my mind is to change the speechrecoganation on the fly in one VC instance. IS this possible?

The other options from you with handedit payloads is not suitable for Music and also for the future (the database are never ends growing up ;) ), and can maybe help other people with other language e.g. spain, which is not so similar like german and english to some kind of Ständbei or Frinsch.

In both cases is it necessary to seperate the searchphrase "Durchsuche englische Serien nach" from payload "Fringe", because only the payload should be routed to the second recognation in foreign language.
Is there a way to do this? Note the payload can also be "Fear the walking dead" which is more than one word.

When the "on the fly change the language in one VC instance" worked, so I think it is possible to search also in russian,spain,etc without any changes in phonetic equivalents. The only requirement would be the speechrecognitation in this language.

I will try some things and will post my realization.

ps. My first trial is to install english speechrecognation in Windows 10. In windows7 it was much easier.

stay in touch

32
XBMC / Re: Deutsche Befehle für XBMC (Aeon MQ 2)
« on: October 19, 2015, 10:45:03 AM »
Hallo liebe Voxcommandocommander

ich grabe mal diesen "alten Threat aus, um euch eine verwandte Idee zu beschreiben.

Das hauptsächliche Problem ist ja das viele Serien- oder Filmtitel nicht mehr ins deutsche Übersetz werden (was für ein Fluch und Segen), als Beispiel seinen mal Fringe oder Firefly genannt. Meine Sammlung besteht zu gut einem  drittel (gefühlt mehr) aus englischsprachigen Titeln. Nun empfinde ich die Aufgabe alle englischen Begriffe einzudeutschen alà Ständbei sehr pflegeintensiv. Spätestens wenn komplette Serien mit englischen Folgennamen hinterlegt sind, kann das schnell mal in den dreistelligen Bereich gehen.

Meine Idee ist folgende:

Mit der Phrase "durchsuche Serien nach" wird der Vorgang gestartet und als Payload der Name "Tatort" übergeben. Da der größte Teil der Phrase "durchsuche Serien nach" sehr gut erkannt wird, gibt es auch bei schlecht erkannten Seriennamen eine ziemlich gute Erkennungsrate. Bei mir üblicherweise zwischen 80 und 90%. Ich könnte mir aber vorstellen, das der Seriename, vor allem wenn er englisch ist wie Fringe, nicht annähernd so gut erkannt werden würde.
Gibt es eine Möglichkeit nur für den Payload eine eigene Erkennungsrate abzufragen?
Wenn dem so ist könnte ich mir vorstellen eine Trashhold zu setzen die unter einem bestimmten Erkennungswert, sagen wir mal kleiner 50%, den payload an eine zweite VC Instanz zu schicken, die dann im englischen Kontext nach diesem Wort sucht. Die "Trefferquote" sollte dort ja viel besser sein.

Ansonsten nochmal vielen Dank an alle, die hier so fleißig die User unterstützen.

ps: sollte es notwendig sein würde ich diese Anfrage auch in meinem bescheidenen Englisch versuchen zu posten



33
Feature Requests / Re: VC.GetOption
« on: October 14, 2015, 05:34:08 PM »
 :yay :yay

Thank you Boys. It works great. Another step to my perfect Voxcontrolled home.

Kind regards Chris

34
Feature Requests / Re: VC.GetOption
« on: October 13, 2015, 04:22:11 PM »
Hey James,

I use your python code from this topic

http://voxcommando.com/forum/index.php?topic=1689.msg14686#msg14686

So the used Pythoncode is

Code: [Select]

from System.Collections.Generic import *

def osdEvent(osdInfo):   
    strText = str(osdInfo.speechText)   
    strCommandName = str(osdInfo.commandName)
    strGroup = str(osdInfo.groupName)
    strConfidence= str(osdInfo.confidence)
    strPass = str(osdInfo.confidencePassed)   
    strDoingCommand=str(osdInfo.doingCommand)   
    vc.triggerEvent("VC.Reco", List[str]([strText, strCommandName, strGroup, strConfidence, strPass, strDoingCommand]))

vc.OnOSD -= osdEvent
vc.OnOSD += osdEvent

I Hope it helps

35
Feature Requests / Re: VC.GetOption
« on: October 13, 2015, 04:07:36 PM »
Hello everyone.

I want to use the script like in

http://voxcommando.com/forum/index.php?topic=1845.0

but it comes up with the following error:

Code: [Select]
System.Text.DecoderFallbackException: Die Bytes [F6] im Index 0 können nicht von der angegebenen Codepage in Unicode übersetzt werden.
   bei System.Text.DecoderExceptionFallbackBuffer.Throw(Byte[] bytesUnknown, Int32 index)
   bei System.Text.DecoderExceptionFallbackBuffer.Fallback(Byte[] bytesUnknown, Int32 index)
   bei IronPython.Runtime.PythonAsciiEncoding.GetCharCount(Byte[] bytes, Int32 index, Int32 count)
   bei System.Text.Encoding.GetChars(Byte[] bytes, Int32 index, Int32 count)
   bei System.Text.Encoding.GetString(Byte[] bytes, Int32 index, Int32 count)
   bei IronPython.Runtime.Operations.StringOps.DoDecode(CodeContext context, String s, String errors, String encoding, Encoding e)
   bei IronPython.Runtime.Operations.StringOps.RawDecode(CodeContext context, String s, Object encodingType, String errors)
   bei IronPython.Runtime.Operations.StringOps.__new__(CodeContext context, PythonType cls, Object string, String encoding, String errors)
   bei IronPython.Runtime.Operations.StringOps.CheckAsciiString(CodeContext context, String s)
   bei IronPython.Runtime.Operations.StringOps.__new__(CodeContext context, PythonType cls, String object)
   bei Microsoft.Scripting.Interpreter.FuncCallInstruction`4.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.LightLambda.Run4[T0,T1,T2,T3,TRet](T0 arg0, T1 arg1, T2 arg2, T3 arg3)
   bei System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
   bei Microsoft.Scripting.Interpreter.DynamicInstruction`4.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
   bei IronPython.Compiler.PythonCallTargets.OriginalCallTarget1(PythonFunction function, Object arg0)
   bei System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0, T1 arg1)
   bei _Scripting_(Object[] , osdInfo )
   bei PluginInterface.doOsdEvent.Invoke(osdInfo oInfo)
   bei VoxCommando.PluginServices.fireOsdEvent(osdInfo oInfo)
   bei eval_f.eval_ᜀ(Object A_0, SpeechRecognizedEventArgs A_1)
13.10.2015 21:03:43 424 [error] unexpected error:
System.Text.DecoderFallbackException: Die Bytes [F6] im Index 0 können nicht von der angegebenen Codepage in Unicode übersetzt werden.
   bei System.Text.DecoderExceptionFallbackBuffer.Throw(Byte[] bytesUnknown, Int32 index)
   bei System.Text.DecoderExceptionFallbackBuffer.Fallback(Byte[] bytesUnknown, Int32 index)
   bei IronPython.Runtime.PythonAsciiEncoding.GetCharCount(Byte[] bytes, Int32 index, Int32 count)
   bei System.Text.Encoding.GetChars(Byte[] bytes, Int32 index, Int32 count)
   bei System.Text.Encoding.GetString(Byte[] bytes, Int32 index, Int32 count)
   bei IronPython.Runtime.Operations.StringOps.DoDecode(CodeContext context, String s, String errors, String encoding, Encoding e)
   bei IronPython.Runtime.Operations.StringOps.RawDecode(CodeContext context, String s, Object encodingType, String errors)
   bei IronPython.Runtime.Operations.StringOps.__new__(CodeContext context, PythonType cls, Object string, String encoding, String errors)
   bei IronPython.Runtime.Operations.StringOps.CheckAsciiString(CodeContext context, String s)
   bei IronPython.Runtime.Operations.StringOps.__new__(CodeContext context, PythonType cls, String object)
   bei Microsoft.Scripting.Interpreter.FuncCallInstruction`4.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.LightLambda.Run4[T0,T1,T2,T3,TRet](T0 arg0, T1 arg1, T2 arg2, T3 arg3)
   bei System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
   bei Microsoft.Scripting.Interpreter.DynamicInstruction`4.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
   bei Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
   bei IronPython.Compiler.PythonCallTargets.OriginalCallTarget1(PythonFunction function, Object arg0)
   bei System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0, T1 arg1)
   bei _Scripting_(Object[] , osdInfo )
   bei PluginInterface.doOsdEvent.Invoke(osdInfo oInfo)
   bei VoxCommando.PluginServices.fireOsdEvent(osdInfo oInfo)
   bei eval_f.eval_ᜀ(Object A_0, SpeechRecognizedEventArgs A_1)

I use Windows 10 Prof 64bit

All other things works fine

Thank you in advanced

Chris




36
Here it comes:


After I get the time to count, I call a vbscript that returns the time to count in seconds, so I can use [attachment=1][attachment=1]the VC.SetEventTimer (is there any way to calculate simple arithmatics with VC itself?).

Is the timer up, i fired a eventghost event, because currently I'm using windows 7 and it don't have a german TTS. To play a little with the new Windows 8 Metro GUI I run it in a VM with a 22" Touchscreen (really cool Metro app for XBMC look here: http://apps.microsoft.com/windows/en-us/app/fb9b17a9-0613-4fa6-b7a0-ee233c1a0e71 )

Windows 8 includes a german TTS named Hedda. So I can route TTS output via EventGhost with payload to my Windows 8 german TTS.

Feel free to fire your own events, may be you try to shut the whole internet, after your egg is cooked  well.

chris


37
Hey claymic, hey jitterjames,

very nice code of both from you. Really Thanks.
I understand much more how voxcommand rocks (works), and what is possible with XBMC JSON <--> VoxCommando.
I also play a little bit around with this stuff.

Last night I create a few timer with Voxcommando, so I can "set" my eggtimer on Sunday via Voicecommando like "Set timer 5 minutes an 30 seconds" or "Set timer to 4 minutes" Its really cool to do this that way.

If your are interrested on these scripts, let me know it.

voxcommando-infected

chris

38
I want to read the current Index.

For future projects it would be nice to read all result items.
So I can specify commands like "switch to english" or "switch to france", if the specified language available.

Thanks Chris

39
Tips and Tricks / Re: Home Automation using Voxcommando
« on: January 09, 2013, 07:44:24 AM »
I want to introduce you some nice gadget I've found.

I use following

http://gmb.nl/item.aspx?id=3234

which is no longer available and replaced by

http://www.energenie.com/item.aspx?id=6668

The junction box is controllable via CLI.
It is allso possible to request the state (ON or Off) from every plug.

The next gagdet, I will try is

http://www.funkschalter-intertechno.de/Intertechno-ITGW-433-LAN-Gateway/Intertechno-ITGW-433-LAN-Gateway::65.html

It connects to 433MHz remoteplugs.

kind regards

chris

My Commands are attached.




40
Quote
http://voxcommando.com/mediawiki/index.php?title=Actions#StopMacro

Thx. I still need more time to discover the "whole universe" that can my voice control......  ;)

I have found another possible solution. With the

Code: [Select]
{"jsonrpc":"2.0","method":"Player.GetProperties","params":{"playerid":1,"properties":["currentaudiostream"]},"id":1}
I get

Code: [Select]
{"id":1,"jsonrpc":"2.0","result":{"currentaudiostream":{"bitrate":115575,"channels":2,"codec":"mp3","index":1,"language":"","name":"Stereo"}}}
I try this with a telnetsession

Now, I want to use this in VC with the XJson.Raw and the XJson.ParseTokens.

I use it this way

Quote
<action>
                <cmdType>XJson.Raw</cmdType>
                <cmdString>Player.GetProperties&amp;&amp;"playerid":1,"properties":["currentaudiostream"]</cmdString>
                <cmdRepeat>1</cmdRepeat>
            </action>
            <action>
                <cmdType>XJson.ParseTokens</cmdType>
                <cmdString>{item.currentaudiostream[]}</cmdString>
                <cmdRepeat>1</cmdRepeat>
            </action>
            <action>
                <cmdType>OSD.ShowText</cmdType>
                <cmdString>{item.currentaudiostream}&amp;&amp;5000</cmdString>
                <cmdRepeat>1</cmdRepeat>
            </action>

And this is from the vox.Log.txt

Quote
Action:  XJson.Raw - Player.GetProperties&&"playerid":1,"properties":["currentaudiostream"]
09.01.2013 10:48:17   343   action repeat set to: 1

this is from jsonlog.txt

Quote
456   Error while calling JSON RPC:{"jsonrpc": "2.0", "method": "Player.GetProperties", "params":{"playerid":1,"properties":["currentaudiostream"]},"id": "0"}
System.Net.WebException: Der Server hat eine Protokollverletzung ausgeführt.. Section=ResponseStatusLine
   bei System.Net.HttpWebRequest.GetResponse()
   bei vcPlugin.xjComm.PostRequest(String strRequest)

Attached is a screenshot from voxcommando with errormessage

I hope it is not bug in the proggi but rather to me  ;)

chris


41
Really cool your program.
Easy to learn I think.

One question:

Is there a way to set two IF conditions?

One condition is the playstate of XBMC (paused or not) -> this state I set to a variable 'pause' [on|off]
Second condition is wich language is set, and is it nessesary to switch the audiostream.

Code: [Select]
IF "pause" == off AND IF "lang" == eng
THEN {
           XJson.Raw Player.SetAudioStream "playerid":1,"stream":"next"
         {
ELSE {
          Do nothing
         }


Here is an example, how could it works....


42
Quote
Fast learner! Shocked  I can see you are going to be trouble Wink

Thanks for that.

Often if I at home it runs a TVshow in the background, Episode for Episode (so it is a little trouble at home  ;) )
Most of tvshows i've had, are with two audiotracks in an avicontainer. First track is mostly german, second track is the origin mostly english.
To advanced my english skills, I run the tvshows sometimes only in english episode for episode.

Now the Problem:

After every episode change all mediaplayers that I tried, incl. XBMC switch to the first audiotrack of an avi, in my case mostly german.
Now I must change the audiotrack manually each time.
With voxcommando it is possible to trigger the episode is changed. Than voxcommando send a JSon statement to change the audiotrack.
So I can choose to hear/watch the episodes all in english (if the trigger is on) or in german without the trigger, e.g. shutdown voxcommander.

Next step should be, that voxcommander 'knows' which language i want to hear, and switch the audiotrack after each change automaticly or not.
This to option should be switch via voice commando, and so I looking at the moment to set variables in voxcommand.


I hope I can clear your mind. Sorry for my english, but I trained every day.... ;)

kind regards

chris
 

43
Quote
I will also need people to help me test these crazy new ideas / workarounds.

Long time i'v been looking for a solution to view my tvshows sometimes in german sometimes in english for while.
All tvshows has as first audiotrack the german language and english as the second. All players incl. XBMC plays after mediachange the first track, so I have to set it to second track manually every time.  >:(
Now i found a solution with  :clap VOXCOMMANDO !!!

<?xml version="1.0" encoding="utf-16"?>
<command id="465" name="AudioStreamChange" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
  <action>
    <cmdType>XJson.Raw</cmdType>
    <cmdString>Player.SetAudioStream&amp;&amp;"playerid":1,"stream":"next"</cmdString>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <event>Player.OnPlay</event>
</command>

This runs in the backround. Next step is to set up XBMC to play german or english via voicecommando until it is change via voicecommando

kind regards

chris

44
Hi outhere,

I will short introduce myself (sorry for my english, I'm a german native)

I'm from Berlin in Germany, 37 years old and "play around" with computer, multimedia, and voicecontrol!!! since around 1995.
At this time the computer can't play videos  ;) and also he don't hear me (IBM ViaVoice, what a ****).

Now serevals years later I use XBMC to consume HighDefinition Videos over GBLan, controlled from a remotedevice in my pocket (greetings from Android).
One step closer to  the "Star Trek Bridge"

And a few days ago, I discovred VoxCommando!!!

I try outit  with an wireless Headset from Asus and a Windows7 OS....it works perfect!!!

Very nice job James


I will be looking for people to help me figure out specific problems.  I can manage by myself but if I get help it will go faster.

I will also need people to help me test these crazy new ideas / workarounds.  Testing means installing the lastest version of XBMC which will no longer support the old methods, so you will need to have a spare system set up if you want to continue to use the old configurations of VC with XBMC :(

I play around with the XJson plugin.
So, I will help to improve this features, because I think it is a really nice one.

I stay tuned.........

Chris



Pages: 1 2 [3]