NVIDIA DRIVE OS Linux API Reference

5.1.0.2 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages

Detailed Description

Transformations are used to rotate and mirror the source surface of a blit operation.

The destination rectangle is not affected by any transformation settings.

NvMediaTransform identifies the transformations that can be applied as a combination of rotation and mirroring

Specifically, given a hypothetical 2x2 image, applying these operations would yield the following results

INPUT OUTPUT
+---+---+ +---+---+
| 0 | 1 | IDENTITY | 0 | 1 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 2 | 3 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | ROTATE_90 | 1 | 3 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 0 | 2 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | ROTATE_180 | 3 | 2 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 1 | 0 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | ROTATE_270 | 2 | 0 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 3 | 1 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | FLIP_HORIZONTAL | 1 | 0 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 3 | 2 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | INVTRANSPOSE | 3 | 1 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 2 | 0 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | FLIP_VERTICAL | 2 | 3 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 0 | 1 |
+---+---+ +---+---+
+---+---+ +---+---+
| 0 | 1 | TRANSPOSE | 0 | 2 |
+---+---+ ---------------> +---+---+
| 2 | 3 | | 1 | 3 |
+---+---+ +---+---+

Enumerations

enum  NvMediaTransform {
  NVMEDIA_TRANSFORM_NONE = 0x0,
  NVMEDIA_TRANSFORM_ROTATE_90,
  NVMEDIA_TRANSFORM_ROTATE_180,
  NVMEDIA_TRANSFORM_ROTATE_270,
  NVMEDIA_TRANSFORM_FLIP_HORIZONTAL,
  NVMEDIA_TRANSFORM_INV_TRANSPOSE,
  NVMEDIA_TRANSFORM_FLIP_VERTICAL,
  NVMEDIA_TRANSFORM_TRANSPOSE
}
 Transformations. More...
 

Enumeration Type Documentation

Transformations.

Enumerator
NVMEDIA_TRANSFORM_NONE 

No transformation.

NVMEDIA_TRANSFORM_ROTATE_90 

Rotation by 90 degrees.

NVMEDIA_TRANSFORM_ROTATE_180 

Rotation by 180 degrees.

NVMEDIA_TRANSFORM_ROTATE_270 

Rotation by 270 degrees.

NVMEDIA_TRANSFORM_FLIP_HORIZONTAL 

Mirroring in the horizontal.

NVMEDIA_TRANSFORM_INV_TRANSPOSE 

Mirroring along a diagonal axis from the top right to the bottom left of the rectangular region.

NVMEDIA_TRANSFORM_FLIP_VERTICAL 

Mirroring in the vertical direction.

NVMEDIA_TRANSFORM_TRANSPOSE 

Mirroring along a diagonal axis from the top left to the bottom right of the rectangular region.

Definition at line 3045 of file nvmedia_common.h.