Home | History | Annotate | Download | only in src
      1 /*
      2  * Copyright (C) 2007-2008 ARM Limited
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  *
     16  */
     17 /* ----------------------------------------------------------------
     18  *
     19  *
     20  * File Name:  omxVCM4P10_DecodeChromaDcCoeffsToPairCAVLC.c
     21  * OpenMAX DL: v1.0.2
     22  * Revision:   12290
     23  * Date:       Wednesday, April 9, 2008
     24  *
     25  *
     26  *
     27  *
     28  * H.264 decode coefficients module
     29  *
     30  */
     31 
     32 #include "omxtypes.h"
     33 #include "armOMX.h"
     34 #include "omxVC.h"
     35 
     36 #include "armCOMM.h"
     37 #include "armVC.h"
     38 
     39 /**
     40  * Function: omxVCM4P10_DecodeChromaDcCoeffsToPairCAVLC
     41  *
     42  * Description:
     43  * Performs CAVLC decoding and inverse raster scan for 2x2 block of
     44  * ChromaDCLevel. The decoded coefficients in packed position-coefficient
     45  * buffer are stored in increasing raster scan order, namely position order.
     46  *
     47  * Remarks:
     48  *
     49  * Parameters:
     50  * [in]	ppBitStream		Double pointer to current byte in bit stream
     51  *								buffer
     52  * [in]	pOffset			Pointer to current bit position in the byte
     53  *								pointed to by *ppBitStream
     54  * [out]	ppBitStream		*ppBitStream is updated after each block is decoded
     55  * [out]	pOffset			*pOffset is updated after each block is decoded
     56  * [out]	pNumCoeff		Pointer to the number of nonzero coefficients
     57  *								in this block
     58  * [out]	ppPosCoefbuf	Double pointer to destination residual
     59  *								coefficient-position pair buffer
     60  *
     61  * Return Value:
     62  * Standard omxError result. See enumeration for possible result codes.
     63  *
     64  */
     65 
     66 OMXResult omxVCM4P10_DecodeChromaDcCoeffsToPairCAVLC (
     67      const OMX_U8** ppBitStream,
     68      OMX_S32* pOffset,
     69      OMX_U8* pNumCoeff,
     70      OMX_U8** ppPosCoefbuf
     71  )
     72 
     73 {
     74     return armVCM4P10_DecodeCoeffsToPair(ppBitStream, pOffset, pNumCoeff,
     75                                          ppPosCoefbuf, 17, 4);
     76 
     77 }
     78