videoeditorengine/h263decoder/inc/vdxint.h
author Mikael Laine <mikael.laine@ixonos.com>
Fri, 29 Jan 2010 14:08:33 +0200
changeset 0 951a5db380a0
permissions -rw-r--r--
Committing the Video Editor package under the Eclipse Public License

/*
* 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:  
* Internal header for the video demultiplexer module.
*
*/



#ifndef _VDXINT_H_
#define _VDXINT_H_

/*
 * Defines
 */

#ifndef vdxAssert
   #define vdxAssert(exp) assert(exp);
#endif


/*
 * Structs and typedefs
 */

/* type for VLC (variable length code) lookup tables */
typedef struct {
   int val; /* value for code, for example an index of the corresponding table
               in the H.263 recommendation */
   u_char len; /* actual length of code in bits */
} vdxVLCTable_t;

typedef struct{
    int16 code;
    int16 length;
}tVLCTable;


/*
 * Functions defined in viddemux.c (and used from viddemux_mpeg.c)
 */

/* Macroblock Layer */

int vdxGetCBPY(bibBuffer_t *inBuffer, int *index, 
   int *bitErrorIndication);

int vdxGetMCBPCInter(
   bibBuffer_t *inBuffer, 
   int fPLUSPTYPE,
   int fFourMVsPossible,
   int fFirstMBOfPicture,
   int *index, 
   int *bitErrorIndication);

int vdxGetMCBPCIntra(bibBuffer_t *inBuffer, int *index, 
   int *bitErrorIndication);

int vdxGetMVD(bibBuffer_t *inBuffer, int *mvdx10, 
   int *bitErrorIndication);

int vdxUpdateQuant(
   bibBuffer_t *inBuffer, 
   int fMQ,
   int quant,
   int *newQuant,
   int *bitErrorIndication);


/*
 * Functions defined in viddemux_mpeg.c (and used from viddemux.c)
 */

   int vdxGetScaledMVD(bibBuffer_t *inBuffer, int f_code, int *mvd10,
      int *bitErrorIndication);

#endif
// End of File