📄 xvid_enc_dec.h
字号:
#pragma once
#include "xvid.h"
#include "sync.h"
#include "common.h"
#pragma comment(lib, "xvid.lib")
#define NULL 0
static int const motion_presets[7] = {
0, /* Q 0 */
PMV_EARLYSTOP16, /* Q 1 */
PMV_EARLYSTOP16, /* Q 2 */
PMV_EARLYSTOP16 | PMV_HALFPELREFINE16, /* Q 3 */
PMV_EARLYSTOP16 | PMV_HALFPELREFINE16, /* Q 4 */
PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EARLYSTOP8 | /* Q 5 */
PMV_HALFPELREFINE8,
PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EXTSEARCH16 | /* Q 6 */
PMV_USESQUARES16 | PMV_EARLYSTOP8 | PMV_HALFPELREFINE8
};
static int const general_presets[7] = {
XVID_H263QUANT, /* Q 0 */
XVID_MPEGQUANT, /* Q 1 */
XVID_H263QUANT, /* Q 2 */
XVID_H263QUANT | XVID_HALFPEL, /* Q 3 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V, /* Q 4 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V, /* Q 5 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V /* Q 6 */
};
static int const greyscale_presets[7] = {
XVID_H263QUANT | XVID_GREYSCALE, /* Q 0 */
XVID_MPEGQUANT | XVID_GREYSCALE, /* Q 1 */
XVID_H263QUANT | XVID_GREYSCALE, /* Q 2 */
XVID_H263QUANT | XVID_HALFPEL, /* Q 3 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V | XVID_GREYSCALE, /* Q 4 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V | XVID_GREYSCALE, /* Q 5 */
XVID_H263QUANT | XVID_HALFPEL | XVID_INTER4V | XVID_GREYSCALE /* Q 6 */
};
static int ARG_QUALITY = 6;
static int ARG_MINQUANT = 1;
static int ARG_MAXQUANT = 31;
#define FRAMERATE_INCR 1001
#define SMALL_EPS 1e-10
class xvid_enc{
private:
CriticalSection m_Lock;
void *m_enchandle;
int m_xdim;
int m_ydim;
float m_framerate;
int m_bitrate;
int m_keyrate;
void enc_init();
public:
xvid_enc(int x_dim,int y_dim,float framerate,int bitrate,int keyrate);
~xvid_enc();
int enc_main(unsigned char *image, unsigned char* bitstream,int *streamlength,int *frametype,int quant = 0,unsigned colorspace = XVID_CSP_RGB24,bool greyscale = false);
};
class xvid_dec{
private:
CriticalSection m_Lock;
void *m_dechandle;
int m_stride;
int m_xdim;
int m_ydim;
void dec_init();
public:
xvid_dec(int x_dim,int y_dim);
~xvid_dec();
int dec_main(unsigned char *bitstream,int streamlength,unsigned char *image,unsigned colorspace = XVID_CSP_RGB24 | XVID_CSP_VFLIP);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -