INTERACT FORUM

Please login or register.

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

Author Topic: New Control System for MC (for Girder, etc.)  (Read 17028 times)

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
New Control System for MC (for Girder, etc.)
« on: March 10, 2003, 03:51:18 pm »

The latest version of MC (9.0.125) adds a new system for controlling the program from external sources.

There's a list (soon to be released) of commands that cover basically everything that MC can do. (play, change modes, zone, etc, etc.)

What I'm wondering is, what's the best way to expose this?  

We can easily make the command line support these commands. (i.e. mjextman /MC_COMMAND: 200, 2)

It'd also be nice to let Girder (and other similar programs) send these messages with windows messages.

Can Girder do custom, registered windows messages?  If not, what can it send?  We need both "what message" and also a "parameter", so WM_COMMAND won't work.

What would people like to see here, and what's the slickest way to expose it?

Thanks for any help.

Listening to: 'I've Got To See You Again' from 'Come Away With Me' by 'Norah Jones' on Media Center 9.0 with Sennheiser HD600's ( life is good :) )
Logged
Matt Ashland, JRiver Media Center

K-Wood

  • Regular Member
  • Recent member
  • *
  • Posts: 5
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #1 on: March 10, 2003, 04:15:57 pm »

Matt:

I've posted a link to this thread in the Girder forums -- hopefully someone there will respond to your request.  I'm not experienced enough to respond intelligently myself . . . . I suspect the Girder SendMessage plugin may do the trick .....

But I applaud your efforts to make integration with external controls more seamless.  MC9 is my player of choice and one of the main reasons is its integration with Girder and NetRemote.

- Ken
Logged

RemyJ

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1249
Re: New Control System for MC (for Girder, etc.)
« Reply #2 on: March 10, 2003, 05:50:26 pm »

Why won't WM_COMMAND work?  Doesn't it (like every other message) take 2 parameters?  

There is an "Application Commands" function in Girder but I can't see any way to set the message id, only Wparam and Lparam.  Maybe it's for future use.

I think we need both mechanisms...

mjextman is very handy for control from programs that can't send messages.

On the other hand, having the ability to send a message from another windows app avoids the overhead of calling an executable.

Either way, the newer features need to be added and some others need a little adjusting.    Two that come to mind are Play and Pause.  There should be versions of those commands that are non-toggling.   Girder actually has a nice feature in that department.  For Mute, for instance, if the argument is -1, the action is Mute (even if the output was already muted), if 0, the action is toggle, and if 1,  it's always un-mute.  Play and Pause would benefit greatly from that behavior.

Other things that need to be exposed:
DSP functions on/off
Specific zone selection
All the functions that have key shortcuts should also have commands exposed (sending keystrokes as an automation mechanism is problematic because of the possible interaction with the real keyboard)

Still thinking, but in the mean time, can we get mjextman turned back on?  It's not working in 125.



Logged
Fedora 40 x86_64 Xfce

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #3 on: March 10, 2003, 06:04:47 pm »

Quote
Why won't WM_COMMAND work?  Doesn't it (like every other message) take 2 parameters?  


It's used generically by dialog buttons and other controls so there'd be collisions.  It's better to use a custom message or a WM_USER based message so there can't be collisions.

I saw that "Application Commands" thing in Girder, but couldn't figure it out.
Logged
Matt Ashland, JRiver Media Center

Eiffel

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 83
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #4 on: March 10, 2003, 06:13:05 pm »

I'd vote for a Windows commands, with WParam and LParam... in addition to Mjextman...

Here are a couple of suggestions:

-Try to provide as many discrete commands as possible (Like On and Off rather than an On/Off toggle).

-If possible send some information back to girder or other programs (such as: send volume level after receiving a command to adjust the volume, or some other confirmation of what happened, or indicate if we are in full screen with hairstyle after moving to full screen, etc.). DVDSpy is a plugin that intercepts some of what MC does, but it would be more reliable if MC could be designed to send some consistent messages. This should also make it easy for people who want to control an LCD/VFD display

Eiffel
Logged

PhatPhreddy

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 613
  • Cosmic Comic
Re: New Control System for MC (for Girder, etc.)
« Reply #5 on: March 10, 2003, 07:07:07 pm »

I also believe the windows messaging system to be superior to external control apps or keypresses (though the control app is better than none)... My basis for this has mainly been due to using apps and GML's created around this structure.. they simply seem more robust / reliable/ useful... Of course this could be secondary to the fact that the coder was considering external control from the start...

I would also say include a command for everything... I mean every darn variable and switch you can think of... things like jump to points in the tree or jump to playing now should be considered...

I have read (though not tested, I let my ZP testing get behind in the last couple of months) that recent ZP releases have a tool that creates a GML (its an XML format IIRC) of every ZP command and its WM_Command details... If so what a tool... All  you need to do is 'export' the command (like making a list of all the MJextman abailities) and then work in Girder to learn the IR codes for the one you want... You do this and I pledge to make you a Pronto CCF and RC5 codes to give you a pronto CCF and Girder GML pair combo that can be imported in minutes via even the most basic of novices...
Logged
Phreddy@PhatPhreddy.net ICQ# 168975535
HTPC Front ends  

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #6 on: March 10, 2003, 08:46:03 pm »

Cast my vote for Windows messaging as well--if not, I'll take what I can get from a command line app.

RonB (Girder Author) posted this as the Girder site:

Quote
Take a look at the sendmessage plugin, that should do what is required. ( Though it won't work with registered messages, they need to be static ).

The thread that's running there is at:

http://www.girder.nl/phpBB2/viewtopic.php?t=3351

Is it possible to contact Ron to make this process the most efficient and extensible possible?

Best,
Brad
Logged

michel

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 619
Re: New Control System for MC (for Girder, etc.)
« Reply #7 on: March 10, 2003, 10:27:56 pm »

Quote
We can easily make the command line support these commands. (i.e. mjextman /MC_COMMAND: 200, 2)

Please, keep also the command line support as it is a way that even non-programmer users can use easily.
Logged

Zoner

  • Regular Member
  • World Citizen
  • ***
  • Posts: 198
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #8 on: March 10, 2003, 10:30:18 pm »

As already said here, definitely add support for auto-creating GML from MC9 (eg via a command-line setting).  That is a killer feature of ZP, and means you don't have to constantly update some document about the interface - the program is self-documenting (from a Girder perspective).
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #9 on: March 11, 2003, 04:49:57 am »

Here's a preview of what we've got so far.

Keep in mind that this won't work until 9.0.126 -- which should be released tonight.

http://ftp://ftp.jriver.com/pub/downloads/music/tmp/MCCommands.h

Advice and suggestions welcome.

Thanks everyone!
Logged
Matt Ashland, JRiver Media Center

NoCodeUK

  • Citizen of the Universe
  • *****
  • Posts: 1820
Re: New Control System for MC (for Girder, etc.)
« Reply #10 on: March 11, 2003, 05:31:58 am »

This looks good Matt and very extensive...  Would it be possible to call these using VBScript or JScript from within an HTML page or an XML page??  I'm thinking as in through a Track Info page or from within Hairstyle... If we could that would add the Dynamic element to Hairstyle that people have been asking about and a dynamic element to trackinfo...

This would be way cool...

Adam
Logged
"It's called No Code because it's full of code. It's misinformation." - Eddie Vedder

PhatPhreddy

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 613
  • Cosmic Comic
Re: New Control System for MC (for Girder, etc.)
« Reply #11 on: March 11, 2003, 05:54:13 am »

In the view section I see no jump to HairStyle command... Is this covered by the fullscreen switches ??
Logged
Phreddy@PhatPhreddy.net ICQ# 168975535
HTPC Front ends  

Eiffel

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 83
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #12 on: March 11, 2003, 06:31:49 am »

Here are a few other thing's I'd like easy access to:

- Selecting JRSS5.1, 4.0, No surround processing, mono(?) etc.
- Upsampling frequency (unless you plan on moving to a 2x, 4x scheme to replace the 88.2 96 176.4 198 which is not ideal IMO)
- Equalizer, etc.

Thanks

Eiffel
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #13 on: March 11, 2003, 08:10:36 am »

Quote
Here's a preview of what we've got so far.

Keep in mind that this won't work until 9.0.126 -- which should be released tonight.

Advice and suggestions welcome.

Thanks everyone!

Oh, Matt--You Guys ROCK!

Here are some (well, many) thoughts:

1) I couldn't see any facility for direct track access--well Sequence number access.

2) How about navigation commands: Up/Down/Left/Right/ PgUp/PgDwn etc.

3) I also didn't see the existing "Jump to" command(s) in the tree to navigate to PN, Media Library, Web Media, etx.

4) When activating Party Mode, how will we get out of it. Can we pass a PIN number to deactivate Party Mode?

5) Does the shuffle command in the "Play" section take the place of the existing "Resuffle" command? [edit: oops, found it in the LIST commands]

6) Direct Ratings settings?

7) How about Locate file by Artist/Album/etc.? Very handy when listening to a smartlist and suddenly realizing you want to hear more by that Artist or from that Album. [edit: oops, found it in the LIST commands]

8) I see the LIST command to add to Playing Now, but can we retain the ability to set whether the track should be Next, At Beginning, To End, Replace, etc.?

9) How about Filter commands? Do Not filter, Play only (by view), Don't Play (by view)....

10) How about sorting? On any DB field would be great, but I'd take Artist, Album, Track Number, Sequence number.

11) Direct access to MegaMe, Hairstyle, Windowed Mode, Mini-Me (what PhatPhreddy said above).

12) I love the idea to show the DSP studio, Playback options, etc. Will there be a way to manipulate those dialog boxes? At the very least a way to access cross-fade style & time and to set which DSP effects are on....

13) Neat idea to expose the "Open..." command. Will it be possible to pass a filepath or URL to these commands?

14) I didn't see anything dealing with visualization or track information control. Plugin Forward/Back, Cycle All, None, Track Info, etc.

15) I'd also like to put in a plea to not lose the existing "Power" functionality or the "TREEPATH" functionality. It's nice to be able to "smart-toggle" MC with the Power command and direct access with the TREEPATH is great too--although if the form has to change, that's cool.

Whew, I think that's enough for now! (Note: I didn't focus on the image playback or TV/DVD systems at all because I'm not familiar with them, but we shouldn't forget them...)

Thank you very much!
Brad
Logged

RemyJ

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1249
Re: New Control System for MC (for Girder, etc.)
« Reply #14 on: March 11, 2003, 10:01:33 am »

Quote
Here's a preview of what we've got so far.

Keep in mind that this won't work until 9.0.126 -- which should be released tonight.

http://ftp://ftp.jriver.com/pub/downloads/music/tmp/MCCommands.h

Advice and suggestions welcome.

Thanks everyone!


Great!!!

How about a "seek to time index" that takes a millisecond argument and seeks to that absolute position in the track and a "seek relative" that takes a positive or negative millisecond argument and seeks relative to the current position.

A few questions as well...  

PLAY_PAUSE I'm guessing is the toggle.  

What does PLAY do if it's already playing?  I think now it restarts the current track which is what I like.

Is there a positive PAUSE?

What does SET_PAUSE do?

OK, I guess I could wait till tonight to test them but, you know...




Logged
Fedora 40 x86_64 Xfce

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #15 on: March 11, 2003, 12:53:47 pm »

This file has been updated:

http://ftp://ftp.jriver.com/pub/downloads/music/tmp/MCCommands.h

It adds direct mode setting (Hairstyle, MEGA-ME, etc.) as well as a few other commands.

9.0.126 is required.

Thanks for all the feedback everyone.

(anyone feel like making the Girder group for these things?)
Logged
Matt Ashland, JRiver Media Center

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #16 on: March 11, 2003, 01:05:40 pm »

I'm workin' as fast as I can!

Brad
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #17 on: March 11, 2003, 04:34:31 pm »

Okay,

Basic Girder group is done!

Because I can't attach things at this forum, check out:

http://www.avsforum.com/avs-vb/showthread.php?postid=1979141#post1979141

As people find the bugs and discover what all the new options do, please let me know--I basically built the files in a vacuum--there has been NO testing on my machine yet.

Best,
Brad
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #18 on: March 11, 2003, 04:52:10 pm »

Thanks Brad!

Are you using the SendMessage(...) Girder plugin or the command line?

It sounded like Girder should be able to work with the WM_USER based message.

It probably doesn't really matter though.  I haven't tested it, but I'd guess that mjextman.exe can probably handle like 20,000 or more commands a second -- so speed won't be an issue.

Anyway, thanks again!
Logged
Matt Ashland, JRiver Media Center

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #19 on: March 11, 2003, 05:32:12 pm »

Well.....

I did it both ways. I knew what I was doing the the command line (mjextman), so I suspect that will work ok.

I didn't really know what I was doing with the Windows Messaging, and re-reading your question leads me to think I did it wrong. I didn't use the Send Message plugin, but the built-in Message action in Girder. That built-in message is a WM_COMMAND message only, so what I've done probably won't work.

(See what happens from relying on a Mac user? And one who knows diddly squat about programming to boot!)

Regardless, I've now seen that the Message number to use is 2024, the WParam is the command number and the LParam is the final argument. I'll rework what I've done and repost.

Best,
Brad

[EDIT: Reworking is done. Please download v1.0.1 from the above link. Sorry for the trouble...]
Logged

akak718

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 63
Re: New Control System for MC (for Girder, etc.)
« Reply #20 on: March 11, 2003, 07:00:24 pm »

The above commands still don't work via windows messages. The mjextman versions seem to, or at least the few I tried. I've never done the windows message thing before,  but if I figure out whats wrong, I'll post it back here.

-Lou
Logged

RemyJ

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1249
Re: New Control System for MC (for Girder, etc.)
« Reply #21 on: March 11, 2003, 08:45:10 pm »

Yep, I can't get MC to respond to the commands sent via Girder/SendMessage either.   Not sure if it's MC or the Girder plug-in.  

Thanks Brad for the mjextman based commands though.  They did the trick.
Logged
Fedora 40 x86_64 Xfce

Mastiff

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1988
  • The Multi-Zone Tzar
Re: New Control System for MC (for Girder, etc.)
« Reply #22 on: March 11, 2003, 09:38:57 pm »

Beat me up if this has been covered, but I'd like a discrete command system so you don't have to change to a zone to control it. In clear text: Play -1 starts playback on zone one no matter which zone is in the current "Playing now", Stop -3 stops playback in zone three no matter.... and so on. Is this possible? It would make the whole process a lot cleaner since somebody can use the PC display and hairstyle for a specific zone (probably the room the computer is in) while the other zones are controlled without sending any feedback to the display.

Is this possible? In that case I'd also like the ability to open a file the same way (d:\dokumenter\123.m3u -1 opens playlist 123 from the playlist directory in zone 1). That would really be brilliant! I feel that MC is almost there when it comes to multi-zone control, and this would go the rest of the way!  8)
Logged
Tor with the Cinema Inferno & Multi-Zone Audio system

PhatPhreddy

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 613
  • Cosmic Comic
Re: New Control System for MC (for Girder, etc.)
« Reply #23 on: March 11, 2003, 10:16:36 pm »

Considering it, would specific HairStyle navigaition be a good idea ?

UP
DOWN
LEFT
RIGHT
SELECT
RETURN

Logged
Phreddy@PhatPhreddy.net ICQ# 168975535
HTPC Front ends  

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #24 on: March 12, 2003, 05:05:25 am »

Since it doesn't appear that we'll be getting Album Gain, how about adding in a way to turn Replay Gain on\off to this?
Logged

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #25 on: March 12, 2003, 05:19:07 am »

Also, a command to set ratings would be nice.

And I have to agree that it would be most helpful to add in as many discrete commands as possible.

For instance, a command to start MJ\MC. If it's not running, start it. If it is running, do nothing.

Same for closing MC.

Also, discrete commands to jump directly to Hairstyle, regardless of where MC is now. Using toggles for this stuff just causes a lot of problems when it comes to automation. That's not to say that toggles aren't useful as well. The best way to go is to have toggles and discrete commands where appropriate.

Other things that I can think would benefit from discrete commands.

Replay Gain On & Off
Equalizer On & Off
Effects On & Off
(even go deeper into these 3 to allow control of individual settings)

TV
Fullscreen
Hairstyle
mini-me (actually I just saw that you have those last 3 already with the Set Mode command)

Adding a Zone parameter to any command where it's appropriate would be an obvious addition. Remotes that support macros can always set the zone, then issue the command, but for remotes that don't, allowing the passing of a zone parameter will make things really slick.

Also, if mjextman could be set up to accept a \\SERVER parameter to send these commands through a network, that would be really sweet.
Logged

PhatPhreddy

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 613
  • Cosmic Comic
Re: New Control System for MC (for Girder, etc.)
« Reply #26 on: March 12, 2003, 05:21:23 am »

I previously missed Mastiffs multi zone suggestions... They sound very well thought out, plus he is the pioneer with the arrows in his back !!!

I know your system is nearly integrated but I found this Multi Zone solution which would provide volume control, IR passthrough, RS232 control, and solve the lack of syncronized zones... Apprently its not too pricey either...  http://www.zonaudio.com/home/home.php I have mailed them for a full SDK and integrators info pack...
Logged
Phreddy@PhatPhreddy.net ICQ# 168975535
HTPC Front ends  

PhatPhreddy

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 613
  • Cosmic Comic
Re: New Control System for MC (for Girder, etc.)
« Reply #27 on: March 12, 2003, 05:25:56 am »

Quote
Same for closing MC.
What for :D !!!

Seriously MJ is set to start in my startup folder and set to run minimized and then in MJ I set it to minimize to the system tray... It does not have any ill effects to my other apps and its always there serving Glissando clients...
Logged
Phreddy@PhatPhreddy.net ICQ# 168975535
HTPC Front ends  

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: New Control System for MC (for Girder, etc.)
« Reply #28 on: March 12, 2003, 05:55:28 am »

Quote
I feel that MC is almost there when it comes to multi-zone control, and this would go the rest of the way!


Oh sure.  How many times have we heard you say that?

:P ;)
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #29 on: March 12, 2003, 06:13:24 am »

Quote
Issuing commands to a specific zone


It'll be in the next build.

Quote
Also, a command to set ratings would be nice.


It's there: MCC_SET_CURRENTLY_PLAYING_RATING

Quote
DSP studio control


Would be nice, but it's tricky.  We'll see...
Logged
Matt Ashland, JRiver Media Center

bennyd

  • Citizen of the Universe
  • *****
  • Posts: 1307
  • Project Leader
Re: New Control System for MC (for Girder, etc.)
« Reply #30 on: March 12, 2003, 07:33:18 am »

Can there be a command to go to Windowed Mode ?
Logged
may U live 2 see the dawn

bennyd :-)

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #31 on: March 12, 2003, 09:51:06 am »

Quote
Can there be a command to go to Windowed Mode ?


I think that's what:
MCC_SHOW_WINDOW      10013      0
does....

(Haven't tried that one)
Brad

[EDIT: Now that I've tried it, it doesn't do what you're looking for. The above command brings MC to the front, making it the active window.]
Logged

ccclapp

  • Regular Member
  • Junior Woodchuck
  • **
  • Posts: 71
Re: New Control System for MC (for Girder, etc.)
« Reply #32 on: March 12, 2003, 01:07:01 pm »

It is GREAT that all of this is happening!! :D :D

Here are a few requests:

1)  Imagining a Pronto or PPC screen with a panel to
a.  add playing or selected SONG to RATING, with buttons for each rating (i.e. push "RATE SONG", then push "1"-"10"
b.  ditto, but to rate ALBUM
c. ditto but add SONG to PLAYLIST, then push button representing appropriate playlist.
d. ditto, but add ALBUM to PLAYLIST.

In the case of playlists, should allow multiple button pushes to add SAME song or album to MULTIPLE PLAYLISTS  eg, "likes", "Rock", "wife hates", etc.

2) Allow letters from pronto keyboard or PPC writing area to cause movement in a tree, e.g. while in Artist/album, typing/pushing "V-A-N" selects Van Halen.  Then up/down to further navigate.

3)  Now I am likely dreaming, but... when not in front of a display, any chance of verbal feedback of all navigation/commands, e.g.
a. if jump to album/artist, words "album/artist" are heard  
b. if expand tree "expanded" is heard.  
c.  if V-A-N is typed/pushed "Van Halen" is heard,
d. if down arrow is then pushed, "Van Morrison" is heard, etc, etc.  If this could be done, "Verbal On" "Verbal OFF" buttons would be essential.

I think some of these things have already been covered/incorporated.

Thanks for this push to make MC maximally remote/ppc friendly :)

--Caleb
Logged
--Caleb

Mastiff

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1988
  • The Multi-Zone Tzar
Re: New Control System for MC (for Girder, etc.)
« Reply #33 on: March 12, 2003, 01:44:31 pm »

Jim, I'm just the eternal optimist. Actually everything runs smooth, it's just the little finesses that I crave now. This is icing on the cake, not a make or break function. And thanks, Matt, I look forward to it!  8)
Logged
Tor with the Cinema Inferno & Multi-Zone Audio system

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #34 on: March 12, 2003, 01:48:02 pm »

Just updated the MCC stuff for tonight's build. (9.0.127)

The big change is zone specific playback commands.

Thanks everyone.

http://ftp://ftp.jriver.com/pub/downloads/music/tmp/MCCommands.h
Logged
Matt Ashland, JRiver Media Center

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #35 on: March 12, 2003, 02:36:55 pm »

Any chance of getting specific commands to start MC up in different modes?

For instance, a desktop shortcut could start MC up in normal mode, the media key on my keyboard could start it up in mini-me mode, and the remote could start it up in Hairstyle?
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #36 on: March 12, 2003, 03:00:49 pm »

Quote
Any chance of getting specific commands to start MC up in different modes?

For instance, a desktop shortcut could start MC up in normal mode, the media key on my keyboard could start it up in mini-me mode, and the remote could start it up in Hairstyle?

I think it would be better if mjextman would always start MC if it isn't running (and if it has to start MC, wait until it's running to send commands). Then you can use the mjextman.exe /MCC 22009 series of commands to fire up any of the four modes: 0=Mega, 1=Mini, 2=Full Screen (Viz), 3=Full Screen (Hair).

Best,
Brad
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #37 on: March 12, 2003, 03:44:44 pm »

Heh, I can't stay away from this thread....

I spent some time today working on the Messaging side of the GML I posted last night. As far as I can tell, all the commands are entered correctly & everything is pointing at the right spot for the targeting. Nevertheless, nothing I did worked.

So, I searched through the Girder forums for any kind of clue and came up with a thread that may shed some light on the situation.

http://www.girder.nl/phpBB2/viewtopic.php?t=3892

The info in the MediaCore documentation says:

c) Post a WM_USER_MC_COMMAND based message to the MC frame
PostMessage(hwndMC, WM_USER_MC_COMMAND, MCC_PLAY_PAUSE, 0);

However, I think the SendMessage program only does "sendMessage" and not "postMessage". Not being a programmer, I'm not certain, but it looks like a smoking gun to me...

Best,
Brad
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42373
  • Shoes gone again!
Re: New Control System for MC (for Girder, etc.)
« Reply #38 on: March 12, 2003, 04:31:12 pm »

PostMessage vs. SendMessage won't matter.

The only difference is that SendMessage doesn't return until the message is handled, where PostMessage adds the message to the "to do" list and then returns right away.

Are you sure that the message being sent is right? (2024 if I remember right)  Also, are you sure it's sending it to MC?

If you don't get it working with a little more elbow grease, email me with what you have and I'll dig around. (matt @ jriver.com)

Thanks everyone!
Logged
Matt Ashland, JRiver Media Center

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #39 on: March 12, 2003, 07:23:18 pm »

Thanks, Matt! You guys are totally amazing! Congrats to the whole team!

I will email you a GML configured for the messaging. I think I've hit a brick wall.

Also, see:

http://www.avsforum.com/avs-vb/showthread.php?postid=1983733#post1983733

for a post containing another upgraded CCF/GML combo. It includes the changes for build 127 and a couple of bug fixes.

(For a masochistic evening, check out the control bugs in the thread for 9.0.127... :) )

Best,
Brad
Logged

Mastiff

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1988
  • The Multi-Zone Tzar
Re: New Control System for MC (for Girder, etc.)
« Reply #40 on: March 12, 2003, 09:27:28 pm »

Will the multiple web remotes be implemented in MC9, or is this put on hold?  8)
Logged
Tor with the Cinema Inferno & Multi-Zone Audio system

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #41 on: March 13, 2003, 05:36:16 am »

Quote
I think it would be better if mjextman would always start MC if it isn't running (and if it has to start MC, wait until it's running to send commands). Then you can use the mjextman.exe /MCC 22009 series of commands to fire up any of the four modes: 0=Mega, 1=Mini, 2=Full Screen (Viz), 3=Full Screen (Hair).


While it would be nice to have mjextman hold all commands until MC is ready to receive them, I would certainly prefer that MC start up in the mode I want, rather than watch it come up in normal mode and then quickly switch to Hairstyle or mini-me. Considering there are 989 slots available in the 22000-23000 range alone, I doubt we'll have to worry about 4 extra commands.
Logged

Zoner

  • Regular Member
  • World Citizen
  • ***
  • Posts: 198
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #42 on: March 13, 2003, 07:10:39 am »

This is a tiny bit OT for this thread, but I figured you guys are the best ones to ask.  I've been putting off setting up girder on my HTPC for about 2 years now, but decided to finally bite the bullet and get it working, so I installed girder, turned on the IRMan input device, downloaded the MJ8 GML from the girder site, "learned" all the commands, etc.

Now when I press play on my remote, the girder icon in the task bar lights red, but that's it - nothing happens in MC9.  I went into MC9's plug-in dialog, and saw that the v1.0.3 girder plug-in I had installed wasn't started, so I pressed start only to get an error message "could not open COM-port for IR".  Hmmm - that was unexpected.  What is the girder plug-in even doing trying to open the COM-port - isn't that girder's job?  If I turn off input devices in girder, then MC9's girder plug-in starts OK, but then my remote still doesn't work (even if I then turn on input devices in girder).

So I did a search here, found this thread, and it seems like I'm working with the old stuff anyway.  What should I do to get up to date?  I'm a bit new to girder so sorry in advance if I'm doing something stupid.
Logged

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #43 on: March 13, 2003, 07:20:07 am »

First, clear out all the stuff you currently have in Girder that involves MC9.

Then uninstall the Girder plugin. You don't need it.

Download the GML that was posted above. It's actually a zip file that has a GML file along with a Pronto CCF and a couple of other things. All you need is the GML file. Extract that. It doesn't matter where.

Open up Girder and go to File -> Import (import group?) and point it at the GML file you just extracted. It'll add all of the current commands that are available for MC9.

You'll probably have to edit the "mjextman.exe" line for each command to point to the location of the mjextman exe. Under XP it's in the System32 folder.

Then just learn the codes for the command you want to use, and you should be good to go.
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #44 on: March 13, 2003, 07:31:35 am »

Quote
Now when I press play on my remote, the girder icon in the task bar lights red, but that's it - nothing happens in MC9.  I went into MC9's plug-in dialog, and saw that the v1.0.3 girder plug-in I had installed wasn't started, so I pressed start only to get an error message "could not open COM-port for IR".  Hmmm - that was unexpected.  What is the girder plug-in even doing trying to open the COM-port - isn't that girder's job?  If I turn off input devices in girder, then MC9's girder plug-in starts OK, but then my remote still doesn't work (even if I then turn on input devices in girder).

Here's a couple of things to check:

1) Make sure Girder is correctly receiving the events from your remote. If the Girder window is open, the view in the tree will move around to highlight the last command it received.

2) If that's not happening, check to make sure your input device is enabled in the Settings/Properties of Girder.

3) Red isn't a good color. I think that means that an IR event was received, but couldn't be matched. Check the getting started guide at the Girder website: http://www.girder.nl/help/gettingstarted/index.php

4) I'm confused as to what versions of things you are running. The last time I checked, the MJ Girder plugin didn't work with MC9. That (or Girder config troubles) could relate to the COM-port error...

Let me know if that helps...
Brad
Logged

bspachman

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 896
Re: New Control System for MC (for Girder, etc.)
« Reply #45 on: March 13, 2003, 02:08:20 pm »

Forgot to respond the other day! I figured a few things out for you...

Quote
1)  Imagining a Pronto or PPC screen with a panel to
a.  add playing or selected SONG to RATING, with buttons for each rating (i.e. push "RATE SONG", then push "1"-"10"

Can be done with the new "Set Rating" Commands (but there are only ratings 1-5).

Quote
b.  ditto, but to rate ALBUM

I think this is additional functionality that has been requested. Regardless, if you have your media library set up as whole albums, you could do this now (although you lose track-by-track control).

Quote
c. ditto but add SONG to PLAYLIST, then push button representing appropriate playlist.
d. ditto, but add ALBUM to PLAYLIST.

This is a great one! The newest remote functions allow for the creation of playlists, smartlists, view schemes & scheme groups, but there are no controls to "Send To..." the current track or current selection.

Can SEND TO be implemented in the remote functions?

Quote
2) Allow letters from pronto keyboard or PPC writing area to cause movement in a tree, e.g. while in Artist/album, typing/pushing "V-A-N" selects Van Halen.  Then up/down to further navigate.

This is already there. The tricky part is making sure the focus is correct. I think that with the new commands if you "jump to" a basic node (MCC_SHOW_TREE_ROOT with the appropriate index number), your keyboard should work.

Quote
3)  Now I am likely dreaming, but... when not in front of a display, any chance of verbal feedback of all navigation/commands, e.g.
a. if jump to album/artist, words "album/artist" are heard  
b. if expand tree "expanded" is heard.  
c.  if V-A-N is typed/pushed "Van Halen" is heard,
d. if down arrow is then pushed, "Van Morrison" is heard, etc, etc.  If this could be done, "Verbal On" "Verbal OFF" buttons would be essential.

I've seen this proposed on the AVS Forums and in the Girder forums (maybe even in the Developer Forum here). I think some folks have made Girder do this....

Good thoughts, Caleb!

Best,
Brad
Logged

Mastiff

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 1988
  • The Multi-Zone Tzar
Re: New Control System for MC (for Girder, etc.)
« Reply #46 on: March 13, 2003, 10:39:53 pm »

Quote

3) Red isn't a good color. I think that means that an IR event was received, but couldn't be matched. Check the getting started guide at the Girder website: http://www.girder.nl/help/gettingstarted/index.php
Brad


Acutally red is a totally acceptable color when it comes to the Girder tray icon. It's the only flash it can make, it just means that Girder received an event.
Logged
Tor with the Cinema Inferno & Multi-Zone Audio system

Zoner

  • Regular Member
  • World Citizen
  • ***
  • Posts: 198
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #47 on: March 14, 2003, 04:30:18 am »

Quote

Then just learn the codes for the command you want to use, and you should be good to go.


OK - thanks a lot for the advice.  I did everything you said, and now when I press a button on my remote, something happens, although it's not what should happen:
MC9 starts up (if it isn't already started), clears "Playing Now", and shows a dialog box which says "Please select file(s) to play".  This dialog shows twice every time I press a button on the remote, it does this no matter which command I press.

Any ideas?
Logged

Zoner

  • Regular Member
  • World Citizen
  • ***
  • Posts: 198
  • nothing more to say...
Re: New Control System for MC (for Girder, etc.)
« Reply #48 on: March 14, 2003, 04:37:54 am »

OK now I checked, and I have two mjextman.exe files on my hard drive - an older one in the MC9 directory, and a newer one in SYSTEM32.

I renamed the older one in the MC9 directory to have a .old extension, and now I only get the "Please select file(s) to play" dialog once.  Am I crawling forward here, or running on the spot?
Logged

Doof

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5908
  • Farm Animal Stupid
Re: New Control System for MC (for Girder, etc.)
« Reply #49 on: March 14, 2003, 05:19:02 am »

Well, what command are you trying to issue?

If it's just Play, and there's nothing in Playing Now, then that's what will happen.

You may also want to set the antirepeat interval in Girder to avoid commands being issued twice.
Logged
Pages: [1] 2   Go Up