Interface Plug-in SDK: Difference between revisions

From wiki.jriver.com
Jump to navigation Jump to search
No edit summary
 
(4 intermediate revisions by 2 users not shown)
Line 3: Line 3:
This SDK contains everything you need to create your own interface plug-in for Media Center. An interface plug-in is a plug-in that seamlessly integrates into Media Center's interface to provide added functionality. An interface plug-in can be just about anything you can imagine: an advanced tagging studio, an HTML control server, a playlist management tool, and on and on. You can build on all of Media Center's established power.
This SDK contains everything you need to create your own interface plug-in for Media Center. An interface plug-in is a plug-in that seamlessly integrates into Media Center's interface to provide added functionality. An interface plug-in can be just about anything you can imagine: an advanced tagging studio, an HTML control server, a playlist management tool, and on and on. You can build on all of Media Center's established power.


[http://www.jrmediacenter.com/DevZone/MediaCenterSDK.rar Download the SDK]
[http://www.jriver.com/DevZone/MediaCenterSDK.rar Download the SDK]


The SDK consists of a single file: the MCPlayerLib.tlb type library, and a Sleep Timer example.
The SDK consists of a single file: the MCPlayerLib.tlb type library, and a Sleep Timer example.
Line 15: Line 15:


You will need to import the MCPlayerLib.tlb type library into your plug-in for IMJAutomation to be defined.
You will need to import the MCPlayerLib.tlb type library into your plug-in for IMJAutomation to be defined.

See [[Media Center Automation]] for a complete description of the capabilities available to your plug-in.

If you create a Registry Key called "Enabled", it will be reported on the System Info. This is useful for plugins that are Active but turned off.


==Examples==
==Examples==


The SDK includes two examples, a Sleep Timer (C++) and a BusyBox (Visual Basic) to help get you started.
The SDK includes an example, a Sleep Timer (C++).

[[Category:Developer]]

Latest revision as of 05:49, 4 May 2015

Introduction[edit]

This SDK contains everything you need to create your own interface plug-in for Media Center. An interface plug-in is a plug-in that seamlessly integrates into Media Center's interface to provide added functionality. An interface plug-in can be just about anything you can imagine: an advanced tagging studio, an HTML control server, a playlist management tool, and on and on. You can build on all of Media Center's established power.

Download the SDK

The SDK consists of a single file: the MCPlayerLib.tlb type library, and a Sleep Timer example.

Writing a component[edit]

The first thing you need to do to create an Interface plug-in is to choose a language. Any language that supports COM should work fine. (C++, VB, etc.) Once that's out of the way, you need to create a new COM control that has a user interface. Then, there are two requirements for your COM control:

  1. It must enter information in the registry to let Media Center know it exists. In C++, this can simply be a block of code added to the DllRegisterServer function. In VB, you will have to make a .reg file for the user to run on their machine. (see the included samples for examples of this)
  2. It must implement a function called Init(...) that Media Center will call when starting the plug-in to give you an object to control Media Center with. (the object is a dispatch pointer (IMJAutomation *))

You will need to import the MCPlayerLib.tlb type library into your plug-in for IMJAutomation to be defined.

See Media Center Automation for a complete description of the capabilities available to your plug-in.

If you create a Registry Key called "Enabled", it will be reported on the System Info. This is useful for plugins that are Active but turned off.

Examples[edit]

The SDK includes an example, a Sleep Timer (C++).