Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Expand
titleTable of Contents
Table of Contents
indent20px

...

  • The cvt command line program, which is available on Linux, generates modelines in the correct format (though you must remove the quotation marks around the mode name). Use the -r flag, which reduces blanking.

  • EDID Information in the BrightAuthor:connected DWS, and the edid hdmi BrightSign command line, both output the Detailed Descriptor Mode (DTD) EDID entries in the modeline format. You can connect a screen, query the EDID, and use the resulting modeline as your custom modeline.

  • You can create your own modeline from the documentation for a particular screen.

Custom Mode

Setting videomode to custom means that the stored modeline will be used. The configured mode will always be 8 bits per color and RGB. For modes where the pixel area is greater than 2.5 million, the graphics layer will be a quarter size and upscaled by default. Setting the mode to custom:fullres forces a full resolution graphics layer as with the higher resolution preset modes. Some players don't allow fullres modes - see Full-Resolution Graphics for more information. 

...

Use SetCustomModeline() in roVideoMode to parse the modeline, check that it is within the supported range, and then store the value in the registry. The new modeline is only active when the videomode is set to custom and, as with most videomode changes, it requires an application restart. Methods like GetConfiguredMode will return the width, height, and calculated frame rate from the custom mode. See the examples at the bottom of this page.

Enabling Custom Resolutions in JavaScript

The videomodeconfiguration class contains setCustomModeline(), which returns whether or not a restart is required. If the videomode is already set to custom, a restart will be required.

...

  • A width between the narrowest and widest of any of the preset videomodes (for example, between 640 and 4096 on 4K players).

  • A height between the shortest and tallest of any of the preset videomodes (for example, between 288 and 2160 on 4K players).

  • A pixel clock frequency between 25.0MHz and 594.0MHz for 4K players, or between 25.0MHz and 200.0MHz for HD players

Examples

Single HDMI Output Models

Use SetCustomModeline() in roVideoMode to parse the modeline and force a custom resolution:

Code Block
languagejs
vm=CreateObject("roVideoMode")
vm.SetCustomModeline("Modeline 3840x2160x60p 594.00 3840 4016 4104 4400 2160 2168 2178 2250 +hsync +vsync")
vm.SetMode("custom")

...

Multi HDMI Output Models

Use SetScreenModes() in roVideoMode to initialize the HDMI output’s video_mode with Modeline for each connector, as in this example which sets two HDMI outputs with custom modelines:

...

languagejs

...

See https://github.com/brightsign/video-mode-plugin/tree/master for example video-mode plugins for single and multi HDMI® output models.