Driver Details

Kaleidescape Media Server

By: RTI
Updated: May 15, 2023
Version: 1.3

Description:

This driver supports all models of Kaleidescape media servers and players. The driver should be used with an IP connection but can support an RS-232 connection. The driver supports both Movie (on-screen) and Music (no on-screen) zones, requiring multiple instances for multiple zones.

Version History:

Version 1.1: adds support for Blu-Ray and the M500/M300 players,

Version 1.11: fixes a problem reconnecting to the players after they"ve been powered down.

Version 1.13: adds support for iOS volume and mute commands, 'player ready' status as supported in the Cinema One and Alto products, and a command to reset the music browsing menu to the top level.

Version 1.14: fixes a problem determining the Connection Type

Version 1.15: Properly initializes the new 'Ready' variables.

Version 1.2: Now uses high res covers by default and add support for more UI pages, including the Movie Store.

Version 1.3 Added 10 Custom Script Events. Added additional Tags.

 

Kaleidescape Media Server System

This driver was tested on a Kaleidescape Cinema One System running software version 6.1. The driver controls a single zone of the system, multiple zones will require multiple instances of the driver. The sample file illustrates this by using two instances of the driver, one controlling the on screen (movie) zone of CPDID 1 while the second driver controls the second music zone of the same unit.

Revision History

1.01: Fixes issues opening the inital IP connection

1.02: The driver now writes to the system log files of the Kaleidescape system on startup, and every 24 hours thereafter. Kaleidescape Tech Support has access to these files

1.03: Addresses problems making initial connection with ID7.2

1.1 Adds special 'Blu-ray' commands introduced with Blu-ray support in system software 4.0

CAUTION: Blu-ray special stop command

Using this command could trap the user. Depending on how the disc was authored, this command may not

return the user to a Kaleidescape movie place like the STOP command; some discs may instead use it for

accessing special features. If used as the only stop command, the controller must provide another

mechanism to get to the Kaleidescape menu or a Kaleidescape movie place to prevent the user getting

“trapped” in Blu-ray playback.

1.11 Fixes a problem reconnecting to players that have been powered off

1.13 Adds 'System Ready' variables as used in the Cinema One and Alto systems. Adds a Re-Init command that reloads all the music menus from the top level and adds support for the volume and mute commands in the Kaleidescape mobile apps

1.14 Fixes a problem determiing the configuration type created in the last update. Adds additional diagnostic messages

1.2 Change cover art to default to hi-res, add option to use standard res variable if desired. Adds events for changes to UI pages. Add extra variables and functions for newer UI pages, including Movie Store.

1.3 Added 10 Custom Script Events. Added additional Tags.

Config Settings

Connection Settings

The driver will work with either a serial or an IP connection. Besides being a faster transport, the Kaleidescape has a higher efficiency protocol when using IP and it is highly recommended.

Serial Port Settings

The serial connection requires a null modem cable with a female connector. You can set the parameters of the serial port (on the Kaleidescape) via its internal web server. The default driver settings match the default Kaleidescape values. (Once again, using a serial connection rather than a network connection compromises system performance and is not recommended).

Kaleidescape Settings

The Kaleidescape Control Protocol Device Identifier (CPDID) is the ‘address’ of any particular device in the Kaleidescape system. The address can be set via the installer section of the systems internal web server, but the device the processor is connected and talking to will always be at address 1.

Zone Settings

The on-screen or movie zone of the system allows for full onscreen menus of both movies AND music, and will be addressed by leaving the music zone setting to 0. To access other, music only zones on the system requires setting the music zone address to the correct music zone. A driver with its music zone set to anything other than 0 will be unable to use ANY on-screen functions.

Screen Masking

The Kaleidescape system and the driver together can support a sophisticated screen masking system. If the ‘Using Screen Masking’ checkbox is checked the Kaleidescape will move any user interface items (prompts, dialogs and banners) into the screen area so they aren’t in a masked off area. In addition, the driver supports driver events for the different screen sizes allowing logic triggering of the masking system.

Additional driver events support the movie locations, allowing additional triggers for a movies content and end credits, etc.

Progress Bars and Counters

The driver supports progress bars and on-screen counters by asking the Kaleidescape to update the media’s position every second. If these features are not being used, the driver’s bandwidth can be reduced by telling the system not to update regularly.

Auto-Scroll

The Auto-Scroll function controls the actions of the Now Playing list and is described in that section below

Functions

On-screen Functions and Control

(Movie browsing is only possible through the on-screen interface)

The driver can bring any of the user interface screens onto the screens, including lists, dialogs and other prompts. These screens can be navigated using the on-screen navigation functions. If the user interface requires user input the letter, number and special character function in the User Input section can be used to respond. On screen prompts and the current entry shown on the screen are duplicated in the User Input Prompt and User Entry Field variable so that they can be shown on a panel.

When user input is required the user can be notified either by page flip through the driver events as shown on the RK-3 example, or by using a keypad pop-up used in the K4 example. RTI firmware earlier than 2.1 has a lengthy delay when rendering pop-ups with a large number of buttons, if you're using this function make sure you're using the most recent firmware.

As the on-screen menus are being browsed, meta-data for the currently highlighted selection is available in the ‘Current Highlighted Object’ section of the variables.

List Only Function and Control (Music Only)

The driver supports two separate list objects: the browsing list and the now playing list. Each list object has its own matching select command in the User Input section of the driver commands. The browse list has an additional command to back up the current search tree, this function also works with the search functions by ‘undoing’ the search. In the example files this command was placed on all the list headers

The now playing list cannot be edited (except by adding music or replacing the list via the browse list) but does show the current music queue (optionally with the current position highlighted) and allows you to move to a different position in the list. An option in the configuration settings sets the list to automatically scroll a song into the list whenever the current song changes. It also marks the currently playing tunes by surrounding it with ">" and "<". This function makes it easier to see the currently playing track, but can cause undesired confusion as it can cause the list to unexpectedly jump away if a user is scrolling through the list when a track changes. Instead, it is more predictable to leave that function off and allow the user to use the Auto-Scroll command in the User Input section of the driver to bring the currently playing track to the top of the list when desired. Once again the example files use this command on the list header.

New Blu-ray commands

In addition to the colored buttons commands, the following commands were added:

Blu-ray pop-up menu command

During Blu-ray playback, toggles the display of the Blu-ray Disc popup menu. The specific function of this command is defined by the disc itself and may vary from disc to disc. On many discs, this command will function the same as DISC_MENU.

Blu-ray special stop command

During Blu-ray playback, sends the “Blu-ray Stop” command to the disc that is playing. For all other content, it behaves as the STOP command.

Filtering Functions

The filtering functions, along with the Filter Entry Field variable, allow you to create a controller based, music only equivalent to the on-screen search functions. The characters, along with the clear and backspace functions, create a filter entry and the search is executed by the filter function.

The Filtering Group functions allow a search function to exist on more limited interfaces. The T2-C examples both use this method. Groups of letters can be combined onto a single button to create a search function. The example file combines letters on the number keys of the remotes to match the letter keys found on a phone: 2 is a, b or c; 3 is d ,e, or f etc. The Filter command should not be used; the search command automatically executes 2 seconds after the last Filter Group button is pressed.

Filtering is undone by backing up through the browse list. Selecting an item from a list erases the current Filter Entry. When a search is executed and the results are displayed in the list, hitting another key (or filter group) adds to the search key to narrow the search. To clear out the filter string first you can use the Clear function.

Letters and Numbers (Searching)

It's important to understand the differrence between the two sets of search functions, each requiring a different set of driver commands. When using the on-screen display, the Kaleidescape will prompt for text or numeric entry by setting the User Input variables to true. It then supplies a prompt and a response text string to track user entry. This type of entry is used in the Movie Server pages of the K4 and K3 examples. For this type of search you must send the characters under the User Input section of the Driver Commands.

The second type of searching is used for browsing on remotes and touch panels, this is done in the Music Server section of the examples. In these examples the driver creates the search string and then either sends it to the Kaleidescape when the Filter command is executed, or automatically when using the Filtering Group commands. This search function requires the use the Filtering Letters and Numbers from the filtering section of the Driver Commands.

Presets

Presets are a Kaleidescape function that does not have an on-screen or web equivalent. Presets are created simply by writing the current now playing queue to them using the 'Add currently playing music to preset' command and supplying the preset name. If you are listening to a specific genre, the genre will be saved to the preset, if you're listening to an artist, the artist will be saved to the preset. Presets can use any name, but editing capabilites may be added to the on-screen or web interfaces so the preset names should be useful as they may be visible to the user at some point.

iOS app compatability

The Kaleidescape iOS app has volume and mute controls on it's Remote Control page. Using these controls will trigger events *Volume Up, Volume Down, and Toggle Mute) in the Driver that can be used to send commands to other devices in the system. The app and the driver exchange a handshake when the app changes to the remote page so if the app says (usually after a reset) that the control system doesn't support the commands just change off the page and and back and it should resync.

Re-init Music List

The Re-init command was added to allow a complete reset of the Music list. regardless of how far dsoen the list you have drilled the Re-init command will return to the top list.

Custom Script Events

We have included 10 Script Events that can be used. These events are triggered when a script has a “send a command to the control system” step that sends Event_1 through to Event_10.