Line 15: |
Line 15: |
| |- | | |- |
| | 3 | | | 3 |
− | | Output data ptr | + | | Output [[MVD_Services|config]] data ptr |
| |} | | |} |
| | | |
Line 29: |
Line 29: |
| | 1 | | | 1 |
| | Resultcode | | | Resultcode |
− | |}
| |
− |
| |
− | =Structure=
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Offset
| |
− | ! Size
| |
− | ! Description
| |
− | |-
| |
− | | 0x0
| |
− | | 0x4
| |
− | | Type, see below.
| |
− | |-
| |
− | | 0x0C
| |
− | | 0x4
| |
− | | Video width. Must be >=width_min. width_min = 16 for color-conversion, 48 for video processing.
| |
− | |-
| |
− | | 0x10
| |
− | | 0x4
| |
− | | Video height. Must be >=height_min. height_min = 16 for color-conversion, 48 for video processing.
| |
− | |-
| |
− | | 0x14
| |
− | | 0x4
| |
− | | Input data physical address, only set for "MJPEG".
| |
− | |-
| |
− | | 0x40
| |
− | | 0x4
| |
− | | 0x0 for "MJPEG", 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 "MJPEG".
| |
− | |}
| |
− |
| |
− | 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 [[MVD_Services|here]] regarding "MJPEG". For "MJPEG", the output frame is split into two images via the two output physaddrs.
| |
− |
| |
− | Types:
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! 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= | | =Description= |
| For this command, MVD module DMAs 0x11C-bytes from a MVD state structure to the above output buffer. | | For this command, MVD module DMAs 0x11C-bytes from a MVD state structure to the above output buffer. |