INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2]   Go Down

Author Topic: RS232 with JRiver Media Center  (Read 20018 times)

ivb

  • Junior Woodchuck
  • **
  • Posts: 66
Re: RS232 with JRiver Media Center
« Reply #50 on: December 10, 2013, 02:15:52 pm »

Steps:

1. Write a tiny batch file, PowerShell script, or VBScript that makes the HTTP call.
2. Call this from Theater View via the external command functionality.

In the thread, I posted an example of a WSF script (vbscript) that calls a HTTP command.  It happens that it was calling it to access MCWS on a remote machine, but you could use it as an example to call ANY HTTP URL.

Am I missing something?

Yes, that i'm either an idiot or that I lack sleep. I didn't make the mental baby step from "call MCWS" to "call any http url".

Ok then, thats one more item on the cutover checklist down. Still need those other items, but progress is progress.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: RS232 with JRiver Media Center
« Reply #51 on: December 10, 2013, 02:36:56 pm »

Hahaha.  No worries.  It just happens that I actually slept last night, where I usually don't.  I was pretty emotionally drained yesterday though.  I thought I was missing something.

Launching external games via Theater View can certainly be done if you're clever.

One method is to use a set of tiny scripts, each of which launches a different game.  If you need to call room control stuff first, just wrap that in a separate script, and call this "game mode room control" script on the first line of your game launching scripts.

Then, import the scripts.  You might need to hack the MC FileAssociations.xml file to get them to import into MC, but this isn't a nightmare (at all).  If you don't need the room control stuff, then you can often just import the games themselves, though I prefer to call scripts as it is more flexible.  Importing emulator ROMs directly works fine though.

Once you import them, you can add Thumbnails, make views that browse them through Genres or sub-types, or whatever you want.  And then "enter" on them in Theater View to launch the game.

Back when I had my emulators all set up on my HTPC (I think MC16-era) I had something like this set up (not as fancy as my first link, but along those lines).  But I haven't launched very many games in 2 1/2 years since my daughter was born.   :-\
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

flac.rules

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1268
Re: RS232 with JRiver Media Center
« Reply #52 on: December 10, 2013, 02:48:13 pm »

Hahaha.  No worries.  It just happens that I actually slept last night, where I usually don't.  I was pretty emotionally drained yesterday though.  I thought I was missing something.

Launching external games via Theater View can certainly be done if you're clever.

One method is to use a set of tiny scripts, each of which launches a different game.  If you need to call room control stuff first, just wrap that in a separate script, and call this "game mode room control" script on the first line of your game launching scripts.

Then, import the scripts.  You might need to hack the MC FileAssociations.xml file to get them to import into MC, but this isn't a nightmare (at all).  If you don't need the room control stuff, then you can often just import the games themselves, though I prefer to call scripts as it is more flexible.  Importing emulator ROMs directly works fine though.

Once you import them, you can add Thumbnails, make views that browse them through Genres or sub-types, or whatever you want.  And then "enter" on them in Theater View to launch the game.

Back when I had my emulators all set up on my HTPC (I think MC16-era) I had something like this set up (not as fancy as my first link, but along those lines).  But I haven't launched very many games in 2 1/2 years since my daughter was born.   :-\

This is nice info, but I would rather have a bit less "clever" and a bit more "inbuilt", it is starting to be quite a lot when you make a custom thing in MC, that calls a script, that again sends a Request, that changes a something in yet another program and also launches another program with a command line. (and where is the IR-command from MC in all this(+). It would be nice if MC at least handled some of this so you don't have to go through so many programs and loops. You can do a lot be involving scripts and programs like girder in the loop, but it would be more accessible and easy to setup if this was more inbuilt in MC, at least the basic stuff like sending software commands and similar as well as being able to easily make MC do a little group of different things as response to one input.

EDIT: sorry about your dog glynor :(
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: RS232 with JRiver Media Center
« Reply #53 on: December 10, 2013, 03:27:23 pm »

This is nice info, but I would rather have a bit less "clever" and a bit more "inbuilt", it is starting to be quite a lot when you make a custom thing in MC, that calls a script, that again sends a Request, that changes a something in yet another program and also launches another program with a command line.

It depends on how you look at it.  On the one hand, I agree with you.  There are certainly places where MC could be easier to use.  But accomplishing that, as often as not, involves removing functionality, not adding it.  It might be "easier to set up" for a few users, but for everyone else (who isn't going to have or use any room control systems at all, which is probably 90%+ of JRiver's customers) it is just additional UI "noise" which reduces ease-of-use.

And then, there's this:

being able to easily make MC do a little group of different things as response to one input.

That's called a script.  That is exactly what a scripting language (or shell script, like a BAT file) does.  So, if JRiver implemented this kind of thing, they'd be reinventing the wheel.  You'd have to learn some esoteric MC-only scripting "language" (or a GUI that "hides" the script underneath, which is almost worse) to accomplish what you want.  As it is now, you can choose anything you already know:  Perl, python, PowerShell, VBScript, or just shell scripting with a BAT file.

About the only reasonable way I can see that they'd accomplish this in a flexible manner would be for them to implement a Lua interpreter.  That's a huge ball of wax, and... I don't know.

I want my blender to be a blender, not a blender and a microwave.  Because if it tries to do both, it is probably going to be bad at both jobs.  Of course, I also refuse to use toaster ovens too (for why, see also Siracusa), so maybe I'm too far on one side of this coin.

None of this is to say that MC couldn't be improved in some of these areas, around the edges.

One thing you can't (easily) do is launch a script in response to another user action in MC, while simultaneously doing the action in MC.  So, for example, say you want to run a script that puts your home theater into Movie Watching Mode each time you launch a movie.  This "Movie Watching Mode" would entail things like:

1. Dimming the lights
2. Adjusting the blinds
3. Switching the display to THX mode

But, when you launch a TV Show episode, you want to keep the display in non-THX mode and not dim the lights or close the blinds (maybe unless it is Homeland, which you want treated as a Movie).  That's pretty tough to accomplish currently.

There are a few strategies you can use currently, but by-far the simplest is to give up on "automatic".  If you do this, you can add a "folder view" called "Room Control" to the top-level of Theater View, and under it you can have entries for "Normal", "Music Mode", "Movie Mode", "TV Mode", etc (each of which is a script that calls out to your room control system).  But you can't have it automatically switch when you play a [Media Sub Type] = Movie, and have it switch to something else when you play [Media Sub Type] = TV Show.

A third-party plugin could do most of this, because it could detect Playstate changes and automatically issue the commands depending on what was added to (or removed from) Playing Now.  That would be handy and is perfectly possible using the COM tools we have now.  You can detect playstate changes via COM, and then investigate what file is playing and whatnot.  That would certainly allow you to design a "if file matching this search is played, then X, when playback stops then Y" type of system.  I'd use it if someone builds it, but I'm too lazy to write it myself.

But I don't know if it belongs in the core product.  This seems like it should be a plugin.  If you aren't too lazy to write it, I bet you could sell it.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

flac.rules

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1268
Re: RS232 with JRiver Media Center
« Reply #54 on: December 10, 2013, 03:51:57 pm »

It depends on how you look at it.  On the one hand, I agree with you.  There are certainly places where MC could be easier to use.  But accomplishing that, as often as not, involves removing functionality, not adding it.  It might be "easier to set up" for a few users, but for everyone else (who isn't going to have or use any room control systems at all, which is probably 90%+ of JRiver's customers) it is just additional UI "noise" which reduces ease-of-use.

And then, there's this:

That's called a script.  That is exactly what a scripting language (or shell script, like a BAT file) does.  So, if JRiver implemented this kind of thing, they'd be reinventing the wheel.  You'd have to learn some esoteric MC-only scripting "language" (or a GUI that "hides" the script underneath, which is almost worse) to accomplish what you want.  As it is now, you can choose anything you already know:  Perl, python, PowerShell, VBScript, or just shell scripting with a BAT file.

About the only reasonable way I can see that they'd accomplish this in a flexible manner would be for them to implement a Lua interpreter.  That's a huge ball of wax, and... I don't know.

I want my blender to be a blender, not a blender and a microwave.  Because if it tries to do both, it is probably going to be bad at both jobs.  Of course, I also refuse to use toaster ovens too (for why, see also Siracusa), so maybe I'm too far on one side of this coin.

None of this is to say that MC couldn't be improved in some of these areas, around the edges.

One thing you can't (easily) do is launch a script in response to another user action in MC, while simultaneously doing the action in MC.  So, for example, say you want to run a script that puts your home theater into Movie Watching Mode each time you launch a movie.  This "Movie Watching Mode" would entail things like:

1. Dimming the lights
2. Adjusting the blinds
3. Switching the display to THX mode

But, when you launch a TV Show episode, you want to keep the display in non-THX mode and not dim the lights or close the blinds (maybe unless it is Homeland, which you want treated as a Movie).  That's pretty tough to accomplish currently.

There are a few strategies you can use currently, but by-far the simplest is to give up on "automatic".  If you do this, you can add a "folder view" called "Room Control" to the top-level of Theater View, and under it you can have entries for "Normal", "Music Mode", "Movie Mode", "TV Mode", etc (each of which is a script that calls out to your room control system).  But you can't have it automatically switch when you play a [Media Sub Type] = Movie, and have it switch to something else when you play [Media Sub Type] = TV Show.

A third-party plugin could do most of this, because it could detect Playstate changes and automatically issue the commands depending on what was added to (or removed from) Playing Now.  That would be handy and is perfectly possible using the COM tools we have now.  You can detect playstate changes via COM, and then investigate what file is playing and whatnot.  That would certainly allow you to design a "if file matching this search is played, then X, when playback stops then Y" type of system.  I'd use it if someone builds it, but I'm too lazy to write it myself.

But I don't know if it belongs in the core product.  This seems like it should be a plugin.  If you aren't too lazy to write it, I bet you could sell it.

Yet again, this isn't something that is useful solely for home control, and i can't really see there will be any amount of "UI-noise", as these functions will in no way be exposed before you actively seek them out.

You can do most things with a script, or even write your own program, you could make a program or plugin that downloaded madVR and LAV and set it up, you could make a script which changed the monitor refresh, but at some point the amount of work is reaching huge levels, and we are really talking about reinventing the whell, but now for every single user.

MC is a program for doing many things in as I see iot, it already covers a lot of different uses.
Logged

glynor

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 19608
Re: RS232 with JRiver Media Center
« Reply #55 on: December 10, 2013, 04:03:28 pm »

Yet again, this isn't something that is useful solely for home control, and i can't really see there will be any amount of "UI-noise", as these functions will in no way be exposed before you actively seek them out.

The Options widget counts.  Things like that scare people.  That's why VLC has the "simple mode" (which is, itself, terrible) and Firefox hides most of its options completely.  ;)

As I said, there are two sides to it, and there are things I'd like to see improved here as well.  But, I have to agree with what Jim and others said earlier: Room Control is so niche that it wouldn't generate very many new sales.  That's why I was thinking a plugin might be the most reasonable solution.
Logged
"Some cultures are defined by their relationship to cheese."

Visit me on the Interweb Thingie: http://glynor.com/

flac.rules

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1268
Re: RS232 with JRiver Media Center
« Reply #56 on: December 10, 2013, 04:35:57 pm »

The Options widget counts.  Things like that scare people.  That's why VLC has the "simple mode" (which is, itself, terrible) and Firefox hides most of its options completely.  ;)

As I said, there are two sides to it, and there are things I'd like to see improved here as well.  But, I have to agree with what Jim and others said earlier: Room Control is so niche that it wouldn't generate very many new sales.  That's why I was thinking a plugin might be the most reasonable solution.

What options? Frankly I can hardly se a single option that needs to be set in connection with this? I guess you can add the option for "run commands" or something in the file type options, but thats already deep into some pretty custom options.

I have said it many times now, but I can repeat yet again, this kind of control is useful for a lot more than home control.
Logged

Ekpen

  • Citizen of the Universe
  • *****
  • Posts: 686
Re: RS232 with JRiver Media Center
« Reply #57 on: December 10, 2013, 08:20:17 pm »

Ekpen, I understand your sentiments. I feel the same way about my Onkyo 11.4 flagship receivers.

Bragging rights on high end flagship.
Enjoy it <grin>
Thanks
Ekpen.
Logged
Pages: 1 [2]   Go Up