DLPU110B April 2021 – August 2022 DLPC6540
Set Manual Warp Table | |
---|---|
Write Parameter(s) | |
Byte | Description |
Bytes 0-1 |
Start index in the table for the data to be written |
Bytes 2 - * |
Warp map points in X, Y pairs where X, Y are are in 13.3 fixed point format |
This command writes to the warp map table that can be enabled using warping can be loaded at a time to anywhere within the table. Maximum number of points that can be set using this command is 62 in the horizontal direction and 32 in the vertical direction. Overall max 1984 points. The number of points set by this command should match the number of control points specified using the warping command. Each point is passed as two 13.3 fixed point numbers that represents X and Y coordinates. Since the total command packet size cannot exceed 512 bytes, the table shall be loaded by invoking the command multiple times with different start index. |
Get Manual Warp Table | |
---|---|
Read Parameter(s) | |
Byte | Description |
Bytes 0-1 |
Start index in the table from which the data is to be read |
Bytes 2-3 |
Number of entries to be read |
Return Parameter(s) | |
Byte | Description |
Bytes 0 - * |
Warp map points in X, Y pairs where X, Y are in 13.3 fixed point format |
This command reads from the warp map table already loaded using Set Manual Warp table. N warp map points (that does not exceed the command packet size) can be read at a time from anywhere within the table. Maximum table size is 1952. |
Set Manual Warp Control Points | |
---|---|
Write Parameter(s) | |
Byte | Description |
Byte 0 |
Indicates if the warp control points are explicitly defined by array of horizontal and vertical control points. 0 = Input image is uniformly divided to create equally spaced warp control points of dimension ((Number of Horizontal Control Points) x (Number of Vertical Control Points)). Warping map table loaded by the Set Manual Warp Table command is used as a two dimensional array with dimension (Warp Columns x Warp Rows). 1 = Warp control points are defined by Horizontal Control Points and Vertical Control Points parameters of this command. Warping map table loaded by the Set Manual Warp Table command is used as a two dimensional array with dimension (62 x 32). |
Bytes 1 - * |
if Control Points Defined By Array = 0, Send Number of Horizontal Control Points here. if Control Points Defined By Array = 1, Send 62 horizontal control points here in uint16 format |
Bytes 1 - * |
if Control Points Defined By Array = 0, Send Number of Vertical Control Points here. if Control Points Defined By Array = 1, Send 32 vertical control points here in uint16 format. |
This command sets up the user defined control points of the warp map that shall be applied on top of the keystone correction, anamorphic scaling and other warp dependent feature settings if they are enabled. The warping map table loaded by the manual warp table write command is used as a two dimensional array with dimension which is defined based on the first argument of this command : TRUE = (Number of Horizontal Control Points) x (Number of Vertical Control Points) FALSE = (62 x 32) The points in the map should lie within the display area defined by display image size command. Any points lying outside the display area shall get cropped. |
Get Manual Warp Control Points | |
---|---|
Return Parameter(s) | |
Byte | Description |
Byte 0 |
Indicates if the warp control points are explicitly defined by array of horizontal and vertical control points. |
Bytes 1 - * |
if Control Points Defined By Array = 0, Number of Horizontal control points followed by Number of Vertical control points are returned here if Control Points Defined By Array = 1, Actual(62) Horizontal control points followed by Actual(32) Vertical control points are returned here |
This command gets up the user defined warping map control points. |
Set Apply Manual Warping | |
---|---|
Write Parameter(s) | |
Byte | Description |
Byte 0 |
Enable bit 0: Warp Enabled |
This command applies the manual warping control points and map table to the Warp HW defined by Set Manual Warp Control Points and Set Manual Warp Table respectively. |
Get Apply Manual Warping | |
---|---|
Return Parameter(s) | |
Byte | Description |
Byte 0 |
Enable bit0: Manual Warp Enabled bit1: Surface Correction Warp Enabled bit2: Lens Correction Warp Enabled |
This command returns whether warping feature is enabled or disabled for various use cases. |
Set Smooth Warp Table | |
---|---|
Write Parameter(s) | |
Byte | Description |
Byte 0 |
Number of columns in the smooth warp matrix specified below (Range 3-5) |
Byte 1 |
Number of rows in the smooth warp matrix specified below (Range 3-5) |
Bytes 2 - * |
Warp map points in X, Y pairs where X, Y are are in 13.3 fixed point format |
This command sets up the user defined MxN warping map that creates a parametric smooth curve. The edges connecting two warp points in this case are not straight lines but are 'smoother' ie, At the Warp Point, edge is continuous and does not form a vertex (except for corners). This is done by fitting a 2nd degree polynomial curve to warp points, contrary to Write Manual Warp Table command which fits straight line to warp points. |
Get Smooth Warp Table | |
---|---|
Data returned is in the same format as Write Parameter(s) above. | |
This command returns the user defined MxN warping map points |
Set Manual Warp Table Update Mode | |
---|---|
Write Parameter(s) | |
Byte | Description |
Byte 0 |
0 = Overwrite Existing 1 = Merge with Existing |
This command configures the warping engine warp points update mode. Only one manual warp can be applied to the warping engine. Hence, if multiple manual warp maps are required, they should be merged before applying. This Command enables or disables 'Manual Warp Merge Mode' In Merge mode, any new map written will be merged with existing manual warp map. Maps can be merged one after the other. For each map, control points need to be set-up using Set Manual warp control points command and warp poins should be written using Write Manual Warp Command. |
Get Manual Warp Table Update Mode | |
---|---|
Data returned is in the same format as Write Parameter(s) above. | |
This command returns the set warp table write mode. |