📄 simpleintrapredictor.h
字号:
/* Open H.264
*
* #include <standard_disclaimer>
*
* Authors: aitorgaray@yifan.net
* _
*/
#include "../Common.h"
#include "IntraPredictor.h"
#if !defined( __SIMPLEINTRAPREDICTOR_H)
#define __SIMPLEINTRAPREDICTOR_H
class SimpleIntraPredictor:IntraPredictor {
public:
virtual void predictLuma4x4( /* in */ Block& source, bool upperLeftSampleAvailable, bool upperSamplesAvailable, bool leftSamplesAvailable,
/* out */ Block predictions[ LUMA_4x4_PREDICTION_COUNT], bool validPredictions[ LUMA_4x4_PREDICTION_COUNT]);
virtual void predictLuma16x16( /* in */ LumaMacroblock& source, bool upperLeftSampleAvailable, bool upperSamplesAvailable, bool leftSamplesAvailable,
/* out */ LumaMacroblock predictions[ LUMA_16x16_PREDICTION_COUNT], bool validPredictions[ LUMA_16x16_PREDICTION_COUNT]);
virtual void predictChroma8x8( /* in */ ChromaMacroblock& source, bool upperLeftSampleAvailable, bool upperSamplesAvailable, bool leftSamplesAvailable,
/* out */ ChromaMacroblock predictions[ CHROMA_8x8_PREDICTION_COUNT], bool validPredictions[ CHROMA_8x8_PREDICTION_COUNT]);
private:
void predictLuma4x4Mode0( byte A, byte B, byte C, byte D, Block& prediction);
void predictLuma4x4Mode1( byte I, byte J, byte K, byte L, Block& prediction);
void predictLuma4x4Mode2( bool upperSamplesAvailable, bool leftSamplesAvailable,
byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, byte I, byte J, byte K, byte L, Block& prediction);
void predictLuma4x4Mode3( byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, Block& prediction);
void predictLuma4x4Mode4( byte M, byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, byte I, byte J, byte K, byte L, Block& prediction);
void predictLuma4x4Mode5( byte M, byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, byte I, byte J, byte K, byte L, Block& prediction);
void predictLuma4x4Mode6( byte M, byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, byte I, byte J, byte K, byte L, Block& prediction);
void predictLuma4x4Mode7( byte A, byte B, byte C, byte D, byte E, byte F, byte G, byte H, Block& prediction);
void predictLuma4x4Mode8( byte I, byte J, byte K, byte L, Block& prediction);
};
#endif
/* $Log:$
*
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -