Orbiter Generator

From LinuxMCE
(Redirected from Orbiter Regeneration)
Jump to: navigation, search

Version Status Date Updated Updated By
710 Unknown N/A N/A
810 Unknown N/A N/A
1004 Unknown N/A N/A
1204 Unknown N/A N/A
1404 Unknown N/A N/A
Usage Information

It would be impractical and inefficient for the Orbiters, many of which have limited processing power, to repeatedly rebuild and re-render the User Interface (UI) graphics on the fly.

The User Interface images are all very high resolution. They need to be resized to accommodate the various sizes and resolutions of the different screens on different types of Orbiters.

Therefore, on the Core is a program called OrbiterGen that pre-renders the UI graphics as much as possible. Graphics and text are combined into single pre-rendered bitmaps and stored in a database on the Core. These pre-rendered images are sent directly to each different Orbiter whenever it starts, allowing immediate display of the User Interface on the Orbiter.

The only time you will need to use OrbiterGen is when you are manipulating the User Interface (or designing a new one). This occurs, for example, whenever you create or change scenarios. Adding a new scenario may result in the creation of new buttons for the User Interface, or may result in changes to the text on existing buttons. Perhaps an entirely new screen will be created.

OrbiterGen also must be run whenever the User Interface is customized using Designer.

Regen the Orbiter

The Core maintains a list of the Orbiters used by your system in a database. It generates and stores a User Interface screen for each different type of Orbiter.

It will "regenerate" the User Interface screens each time you change the UI (by adding/changing scenarios or using Designer), or whenever you request a "regen". If you have five different types of Orbiters (each with a different type of screen), then five different images will be regenerated.

Until the User Interface images are regenerated, you won't be able to see the changes to your buttons (or screens). The "regeneration" process can take about 2-5 minutes to recreate the UI screens for all the different types of Orbiters, depending on the number of them.

The appropriate UI image is then sent from the Core to a particular Orbiter only when that Orbiter is activated.

You needn't do a regen each time you add or change a scenario, however. You can wait until you have finished adding or changing scenarios before you perform a regen.

While you are editing or adding scenarios (or using Designer), it is possible to regenerate a UI for the single Orbiter, however, (the one that you are using) by doing a "Quick regen". This allows you to view the new User Interface without having to do a full regen for every Orbiter type. This is much quicker and allows you to see your changes without waiting for a full regen.

Once you have finished adding and changing scenarios, you can do a full regen for all the Orbiters.

This regen process can be a bit annoying, but is necessary.

(In future editions of LinuxMCE, it is planned to allow Media Directors, which have a lot more processing power, to render their on-screen Orbiter User Interfaces on the fly (so you don't have to do a regen each time you add or remove a scenario)).

Running OrbiterGen (performing a "regen")

  • The OrbiterGen program is invoked automatically each time you finish adding or changing a scenario or making changes using Designer.
  • You can perform either a "full Orbiter regen" or a "Quick regen" at any time by using buttons located on the Core's Launch Manager.
  • For All Orbiters:
  • LinuxMCE Admin Website-->Wizard-->Devices-->Orbiter
  • There are two buttons on the top of the screen. Select either Quick Regen All or Full Regen All for all Orbiters.
  • For a single Orbiter:
  • LinuxMCE Admin Website-->Wizard-->Devices-->Orbiter
  • To regenerate a single orbiter, scroll down the page to the desired orbiter and select either Quick Regen or Full Regen.


The User's Manual explains the command line options. There is no Programmer's Guide for OrbiterGen.