diff -r 951a5db380a0 -r d87d32eab1a9 videoeditorengine/h263decoder/inc/vdeimb.h --- a/videoeditorengine/h263decoder/inc/vdeimb.h Fri Jan 29 14:08:33 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,139 +0,0 @@ -/* -* Copyright (c) 2010 Ixonos Plc. -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - Initial contribution -* -* Contributors: -* Ixonos Plc -* -* Description: -* A header file for the Video Decoder Engine Image Buffer abstract -* data type. -* -*/ - - -#ifndef _VDEIMB_H_ -#define _VDEIMB_H_ - - - -/* - * Includes - */ - -#include "renapi.h" -#include "rendri.h" - - -/* - * Defines - */ - -/* Displaying status */ -#define VDEIMB_NO_DISPLAYING 1 -#define VDEIMB_WAITING 2 -#define VDEIMB_DISPLAYED 4 - -/* Full-picture freeze status, - see vdeImb_t for description of the definitions */ -#define VDEIMB_FPF_REQUEST 2 -#define VDEIMB_FPF_RELEASE 1 -#define VDEIMB_FPF_NOT_SPECIFIED 0 - - -/* - * Structures and typedefs - */ - -/* {{-output"vdeImb_t_info.txt" -ignore"*" -noCR}} - vdeImb_t defines the structure of a single image buffer which is capable - of storing one YUV 4:2:0 image and a number of paramaters as - side-information. The YUV image as well as the YUV to RGB conversion and - displaying related parameters are kept in a renDrawItem_t structure. - Decoder related parameters are stored in the vdeImb_t itself. - One may directly refer to the member variables of the vdeImb_t structure. - However, one should use the functions and macros in the Renderer Draw Item - Interface for accessing the contents of the drawItem member of vdeImb_t. - {{-output"vdeImb_t_info.txt"}} */ - -/* {{-output"vdeImb_t.txt"}} */ -typedef struct { - renDrawItem_t *drawItem; /* renderer draw item which actually contains - the frame memory (and some parameters) */ - - int fReferenced; /* non-zero if the image buffer is going to be - used as a reference frame. Otherwise, zero. */ - - int tr; /* the TR field of H.263 which is associated with - the image buffer */ - - - int trRef; /* Referenced for a TR prediction, - 0 if the frame is a normal picture referenced - once at maximum (in the next picture), - 1 if the frame is referenced multiple times - in the future frames. - This information is used to update reference - picture data structures. It is neede at least - in streaming applications. */ - - int *yQuantParams; /* luminance quantizer parameter for each - macroblock in scan-order */ - - int *uvQuantParams; /* chrominance quantizer parameter for each - macroblock in scan-order */ - -} vdeImb_t; -/* {{-output"vdeImb_t.txt"}} */ - - -/* - * Function prototypes - */ - -vdeImb_t *vdeImbAlloc(int width, int height, int fYuvNeeded); - -int vdeImbCopyParameters(vdeImb_t *dstImb, const vdeImb_t *srcImb); - -void vdeImbDealloc(vdeImb_t *imb); - - -/* - * Macros - */ - -/* {{-output"vdeImbYUV.txt"}} */ -/* - * vdeImbYUV - * - * Parameters: - * vdeImb_t *pimb a pointer to image buffer - * u_char **ppy, **ppu, **ppv used to return the pointers to the top-left - * corner of Y, U and V image buffers - * respectively - * int *pWidth, *pHeight used to return the width and height of - * the luminance image in pixels - * - * Function: - * This function returns the Y, U and V pointers to the passed image buffer - * as well as the dimensions of the luminance frame of the image buffer. - * - * Returns: - * REN_OK if the function was successful - * REN_ERROR indicating a general error - * - */ - -#define vdeImbYUV(pimb, ppy, ppu, ppv, pWidth, pHeight) \ - renDriYUV((pimb)->drawItem, (ppy), (ppu), (ppv), (pWidth), (pHeight)) -/* {{-output"vdeImbYUV.txt"}} */ - -#endif -// End of File