⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intrapredictionprocess.h

📁 一个可以在DM642上运新的h.264算法
💻 H
字号:
/*	Open H.264
 *
 *	#include	<standard_disclaimer>
 *
 *  Authors:    aitorgaray@yifan.net
 *              _
 */

#include    "../Common.h"
#include    "IntraPredictor.h"
#include    "../transform/Transform.h"
#include    "../LumaMacroblock.h"
#include    "../sad/SADCalculator.h"
#include    "../quantize/Quantize.h"

#if !defined( __INTRA_PREDICTION_PROCESS_H)
#define __INTRA_PREDICTION_PROCESS_H

class IntraPredictionProcess {

    protected:

        IntraPredictor&     _intraPredictor;
        Transform&          _transform;
        SADCalculator&      _sadCalculator;
        Quantize&           _quantize;
    
    protected:

        //  *noTE*  'Transform' used by Hadamar based "rate-distorsion" optimization
        //  *toDO*  in a future, real rate-distortion analysis will require 'Quantize' & 'Entropy'
        IntraPredictionProcess( IntraPredictor& intraPredictor, Transform& transform, SADCalculator& sadCalculator, Quantize& quantize);

    public:

        //  *toDO*  generalize and sync 'Plane', 'Frame'... names
        //  *noTE*  the method needs the quantization parameter ( qp) for the decoding loop-back
        //  returns:    16  if 16x16 choosed, macroblockMode is filled
        //  returns:    4   if 4x4 choosed, blockModes[][] is filled
        virtual int predictLumaMacroBlock( /* in out */ LumaMacroblock& macroblock,
                                           /* out */ int* macroblockMode, int blockModes[ 4][ 4],
                                           /* in */ int qp) = 0;
};

#endif

/*  $Log:$
 *
 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -