[RELEASE] XBMCFlix-o-mate

  Thread Rating:
  • 5 Votes - 4.2 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #16
(2012-04-22 00:47)ultradodger Wrote:  I am no programmer, unfortunately. Seems to be an issue with the script, although I dont know why it's only effecting me. Everything is currently installed to default directories, including AutoIT - C:\Program Files (x86)\AutoIt3

Thanks so much for the help!

It's because you have put the scripts directly in the root of your C: drive like this:

c:\XBMCFlix-o-mate.sikuli
c:\XBMCFlix-o-mate
c:\XBMCFlix-o-mate-32d

I will have to look at the code to see why it is adding an extra slash in this case (and not finding the script).
However, I would highly recommend NOT putting files in the root of your C: drive....that is what directories are for!
Why would you want it on the very root of your drive? At the very least, put it in c:\XBMCFlix-o-mate\!

Nonetheless, I should support it this way...at the very least to prevent errors on silly file placement like this...in the meantime, move it to a subdirectory!

UPDATE: I have already fixed the code on my end...but it appears that even with my fixes, Sikuli may have an issue with running something from the root folder. I am awaiting a response from their Dev team to see if I can work around it. In the meantime - don't try to run from the ROOT of your drive!

.peace out.
(This post was last modified: 2012-04-22 01:42 by bengalih.)
find quote
ultradodger Offline
Junior Member
Posts: 21
Joined: Jan 2011
Reputation: 0
Post: #17
Got it, moved everything to C:\XBMCFlix-O-Mate\

Now with a new error...

https://lh4.googleusercontent.com/-cyE4W.../error.jpg

[Image: error.jpg]

So sorry! I feel like such a pain for these issues. Thanks again for your help, i'd really love to use this!
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #18
(2012-04-22 05:40)ultradodger Wrote:  Got it, moved everything to C:\XBMCFlix-O-Mate\

Now with a new error...

https://lh4.googleusercontent.com/-cyE4W.../error.jpg

[Image: error.jpg]

So sorry! I feel like such a pain for these issues. Thanks again for your help, i'd really love to use this!

Ok...well that's an easy one...it just isn't finding Java.... Since you confirmed the location of the Java binaries, Java simply isn't in your path.
I tested this with a fresh machine with a new Java install, and Java is normally automatically placed in your path. You can check this by going to a command prompt and typing "echo %path%" you should get somethings like this:

Quote:C:\Users\username>echo %path%
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Wi
ndows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;c:\Pr​
ogram Files\WIDCOMM\Bluetooth Software\;c:\Program Files\WIDCOMM\Bluetooth Softw
are\syswow64;;C:\Program Files\Broadcom\Broadcom 802.11\Driver;C:\Program Files
(x86)\Sikuli X\libs;C:\Program Files (x86)\Java\jre6\bin

You can see in my path that Sikuli is there (manually added by me I believe), but Java is also added at the end. Since you don't have that it can't find Java.

I could have hardcoded the path...but the problem is it may be different on every installation. I did however provide a method for you to set this automatically. So you have two choices:

1) Add have directory to your path (System > Advanced > Environmental Variables ...or just google it)
2) Add the path into the AutoIt script in the $JavaDir variable up top.

A full reinstall of Java may also fix the issue for you as the default behavior is to add it to the path.

There is probably a way for me to query the registry to determine the proper location on a system...so I will look into this. In the meantime, just do one of the above for now.

And don't worry about asking these questions, I'm happy to get feedback and fix issues that may plague others as well. I'd like for the end user to do as little setup as possible.

UPDATE: Oh, I might add that you might not have this problem if you use the actual (non-debug version). The debug version runs java via a different method which will be path dependent as I stated....the normal version runs javaw (no console) using a shell execute method that may enable it to find java on your system. So you can also just try to run the original copy again and if it works, then you don't need to do any of the above.

.peace out.
(This post was last modified: 2012-04-22 18:29 by bengalih.)
find quote
ultradodger Offline
Junior Member
Posts: 21
Joined: Jan 2011
Reputation: 0
Post: #19
Thanks! That got rid of the that issue, seems it is now able to intilize Java. Now I have a new error...

[Image: error.jpg]

EDIT: A quick reinstall of Java got everything working! Who knows what happened, but its beautiful! Thanks SO MUCH!
(This post was last modified: 2012-04-23 03:22 by ultradodger.)
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #20
(2012-04-23 02:45)ultradodger Wrote:  Thanks! That got rid of the that issue, seems it is now able to intilize Java. Now I have a new error...

[Image: error.jpg]

EDIT: A quick reinstall of Java got everything working! Who knows what happened, but its beautiful! Thanks SO MUCH!


Ha yeah...before I got to your last comment I was about to say your Java looks all fouled up! Glad the reinstall got it going. Please post back after some play time with it and let me know how its working for you.

.peace out.
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #21
New version 1.3 released.

See Changelog on first page.

If you were having any issues with the app, please download the latest version and test it out before reporting back.

Thanks!

.peace out.
find quote
XeroKool Offline
Junior Member
Posts: 40
Joined: Jan 2012
Reputation: 2
Post: #22
Hey, thanks a lot for the update. Haven't tested it out fully yet but I do have a question. Upon launching the AutoIt script I noticed that it immediately closed the Sikuli IDE window that I had previously opened (no worries though, I had already saved what I was working on). My question is, is it possible for the script to only kill instances of xbmc-o-mate and not all Sikuli processes? Again, this issue only occurs upon initial launch, after which everything is fine.
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #23
(2012-04-24 05:09)XeroKool Wrote:  Hey, thanks a lot for the update. Haven't tested it out fully yet but I do have a question. Upon launching the AutoIt script I noticed that it immediately closed the Sikuli IDE window that I had previously opened (no worries though, I had already saved what I was working on). My question is, is it possible for the script to only kill instances of xbmc-o-mate and not all Sikuli processes? Again, this issue only occurs upon initial launch, after which everything is fine.

Hmmm yea...I guess I didn't figure anyone would be using the IDE or for that matter running another Sikuli application.. That was poor foresight on my part as you may well indeed write another Sikuli app for control.

I will update this in the next version, but for expediency sake you can edit line 162 in the Auto Script (and then recompile if you like)

Code:
If StringInStr($objItem.caption, "java", 0) AND StringInStr($objItem.commandline, "sikuli", 0)Then

Change it to:

Code:
If StringInStr($objItem.caption, "java", 0) AND StringInStr($objItem.commandline, "xbmcflix-o-mate.sikuli", 0)Then

That should keep your IDE or any other sikuli java processes open when starting XBMCFlix-o-mate.

thanks

.peace out.
(This post was last modified: 2012-04-24 21:13 by bengalih.)
find quote
XeroKool Offline
Junior Member
Posts: 40
Joined: Jan 2012
Reputation: 2
Post: #24
Cool. Appreciate the help.
find quote
kevev Offline
Junior Member
Posts: 27
Joined: Apr 2012
Reputation: 0
Post: #25
Thank You for the awesome wrapper Bengalih. Would it be possible to control the system volume in your wrapper?

The Android remote(and any http remote) cannot control the System volume.

You can read the XBMC/System volume with:

http://192.168.1.230:8080/xbmcCmds/xbmcH...=GetVolume

The function can go like this:

1.) The wrapper can check and save the current System volume before launching IE.

2.) Have the wrapper check that setting every 2 seconds(if it does not cause too much load).

3.) Then have the wrapper set the System volume to the same level.

3.) When the escape command is given the System volume should be returned to the original value before bringing XBMC to focus and exiting the wrapper.

If you using a local XBMC API it would be less resource intensive than using the HTTP API.

Do you think it is possible?
find quote
ultradodger Offline
Junior Member
Posts: 21
Joined: Jan 2011
Reputation: 0
Post: #26
Yo, Beng!

Just wanted to let you know this has been working great. Adds a critical function to XBMCFlix and makes it much more usable. I am currently using Xpadder in order to use my 360 controller and its working perfectly. The only thing I was wondering was would it be possible to have O-mate open and close with the Netflix application? I was attempting to do this through some batch scripting, but I don't know my way around the system quite well enough. The reason being is because having o-mate run in the background causes some slight control conflicts with my Xpadder setup. Not a big deal, but a little tweak I was wondering if it possible. Thanks again!
(This post was last modified: 2012-04-25 04:05 by ultradodger.)
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #27
(2012-04-25 03:11)kevev Wrote:  Thank You for the awesome wrapper Bengalih. Would it be possible to control the system volume in your wrapper?

The Android remote(and any http remote) cannot control the System volume.

You can read the XBMC/System volume with:

http://192.168.1.230:8080/xbmcCmds/xbmcH...=GetVolume

The function can go like this:

1.) The wrapper can check and save the current System volume before launching IE.

2.) Have the wrapper check that setting every 2 seconds(if it does not cause too much load).

3.) Then have the wrapper set the System volume to the same level.

3.) When the escape command is given the System volume should be returned to the original value before bringing XBMC to focus and exiting the wrapper.

If you using a local XBMC API it would be less resource intensive than using the HTTP API.

Do you think it is possible?

kevev,

Thanks for the feedback. Unfortunately I don't think this is something that I plan to integrate into XBMCFlix-o-mate for several reasons:

1) I am pretty sure that you can already control system volume with a remote using either XBMC with an MCE remote directly and/or using EventGhost (or chances are whatever remote software you use to map keystrokes).

2) This plugin (if you read the documentation) is not a typical add-on and does not integrate with any XBMC API - using the HTTP API would be dependent on the web server running.

3) The URL for volume you gave is not for system volume, but for XBMC volume. That can already be controlled with the "+" and "-" keys.

4) There are probably at least a dozen other ways you can control system volume with a remote (personally I can't say, because I simply use my AVR to control sound) - but XBMCFlix-o-mate doesn't really sound like the place to be doing this.

Perhaps I am misunderstanding your suggestions, or you are misunderstanding how to set up volume control via a remote... in either case, I'm open to convincing...but at this point I'm not thinking it is a feature to add...

UPDATE: I read your function again and I see better what you are saying...simply to have the system volume match XBMC volume...
Hmm..well it might be doable, but I still think this isn't the application to handle it. If I were to think about it, I would probably implement it as a hotkey you press to sync volumes, and not something that consistently checked. I still think there are better ways to adjust the volume.

If anything I would consider implementing control of the volume slider in Netflix, but not system volume...

.peace out.
(This post was last modified: 2012-04-25 04:41 by bengalih.)
find quote
bengalih Offline
Senior Member
Posts: 117
Joined: Oct 2004
Reputation: 1
Post: #28
(2012-04-25 03:37)ultradodger Wrote:  Yo, Beng!

Just wanted to let you know this has been working great. Adds a critical function to XBMCFlix and makes it much more usable. I am currently using Xpadder in order to use my 360 controller and its working perfectly. The only thing I was wondering was would it be possible to have O-mate open and close with the Netflix application? I was attempting to do this through some batch scripting, but I don't know my way around the system quite well enough. The reason being is because having o-mate run in the background causes some slight control conflicts with my Xpadder setup. Not a big deal, but a little tweak I was wondering if it possible. Thanks again!

Hey dodger - thanks for the feedback.

Since XBMCFlix-o-mate is not actually a plugin to XBMC, but rather a stand alone application, there is no sure-fire way to have the kick-off of XBMCFlix/Netflix startup XBMCFlix-o-mate.

I don't know what conflicts you could be having, other than the same hotkeys are mapped?

There are a couple of suggestions I can make:

1) You can change the hotkeys that XBMCFlix-o-mate uses. You will have to edit the user defined sections in the Sikuli script and also the AutoIt script. It is relatively simple to figure out if you open them with a text editor. Take a look and if you need help I will post some guidance.

2) You can use the XBMC launcher add-on to create a shortcut for launching XBMCFlix-o-mate. You can then launch it before you open XBMCFlicks, and then close it with whatever you tag to the CTRL+ALT+SHIFT+X combination.

Let me know if either of those would work for you...otherwise give me some more info about your conflicts and setup...I'm only familiar with Xpadder by name...and have never used it myself.

.peace out.
find quote
Claire193 Offline
Junior Member
Posts: 5
Joined: Apr 2012
Reputation: 0
Post: #29
Thanks...I'm going to test now with a space and hopefully implement a fix...I have already incorporated the architecture check.

Please post back once you have used it a bit and let me know how it has been working for you.
[Image: meimiao1.jpg][Image: jh88.jpg][Image: test.jpg][Image: dh.jpg][Image: pad.jpg]
(This post was last modified: 2012-04-25 05:06 by Claire193.)
find quote
kevev Offline
Junior Member
Posts: 27
Joined: Apr 2012
Reputation: 0
Post: #30
(2012-04-25 04:37)bengalih Wrote:  
(2012-04-25 03:11)kevev Wrote:  Thank You for the awesome wrapper Bengalih. Would it be possible to control the system volume in your wrapper?

The Android remote(and any http remote) cannot control the System volume.

You can read the XBMC/System volume with:

http://192.168.1.230:8080/xbmcCmds/xbmcH...=GetVolume

The function can go like this:

1.) The wrapper can check and save the current System volume before launching IE.

2.) Have the wrapper check that setting every 2 seconds(if it does not cause too much load).

3.) Then have the wrapper set the System volume to the same level.

3.) When the escape command is given the System volume should be returned to the original value before bringing XBMC to focus and exiting the wrapper.

If you using a local XBMC API it would be less resource intensive than using the HTTP API.

Do you think it is possible?

kevev,

Thanks for the feedback. Unfortunately I don't think this is something that I plan to integrate into XBMCFlix-o-mate for several reasons:

1) I am pretty sure that you can already control system volume with a remote using either XBMC with an MCE remote directly and/or using EventGhost (or chances are whatever remote software you use to map keystrokes).

2) This plugin (if you read the documentation) is not a typical add-on and does not integrate with any XBMC API - using the HTTP API would be dependent on the web server running.

3) The URL for volume you gave is not for system volume, but for XBMC volume. That can already be controlled with the "+" and "-" keys.

4) There are probably at least a dozen other ways you can control system volume with a remote (personally I can't say, because I simply use my AVR to control sound) - but XBMCFlix-o-mate doesn't really sound like the place to be doing this.

Perhaps I am misunderstanding your suggestions, or you are misunderstanding how to set up volume control via a remote... in either case, I'm open to convincing...but at this point I'm not thinking it is a feature to add...

UPDATE: I read your function again and I see better what you are saying...simply to have the system volume match XBMC volume...
Hmm..well it might be doable, but I still think this isn't the application to handle it. If I were to think about it, I would probably implement it as a hotkey you press to sync volumes, and not something that consistently checked. I still think there are better ways to adjust the volume.

If anything I would consider implementing control of the volume slider in Netflix, but not system volume...

Thank You for considering this Bengalih. Yes, adjusting the volume slider in the Netflix window would be the best solution. But if I use the Android XBMC remote, how would this be controlled? I could only think of it reading the XBMC volume before changing it, and match for Netflix slider. Then when killing Netflix window reset the XBMC volume to the original value. Can you think of an easier way to do this while using a remote app that utilizes the HTTP API?

Also:
Windows 7 SP1 32bit with IE 9.0.8112.16421
Java 6 Update 31
Sikuli X-1.0rc3 (r905)

The "Full Screen" button never seems to get selected automatically. Pressing "F" does not do full screen until the video is clicked and then "F" is pressed. It looks like the video does not have focus as expected.
(This post was last modified: 2012-04-25 05:13 by kevev.)
find quote
Post Reply