VideoCodec/Modules/Prediction/FrameDifference.h
#ifndef FRAMEDIFFERENCE_H_
#define FRAMEDIFFERENCE_H_
#include "../../Data/PictureInfo.h"
#include "../Module.h"
namespace VideoCodec
{
class FrameDifference : public VideoCodec::Module
{
public:
FrameDifference();
virtual ~FrameDifference();
ConfigurationStatus Configure(ConfigurationElement* configuration);
// Subtracts previous from current and puts the result in current.
void SubtractFrame(PictureInfo* current, PictureInfo* previous);
// Adds residual to reference and puts the (clipped) result in reference.
void AddFrame(PictureInfo* reference, PictureInfo* residual);
// Adds residual to a flat reference frame.
void DiagnosticResidual(PictureInfo* residual);
};
}
#endif /*FRAMEDIFFERENCE_H_*/