v_mix
Vitis Drivers API Documentation
|
Data Structures | |
struct | XVMix_LogoColorKey |
This typedef contains configuration information for Logo Color Key. More... | |
struct | XVMix_Layer |
This typedef contains configuration information for a given layer. More... | |
struct | XV_Mix_l2 |
Mixer driver Layer 2 data. More... | |
Macros | |
#define | XVMix_GetNumLayers(InstancePtr) ((InstancePtr)->Mix.Config.NumLayers) |
This macro returns the available layers in IP. More... | |
#define | XVMix_GetBackgndColor(InstancePtr) ((InstancePtr)->BkgndColor) |
This macro returns the current set background color id. More... | |
#define | XVMix_GetLayerInterfaceType(InstancePtr, LayerId) ((InstancePtr)->Mix.Config.LayerIntrfType[LayerId-1]) |
This macro returns the interface type for the specified layer. More... | |
#define | XVMix_IsLogoEnabled(InstancePtr) ((InstancePtr)->Mix.Config.LogoEn) |
This macro returns if Logo layer is enabled. More... | |
#define | XVMix_IsLogoColorKeyEnabled(InstancePtr) ((InstancePtr)->Mix.Config.LogoColorKeyEn) |
This macro returns if Logo layer color key feature is enabled. More... | |
#define | XVMix_IsLogoPixAlphaEnabled(InstancePtr) ((InstancePtr)->Mix.Config.LogoPixAlphaEn) |
This macro returns if Logo layer alpha feature is enabled. More... | |
#define | XVMix_IsCscCoeffsRegsEnabled(InstancePtr) ((InstancePtr)->Mix.Config.CscCoeffsRegsEn) |
This macro returns if CSC Coefficient Registers is enabled. More... | |
#define | XVMix_IsAlphaEnabled(InstancePtr, LayerId) ((InstancePtr)->Mix.Config.AlphaEn[LayerId-1]) |
This macro returns if alpha feature of specified layer is available. More... | |
#define | XVMix_IsScalingEnabled(InstancePtr, LayerId) ((InstancePtr)->Mix.Config.ScalingEn[LayerId-1]) |
This macro returns if scaling feature of specified layer is available. More... | |
#define | XVMix_IsLayerInterfaceStream(InstancePtr, LayerId) ((InstancePtr)->Mix.Config.LayerIntrfType[LayerId-1] == XVMIX_LAYER_TYPE_STREAM) |
This macro check if specified layer interface type is STREAM. More... | |
Typedefs | |
typedef void(* | XVMix_Callback )(void *CallbackRef) |
Callback type for interrupt. More... | |
Enumerations | |
enum | XVMix_BackgroundId |
This typedef enumerates supported background colors. More... | |
enum | XVMix_Scalefactor |
This typedef enumerates scale factors supported by mixer core. More... | |
enum | XVMix_LayerId |
This typedef enumerates layer index. More... | |
enum | XVMix_LayerType |
This typedef enumerates layer interface type. More... | |
Functions | |
int | XVMix_Initialize (XV_Mix_l2 *InstancePtr, u16 DeviceId) |
This function initializes the core instance. More... | |
void | XVMix_InterruptEnable (XV_Mix_l2 *InstancePtr) |
This function enables interrupts in the core. More... | |
void | XVMix_InterruptDisable (XV_Mix_l2 *InstancePtr) |
This function disables interrupts in the core. More... | |
void | XVMix_Start (XV_Mix_l2 *InstancePtr) |
This function starts the core instance. More... | |
void | XVMix_Stop (XV_Mix_l2 *InstancePtr) |
This function stops the core instance. More... | |
void | XVMix_SetVidStream (XV_Mix_l2 *InstancePtr, const XVidC_VideoStream *StrmIn) |
This function configures the mixer input stream. More... | |
int | XVMix_LayerEnable (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function enables the specified layer of the core instance. More... | |
int | XVMix_LayerDisable (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function disables the specified layer of the core instance. More... | |
int | XVMix_IsLayerEnabled (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function returns state of the specified layer [enabled or disabled]. More... | |
void | XVMix_SetBackgndColor (XV_Mix_l2 *InstancePtr, XVMix_BackgroundId ColorId, XVidC_ColorDepth bpc) |
This function sets the background color to be displayed when stream layer is disabled. More... | |
int | XVMix_SetLayerWindow (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, XVidC_VideoWindow *Win, u32 StrideInBytes) |
This function configures the window coordinates of the specified layer. More... | |
int | XVMix_GetLayerWindow (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, XVidC_VideoWindow *Win) |
This function read the window coordinates of the specified layer. More... | |
int | XVMix_MoveLayerWindow (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, u16 StartX, u16 StartY) |
This function moved the window position of the specified layer to new coordinates. More... | |
int | XVMix_SetLayerScaleFactor (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, XVMix_Scalefactor Scale) |
This function configures the scaling factor of the specified layer. More... | |
int | XVMix_GetLayerScaleFactor (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function returns the scaling factor of the specified layer. More... | |
int | XVMix_SetLayerAlpha (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, u16 Alpha) |
This function configures the Alpha level of the specified layer. More... | |
int | XVMix_GetLayerAlpha (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function returns the alpha of the specified layer. More... | |
int | XVMix_GetLayerColorFormat (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, XVidC_ColorFormat *Cfmt) |
This function reads the color format of the specified layer. More... | |
int | XVMix_SetLayerBufferAddr (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, UINTPTR Addr) |
This function sets the buffer address of the specified layer. More... | |
UINTPTR | XVMix_GetLayerBufferAddr (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function reads the buffer address of the specified layer. More... | |
int | XVMix_SetLayerChromaBufferAddr (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId, UINTPTR Addr) |
This function sets the buffer address of the specified layer for the UV plane for semi-planar formats. More... | |
UINTPTR | XVMix_GetLayerChromaBufferAddr (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function reads the buffer address of the specified layer for the UV plane for semi-planar formats. More... | |
int | XVMix_SetLogoColorKey (XV_Mix_l2 *InstancePtr, XVMix_LogoColorKey ColorKeyData) |
This function sets the logo layer color key data. More... | |
int | XVMix_GetLogoColorKey (XV_Mix_l2 *InstancePtr, XVMix_LogoColorKey *ColorKeyData) |
This function reads the logo layer color key data. More... | |
int | XVMix_LoadLogo (XV_Mix_l2 *InstancePtr, XVidC_VideoWindow *Win, u8 *RBuffer, u8 *GBuffer, u8 *BBuffer) |
This function loads the logo data into core BRAM. More... | |
int | XVMix_LoadLogoPixelAlpha (XV_Mix_l2 *InstancePtr, XVidC_VideoWindow *Win, u8 *ABuffer) |
This function loads the logo pixel alpha data into core BRAM. More... | |
void | XVMix_DbgReportStatus (XV_Mix_l2 *InstancePtr) |
This function reports the mixer status. More... | |
void | XVMix_DbgLayerInfo (XV_Mix_l2 *InstancePtr, XVMix_LayerId LayerId) |
This function reports the mixer status of the specified layer. More... | |
void | XVMix_InterruptHandler (void *InstancePtr) |
This function is the interrupt handler for the mixer core driver. More... | |
int | XVMix_SetCallback (XV_Mix_l2 *InstancePtr, void *CallbackFunc, void *CallbackRef) |
This function installs an asynchronous callback function for Mixer interrupt. More... | |
#define XVMix_GetBackgndColor | ( | InstancePtr | ) | ((InstancePtr)->BkgndColor) |
This macro returns the current set background color id.
InstancePtr | is a pointer to the core instance. |
#define XVMix_GetLayerInterfaceType | ( | InstancePtr, | |
LayerId | |||
) | ((InstancePtr)->Mix.Config.LayerIntrfType[LayerId-1]) |
This macro returns the interface type for the specified layer.
InstancePtr | is a pointer to the core instance. |
LayerId | is the layer index for which information is requested |
Referenced by XVMix_DbgLayerInfo().
#define XVMix_GetNumLayers | ( | InstancePtr | ) | ((InstancePtr)->Mix.Config.NumLayers) |
This macro returns the available layers in IP.
InstancePtr | is a pointer to the core instance. |
Referenced by XVMix_DbgReportStatus(), XVMix_GetLayerAlpha(), XVMix_GetLayerBufferAddr(), XVMix_GetLayerChromaBufferAddr(), XVMix_GetLayerColorFormat(), XVMix_GetLayerScaleFactor(), XVMix_GetLayerWindow(), XVMix_LayerDisable(), XVMix_LayerEnable(), XVMix_MoveLayerWindow(), XVMix_SetLayerAlpha(), XVMix_SetLayerBufferAddr(), XVMix_SetLayerChromaBufferAddr(), XVMix_SetLayerScaleFactor(), and XVMix_SetLayerWindow().
#define XVMix_IsAlphaEnabled | ( | InstancePtr, | |
LayerId | |||
) | ((InstancePtr)->Mix.Config.AlphaEn[LayerId-1]) |
This macro returns if alpha feature of specified layer is available.
InstancePtr | is a pointer to the core instance. |
LayerId | is the layer index for which information is requested |
Referenced by XVMix_DbgLayerInfo(), XVMix_GetLayerAlpha(), and XVMix_SetLayerAlpha().
#define XVMix_IsCscCoeffsRegsEnabled | ( | InstancePtr | ) | ((InstancePtr)->Mix.Config.CscCoeffsRegsEn) |
This macro returns if CSC Coefficient Registers is enabled.
InstancePtr | is a pointer to the core instance. |
#define XVMix_IsLayerInterfaceStream | ( | InstancePtr, | |
LayerId | |||
) | ((InstancePtr)->Mix.Config.LayerIntrfType[LayerId-1] == XVMIX_LAYER_TYPE_STREAM) |
This macro check if specified layer interface type is STREAM.
InstancePtr | is a pointer to the core instance. |
LayerId | is the layer index for which information is requested |
Referenced by XVMix_SetLayerWindow().
#define XVMix_IsLogoColorKeyEnabled | ( | InstancePtr | ) | ((InstancePtr)->Mix.Config.LogoColorKeyEn) |
This macro returns if Logo layer color key feature is enabled.
InstancePtr | is a pointer to the core instance. |
Referenced by XVMix_DbgLayerInfo(), XVMix_GetLogoColorKey(), and XVMix_SetLogoColorKey().
#define XVMix_IsLogoEnabled | ( | InstancePtr | ) | ((InstancePtr)->Mix.Config.LogoEn) |
This macro returns if Logo layer is enabled.
InstancePtr | is a pointer to the core instance. |
Referenced by XVMix_GetLayerAlpha(), XVMix_GetLayerScaleFactor(), XVMix_GetLayerWindow(), XVMix_GetLogoColorKey(), XVMix_LayerDisable(), XVMix_LayerEnable(), XVMix_LoadLogo(), XVMix_LoadLogoPixelAlpha(), XVMix_MoveLayerWindow(), XVMix_SetLayerAlpha(), XVMix_SetLayerScaleFactor(), XVMix_SetLayerWindow(), and XVMix_SetLogoColorKey().
#define XVMix_IsLogoPixAlphaEnabled | ( | InstancePtr | ) | ((InstancePtr)->Mix.Config.LogoPixAlphaEn) |
This macro returns if Logo layer alpha feature is enabled.
InstancePtr | is a pointer to the core instance. |
Referenced by XVMix_DbgLayerInfo(), and XVMix_LoadLogoPixelAlpha().
#define XVMix_IsScalingEnabled | ( | InstancePtr, | |
LayerId | |||
) | ((InstancePtr)->Mix.Config.ScalingEn[LayerId-1]) |
This macro returns if scaling feature of specified layer is available.
InstancePtr | is a pointer to the core instance. |
LayerId | is the layer index for which information is requested |
Referenced by XVMix_DbgLayerInfo(), XVMix_GetLayerScaleFactor(), and XVMix_SetLayerScaleFactor().
typedef void(* XVMix_Callback)(void *CallbackRef) |
Callback type for interrupt.
CallbackRef | is a callback reference passed in by the upper layer when setting the callback functions, and passed back to the upper layer when the callback is invoked. |
enum XVMix_BackgroundId |
This typedef enumerates supported background colors.
enum XVMix_LayerId |
This typedef enumerates layer index.
enum XVMix_LayerType |
This typedef enumerates layer interface type.
enum XVMix_Scalefactor |
This typedef enumerates scale factors supported by mixer core.
void XVMix_DbgLayerInfo | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function reports the mixer status of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XV_Mix_l2::Stream, XVMix_GetLayerAlpha(), XVMix_GetLayerBufferAddr(), XVMix_GetLayerChromaBufferAddr(), XVMix_GetLayerColorFormat(), XVMix_GetLayerInterfaceType, XVMix_GetLayerScaleFactor(), XVMix_GetLayerWindow(), XVMix_GetLogoColorKey(), XVMix_IsAlphaEnabled, XVMix_IsLayerEnabled(), XVMix_IsLogoColorKeyEnabled, XVMix_IsLogoPixAlphaEnabled, and XVMix_IsScalingEnabled.
void XVMix_DbgReportStatus | ( | XV_Mix_l2 * | InstancePtr | ) |
This function reports the mixer status.
InstancePtr | is a pointer to core instance to be worked upon |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_mix_Config::MaxDataWidth, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, XVMix_GetNumLayers, and XVMix_IsLayerEnabled().
int XVMix_GetLayerAlpha | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function returns the alpha of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer for which information is requested |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XVMix_GetNumLayers, XVMix_IsAlphaEnabled, and XVMix_IsLogoEnabled.
Referenced by XVMix_DbgLayerInfo().
UINTPTR XVMix_GetLayerBufferAddr | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function reads the buffer address of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, and XVMix_GetNumLayers.
Referenced by XVMix_DbgLayerInfo().
UINTPTR XVMix_GetLayerChromaBufferAddr | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function reads the buffer address of the specified layer for the UV plane for semi-planar formats.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, and XVMix_GetNumLayers.
Referenced by XVMix_DbgLayerInfo().
int XVMix_GetLayerColorFormat | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
XVidC_ColorFormat * | Cfmt | ||
) |
This function reads the color format of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
cfmt | is pointer to color format return variable |
References XV_mix_Config::BaseAddress, XV_mix_Config::ColorFormat, XV_mix::Config, XV_Mix_l2::Mix, and XVMix_GetNumLayers.
Referenced by XVMix_DbgLayerInfo().
int XVMix_GetLayerScaleFactor | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function returns the scaling factor of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer for which information is requested |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XVMix_GetNumLayers, XVMix_IsLogoEnabled, and XVMix_IsScalingEnabled.
Referenced by XVMix_DbgLayerInfo(), XVMix_MoveLayerWindow(), and XVMix_SetLayerWindow().
int XVMix_GetLayerWindow | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
XVidC_VideoWindow * | Win | ||
) |
This function read the window coordinates of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer for which window coordinates are to be set |
Win | is the pointer to return window coordinates |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XVMix_GetNumLayers, and XVMix_IsLogoEnabled.
Referenced by XVMix_DbgLayerInfo(), XVMix_MoveLayerWindow(), and XVMix_SetLayerScaleFactor().
int XVMix_GetLogoColorKey | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LogoColorKey * | ColorKeyData | ||
) |
This function reads the logo layer color key data.
InstancePtr | is a pointer to core instance to be worked upon |
ColorKeyData | is the structure that holds return min/max values |
References XV_Mix_l2::Mix, XVMix_IsLogoColorKeyEnabled, and XVMix_IsLogoEnabled.
Referenced by XVMix_DbgLayerInfo().
int XVMix_Initialize | ( | XV_Mix_l2 * | InstancePtr, |
u16 | DeviceId | ||
) |
This function initializes the core instance.
InstancePtr | is a pointer to core instance to be worked upon |
DeviceId | is instance id of the core |
References XV_Mix_l2::Mix.
void XVMix_InterruptDisable | ( | XV_Mix_l2 * | InstancePtr | ) |
This function disables interrupts in the core.
InstancePtr | is a pointer to core instance to be worked upon |
References XV_Mix_l2::Mix.
void XVMix_InterruptEnable | ( | XV_Mix_l2 * | InstancePtr | ) |
This function enables interrupts in the core.
InstancePtr | is a pointer to core instance to be worked upon |
References XV_Mix_l2::Mix.
void XVMix_InterruptHandler | ( | void * | InstancePtr | ) |
This function is the interrupt handler for the mixer core driver.
This handler clears the pending interrupt and determined if the source is frame done signal. If yes, starts the next frame processing and calls the registered callback function
The application is responsible for connecting this function to the interrupt system. Application beyond this driver is also responsible for providing callbacks to handle interrupts and installing the callbacks using XVMix_SetCallback() during initialization phase.
InstancePtr | is a pointer to the core instance that just interrupted. |
References XV_Mix_l2::CallbackRef, XV_Mix_l2::FrameDoneCallback, XV_mix::IsReady, and XV_Mix_l2::Mix.
int XVMix_IsLayerEnabled | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function returns state of the specified layer [enabled or disabled].
InstancePtr | is a pointer to the core instance. |
LayerId | is the layer index for which information is requested |
References XV_Mix_l2::Mix.
Referenced by XVMix_DbgLayerInfo(), and XVMix_DbgReportStatus().
int XVMix_LayerDisable | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function disables the specified layer of the core instance.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is layer number to be disabled |
References XV_Mix_l2::Mix, XVMix_GetNumLayers, and XVMix_IsLogoEnabled.
int XVMix_LayerEnable | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId | ||
) |
This function enables the specified layer of the core instance.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is layer number to be enabled |
References XV_Mix_l2::Mix, XVMix_GetNumLayers, and XVMix_IsLogoEnabled.
int XVMix_LoadLogo | ( | XV_Mix_l2 * | InstancePtr, |
XVidC_VideoWindow * | Win, | ||
u8 * | RBuffer, | ||
u8 * | GBuffer, | ||
u8 * | BBuffer | ||
) |
This function loads the logo data into core BRAM.
InstancePtr | is a pointer to core instance to be worked upon |
Win | is logo window (logo width must be multiple of 4 bytes) |
RBuffer | is the pointer to Red buffer |
GBuffer | is the pointer to Green buffer |
BBuffer | is the pointer to Blue buffer |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Layer, XV_mix_Config::MaxLogoHeight, XV_mix_Config::MaxLogoWidth, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, XVMix_IsLogoEnabled, and XVMix_SetLayerWindow().
int XVMix_LoadLogoPixelAlpha | ( | XV_Mix_l2 * | InstancePtr, |
XVidC_VideoWindow * | Win, | ||
u8 * | ABuffer | ||
) |
This function loads the logo pixel alpha data into core BRAM.
InstancePtr | is a pointer to core instance to be worked upon |
Win | is logo window (logo width must be multiple of 4 bytes) |
ABuffer | is the pointer to Pixel Alpha buffer |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_mix_Config::MaxLogoHeight, XV_mix_Config::MaxLogoWidth, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, XVMix_IsLogoEnabled, and XVMix_IsLogoPixAlphaEnabled.
int XVMix_MoveLayerWindow | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
u16 | StartX, | ||
u16 | StartY | ||
) |
This function moved the window position of the specified layer to new coordinates.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer for which window position is to be set |
StartX | is the new X position |
StartY | is the new Y position |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Layer, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, XV_Mix_l2::Stream, XVMix_GetLayerScaleFactor(), XVMix_GetLayerWindow(), XVMix_GetNumLayers, and XVMix_IsLogoEnabled.
void XVMix_SetBackgndColor | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_BackgroundId | ColorId, | ||
XVidC_ColorDepth | bpc | ||
) |
This function sets the background color to be displayed when stream layer is disabled.
InstancePtr | is a pointer to core instance to be worked upon |
ColorId | is requested background color |
bpc | is color depth |
References XV_Mix_l2::Mix.
int XVMix_SetCallback | ( | XV_Mix_l2 * | InstancePtr, |
void * | CallbackFunc, | ||
void * | CallbackRef | ||
) |
This function installs an asynchronous callback function for Mixer interrupt.
InstancePtr | is a pointer to the mixer core instance. |
CallbackFunc | is the address of the callback function. |
CallbackRef | is a user data item that will be passed to the callback function when it is invoked. |
References XV_Mix_l2::CallbackRef, and XV_Mix_l2::FrameDoneCallback.
int XVMix_SetLayerAlpha | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
u16 | Alpha | ||
) |
This function configures the Alpha level of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
Alpha | is the new value |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XVMix_GetNumLayers, XVMix_IsAlphaEnabled, and XVMix_IsLogoEnabled.
int XVMix_SetLayerBufferAddr | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
UINTPTR | Addr | ||
) |
This function sets the buffer address of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
Addr | is the absolute address of buffer in memory |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Layer, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, and XVMix_GetNumLayers.
int XVMix_SetLayerChromaBufferAddr | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
UINTPTR | Addr | ||
) |
This function sets the buffer address of the specified layer for the UV plane for semi-planar formats.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
Addr | is the absolute address of second buffer in memory |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Layer, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, and XVMix_GetNumLayers.
int XVMix_SetLayerScaleFactor | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
XVMix_Scalefactor | Scale | ||
) |
This function configures the scaling factor of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer to be updated |
Scale | is the scale factor |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Mix, XV_Mix_l2::Stream, XVMix_GetLayerWindow(), XVMix_GetNumLayers, XVMix_IsLogoEnabled, and XVMix_IsScalingEnabled.
int XVMix_SetLayerWindow | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LayerId | LayerId, | ||
XVidC_VideoWindow * | Win, | ||
u32 | StrideInBytes | ||
) |
This function configures the window coordinates of the specified layer.
InstancePtr | is a pointer to core instance to be worked upon |
LayerId | is the layer for which window coordinates are to be set |
Win | is the window coordinates in pixels |
StrideInBytes | is the stride of the requested window yuv422 Color space requires 2 Bytes/Pixel yuv444 Color space requires 4 Bytes/Pixel Equation to compute stride is as follows Stride = (Window_Width * (YUV422 ? 2 : 4)) (Applicable only when layer type is Memory) |
References XV_mix_Config::BaseAddress, XV_mix::Config, XV_Mix_l2::Layer, XV_mix_Config::MaxHeight, XV_mix_Config::MaxLogoHeight, XV_mix_Config::MaxLogoWidth, XV_Mix_l2::Mix, XV_mix_Config::PixPerClk, XV_Mix_l2::Stream, XVMix_GetLayerScaleFactor(), XVMix_GetNumLayers, XVMix_IsLayerInterfaceStream, and XVMix_IsLogoEnabled.
Referenced by XVMix_LoadLogo().
int XVMix_SetLogoColorKey | ( | XV_Mix_l2 * | InstancePtr, |
XVMix_LogoColorKey | ColorKeyData | ||
) |
This function sets the logo layer color key data.
InstancePtr | is a pointer to core instance to be worked upon |
ColorKeyData | is the structure that holds the min/max values |
References XV_Mix_l2::Mix, XVMix_IsLogoColorKeyEnabled, and XVMix_IsLogoEnabled.
void XVMix_SetVidStream | ( | XV_Mix_l2 * | InstancePtr, |
const XVidC_VideoStream * | StrmIn | ||
) |
This function configures the mixer input stream.
InstancePtr | is a pointer to the core instance to be worked on. |
StrmIn | is the pointer to input stream configuration |
References XV_mix::Config, XV_mix_Config::MaxHeight, XV_mix_Config::MaxWidth, XV_Mix_l2::Mix, and XV_Mix_l2::Stream.
void XVMix_Start | ( | XV_Mix_l2 * | InstancePtr | ) |
This function starts the core instance.
InstancePtr | is a pointer to core instance to be worked upon |
References XV_Mix_l2::Mix.
void XVMix_Stop | ( | XV_Mix_l2 * | InstancePtr | ) |
This function stops the core instance.
InstancePtr | is a pointer to core instance to be worked upon |
References XV_Mix_l2::Mix.