Difference between revisions of "MVDSTD:GetConfig"
Line 44: | Line 44: | ||
| 0x0C | | 0x0C | ||
| 0x4 | | 0x4 | ||
− | | Video width. Must be >=width_min and <width_max. | + | | Video width. Must be >=width_min and <width_max. This must be aligned: the low <dimensions_alignment>-bits must be clear. |
|- | |- | ||
| 0x10 | | 0x10 | ||
| 0x4 | | 0x4 | ||
− | | Video height. Must be >=height_min and <height_max. | + | | Video height. Must be >=height_min and <height_max. This must be aligned: the low <dimensions_alignment>-bits must be clear. |
|- | |- | ||
| 0x14 | | 0x14 | ||
Line 91: | Line 91: | ||
See [[MVD_Services|here]] regarding "MJPEG". For "MJPEG", the output frame is split into two images via the two output physaddrs. | See [[MVD_Services|here]] regarding "MJPEG". For "MJPEG", the output frame is split into two images via the two output physaddrs. | ||
− | For *_min/*_max mentioned above: *_min = 16 for color-conversion, 48 for video processing. *_max = 2048 for color-conversion, 4672 for video processing. | + | For *_min/*_max/dimensions_alignment mentioned above: *_min = 16 for color-conversion, 48 for video processing. *_max = 2048 for color-conversion, 4672 for video processing. dimensions_alignment = 4 for color-conversion, 3 for video processing. |
Types: | Types: |
Revision as of 04:41, 10 November 2014
Request
Index Word | Description |
---|---|
0 | Header code [0x001D0042] |
1 | Size, normally 0x11C. |
2 | (Size<<4) | 12 |
3 | Output data ptr |
Response
Index Word | Description |
---|---|
0 | Header code |
1 | Resultcode |
Structure
Offset | Size | Description |
---|---|---|
0x0 | 0x4 | Type, see below. |
0x0C | 0x4 | Video width. Must be >=width_min and <width_max. This must be aligned: the low <dimensions_alignment>-bits must be clear. |
0x10 | 0x4 | Video height. Must be >=height_min and <height_max. This must be aligned: the low <dimensions_alignment>-bits must be clear. |
0x14 | 0x4 | Input data physical address, only set for color-conversion. |
0x40 | 0x4 | 0x0 for color-conversion, 0x1 for H.264. |
0x4C | 0x4 | Video height, only set for H.264. |
0x50 | 0x4 | Video width, only set for H.264. |
0x58 | 0x4 | The default for this is 0x40002. The physaddr at offset 0x68 is only checked when this is value 0x00020001. |
0x5C | 0x4 | Video width. Must be >=16, and must be <somewidth_statefield. |
0x60 | 0x4 | Video height. Must be >=16, and must be <someheight_statefield. |
0x64 | 0x4 | Output data physical address. |
0x68 | 0x4 | Output data physical address, only set for color-conversion. |
The size of this structure is fixed to 0x11C-bytes. The user process does the LINEAR-mem vaddr->physaddr conversion for the above physaddrs, when modifying the config struct before using MVDSTD:SetConfig. For the above physaddrs that are checked/used, the physaddr must not be 0x0, and the physaddr must be 8-byte aligned(low 3-bits clear).
See here regarding "MJPEG". For "MJPEG", the output frame is split into two images via the two output physaddrs.
For *_min/*_max/dimensions_alignment mentioned above: *_min = 16 for color-conversion, 48 for video processing. *_max = 2048 for color-conversion, 4672 for video processing. dimensions_alignment = 4 for color-conversion, 3 for video processing.
Types:
Type value | Mode | Description |
---|---|---|
0x00000002 | Color conversion | ? |
0x00000003 | Video processing | ? |
0x00000005 | Video processing | ? |
0x00000006 | Color conversion | ? |
0x00000007 | Color conversion | ? |
0x00000008 | Color conversion | ? |
0x00010001 | Color conversion | "MJPEG" (yuyv422 -> <out color format>) |
0x00020000 | Color conversion | ? |
0x00020001 | Video processing | H.264 |
0x00020002 | ? | ? |
0x00080000 | Video processing | ? |
0x00080009 | Video processing | ? |
0x00180009 | Video processing | ? |
Description
For this command, MVD module DMAs 0x11C-bytes from a MVD state structure to the above output buffer.