MHEG5  15.3.0
source/decoder/inc/decoder.h File Reference

The functions in this file are OPTIONALLY provided by Receiver Platform *. More...

#include "techtype.h"

Go to the source code of this file.

Data Structures

struct  s_image

Defines

#define HAS_TRANSPARENCY   0x00
#define COMPLETELY_OPAQUE   0x01
#define PIX_BYTES_PLT   1
#define PIX_BYTES_RGB   3
#define PIX_BYTES_ARGB   4
#define SD_METRIC_RESOLUTION   2835
#define HD_720_METRIC_RESOLUTION   3543
#define HD_1080_METRIC_RESOLUTION   5315

Typedefs

typedef struct s_image S_IMAGE

Functions

S_IMAGEDEC_DecodePng (U8BIT *data, U32BIT size)
 Allocate memory for PNG and decode bitmap To free "S_IMAGE" memory, DEC_FreePng will be called.
void DEC_FreePng (S_IMAGE *image)
 Free memory allocated for PNG bitmap.
S_IMAGEDEC_DecodeJpg (U8BIT *data, U32BIT size)
 Allocate memory for JPEG and decode bitmap To free "S_IMAGE" memory, DEC_FreeJpg will be called.
void DEC_FreeJpg (S_IMAGE *image)
 Free memory allocated for JPEG bitmap.
void * DEC_OSDCreateBmpSurf (U32BIT s_width, U32BIT s_height, U32BIT i_width, U32BIT i_height, S_IMAGE *image, U32BIT *pitch)
 This creates a hardware surface of size using STB_OSDMhegCreateSurface() with s_width and s_height, and fills the surface with the IMAGE data. The bitmap must be stretched or shrunk onto surface with image size (i_width,i_height) When surface size is greater than image size, then the bitmap is 'tiled' to fill the surface. Otherwise sizes will be equal. Implementations may choose to ignore requested surface size and leave MHEG5 to do the tiling (where graphic memory is limited). If so, 'tiled' should be set to FALSE, and use (i_width,i_height) for surface size. Colour format of resulting surface is as used in the call to MHEG5_Open() with 'ColourDepth' in setup config.

Detailed Description

The functions in this file are OPTIONALLY provided by Receiver Platform *.

Date:
30/04/2008
Author:
Adam Sturtridge

Function Documentation

S_IMAGE* DEC_DecodeJpg ( U8BIT *  data,
U32BIT  len 
)

Allocate memory for JPEG and decode bitmap To free "S_IMAGE" memory, DEC_FreeJpg will be called.

Parameters:
dataJPEG data object
sizeSize of JPEG data in bytes.
Returns:
S_IMAGE* The decoded bitmap

Allocate memory for JPEG and decode bitmap To free "S_IMAGE" memory, DEC_FreeJpg will be called.

Parameters:
void* data JPG data. int len Length of data for JPG.
Returns:
void * The decoded bitmap.
Warning:
Bug:
S_IMAGE* DEC_DecodePng ( U8BIT *  data,
U32BIT  len 
)

Allocate memory for PNG and decode bitmap To free "S_IMAGE" memory, DEC_FreePng will be called.

Parameters:
dataPNG data object
sizeSize of PNG data in bytes.
Returns:
S_IMAGE* The decoded bitmap

Allocate memory for PNG and decode bitmap To free "S_IMAGE" memory, DEC_FreePng will be called.

Parameters:
void* data PNG data. int len Length of data for PNG.
Returns:
S_IMAGE * The decoded bitmap.
Warning:
Bug:
void DEC_FreeJpg ( S_IMAGE image)

Free memory allocated for JPEG bitmap.

Parameters:
dataJPG image
Returns:
void
void DEC_FreePng ( S_IMAGE image)

Free memory allocated for PNG bitmap.

Parameters:
dataPNG image
Returns:
void
void* DEC_OSDCreateBmpSurf ( U32BIT  s_width,
U32BIT  s_height,
U32BIT  i_width,
U32BIT  i_height,
S_IMAGE image,
U32BIT *  pStride 
)

This creates a hardware surface of size using STB_OSDMhegCreateSurface() with s_width and s_height, and fills the surface with the IMAGE data. The bitmap must be stretched or shrunk onto surface with image size (i_width,i_height) When surface size is greater than image size, then the bitmap is 'tiled' to fill the surface. Otherwise sizes will be equal. Implementations may choose to ignore requested surface size and leave MHEG5 to do the tiling (where graphic memory is limited). If so, 'tiled' should be set to FALSE, and use (i_width,i_height) for surface size. Colour format of resulting surface is as used in the call to MHEG5_Open() with 'ColourDepth' in setup config.

Parameters:
s_widthWidth of requested surface in pixels
s_heightHeight of requested surface in pixels
i_widthWidth of image on surface in pixels
i_heightHeight of image on surface in pixels
imageimage structure returned by DEC_DecodePNG() or DEC_DecodeJPG()
pitchwidth of returned buffer in bytes.
Returns:
void* Success - Handle to surface. Failure - NULL (or zero)
 All Data Structures Files Functions Variables Typedefs Defines