You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
910 B

#ifndef _VIDEOFRAME_H_
#define _VIDEOFRAME_H_
#include "inmemoryfile.h"
//
// only contain 24bit each color 8Bit
class VideoFrame {
private:
virtual void AllocateFrame();
protected:
void FreeFrame();
int mem_allocated;
unsigned char *mem;
int height;
int width;
public:
VideoFrame();
~VideoFrame();
int GetHeight() { return height; };
int GetWidth() { return width; };
unsigned char *GetPixBuf() { return mem; };
int SetSize(int w, int h);
int ConvertToJpeg(InMemoryFile *imf, int quality);
int TestScreen(int w, int h);
int CopyTo(VideoFrame *dest, int destw, int desth);
int CopyFrom(int sw, int sh, int ssize, unsigned char *sdata);
};
class VideoFrameFloat : public VideoFrame {
private:
void AllocateFrame();
protected:
public:
};
#endif