10 #define MVD_STATUS_OK 0x17000
11 #define MVD_STATUS_PARAMSET 0x17001
12 #define MVD_STATUS_BUSY 0x17002
13 #define MVD_STATUS_FRAMEREADY 0x17003
14 #define MVD_STATUS_INCOMPLETEPROCESSING 0x17004
15 #define MVD_STATUS_NALUPROCFLAG 0x17007
18 #define MVD_CHECKNALUPROC_SUCCESS(x) (x==MVD_STATUS_OK || x==MVD_STATUS_PARAMSET || x==MVD_STATUS_FRAMEREADY || x==MVD_STATUS_INCOMPLETEPROCESSING || x==MVD_STATUS_NALUPROCFLAG)
21 #define MVD_DEFAULT_WORKBUF_SIZE 0x9006C8
58 u32 input_crop_height;
93 s8 cmd5_inval0, cmd5_inval1, cmd5_inval2;
void mvdstdExit(void)
Shuts down MVDSTD.
Result MVDSTD_SetConfig(MVDSTD_Config *config)
Sets the current configuration of MVDSTD.
Result mvdstdSetupOutputBuffers(MVDSTD_OutputBuffersEntryList *entrylist, u32 bufsize)
New3DS Internet Browser doesn't use this.
MVDSTD_Mode
Processing mode.
Definition: mvd.h:24
@ MVDMODE_VIDEOPROCESSING
Processing video.
Definition: mvd.h:26
@ MVDMODE_COLORFORMATCONV
Converting color formats.
Definition: mvd.h:25
Result mvdstdRenderVideoFrame(MVDSTD_Config *config, bool wait)
Renders the video frame.
void mvdstdGenerateDefaultConfig(MVDSTD_Config *config, u32 input_width, u32 input_height, u32 output_width, u32 output_height, u32 *vaddr_colorconv_indata, u32 *vaddr_outdata0, u32 *vaddr_outdata1)
Generates a default MVDSTD configuration.
Result mvdstdInit(MVDSTD_Mode mode, MVDSTD_InputFormat input_type, MVDSTD_OutputFormat output_type, u32 size, MVDSTD_InitStruct *initstruct)
Initializes MVDSTD.
MVDSTD_InputFormat
Input format.
Definition: mvd.h:30
@ MVD_INPUT_H264
H264.
Definition: mvd.h:32
@ MVD_INPUT_YUYV422
YUYV422.
Definition: mvd.h:31
MVDSTD_OutputFormat
Output format.
Definition: mvd.h:36
@ MVD_OUTPUT_RGB565
RGB565.
Definition: mvd.h:39
@ MVD_OUTPUT_BGR565
BGR565.
Definition: mvd.h:38
@ MVD_OUTPUT_YUYV422
YUYV422.
Definition: mvd.h:37
Result mvdstdOverrideOutputBuffers(void *cur_outdata0, void *cur_outdata1, void *new_outdata0, void *new_outdata1)
New3DS Internet Browser doesn't use this.
Result mvdstdConvertImage(MVDSTD_Config *config)
Run color-format-conversion.
Result mvdstdProcessVideoFrame(void *inbuf_vaddr, size_t size, u32 flag, MVDSTD_ProcessNALUnitOut *out)
Processes a video frame(specifically a NAL-unit).
Processing configuration.
Definition: mvd.h:43
u32 output_y_pos
Same as above except for the Y pos.
Definition: mvd.h:69
u32 unk_x04
Unknown.
Definition: mvd.h:45
u32 physaddr_colorconv_unk2
Physical address used with color conversion.
Definition: mvd.h:52
u32 output_height_override
Same as output_width_override except for the output height.
Definition: mvd.h:71
MVDSTD_InputFormat input_type
Input type.
Definition: mvd.h:44
u32 flag_x104
This enables using the following 4 words when non-zero.
Definition: mvd.h:67
u32 outwidth
Output width.
Definition: mvd.h:62
MVDSTD_OutputFormat output_type
Output type.
Definition: mvd.h:61
u32 physaddr_outdata0
Physical address of output data.
Definition: mvd.h:64
u32 inheight
Input height.
Definition: mvd.h:48
u32 unk_x08
Unknown. Referred to as "H264 range" in SKATER.
Definition: mvd.h:46
u32 outheight
Output height.
Definition: mvd.h:63
u32 enable_cropping
Enables cropping with the input image when non-zero via the following 4 words.
Definition: mvd.h:55
u32 physaddr_colorconv_unk0
Physical address used with color conversion.
Definition: mvd.h:50
u32 output_x_pos
Output X position in the output buffer.
Definition: mvd.h:68
u32 unk_x54
Unknown.
Definition: mvd.h:60
u32 physaddr_colorconv_indata
Physical address of color conversion input data.
Definition: mvd.h:49
u32 physaddr_colorconv_unk1
Physical address used with color conversion.
Definition: mvd.h:51
u32 inwidth
Input width.
Definition: mvd.h:47
u32 output_width_override
Used for aligning the output width when larger than the output width. Overrides the output width when...
Definition: mvd.h:70
u32 physaddr_colorconv_unk3
Physical address used with color conversion.
Definition: mvd.h:53
u32 physaddr_outdata1
Additional physical address for output data, only used when the output format type is value 0x0002000...
Definition: mvd.h:65
This can be used to override the default input values for MVDSTD commands during initialization with ...
Definition: mvd.h:92
uint8_t u8
would be nice if newlib had this already
Definition: types.h:21
int8_t s8
8-bit signed integer
Definition: types.h:26
s32 Result
Function result.
Definition: types.h:42
uint32_t u32
32-bit unsigned integer
Definition: types.h:23