FFmpeg
Classes | Macros | Typedefs | Variables
roqvideoenc.c File Reference

id RoQ encoder by Vitor. More...

#include <string.h>
#include "libavutil/attributes.h"
#include "libavutil/opt.h"
#include "roqvideo.h"
#include "bytestream.h"
#include "elbg.h"
#include "internal.h"
#include "mathops.h"

Classes

struct  SubcelEvaluation
 
struct  CelEvaluation
 
struct  RoqCodebooks
 
struct  RoqTempData
 Temporary vars. More...
 
struct  CodingSpool
 

Macros

#define CHROMA_BIAS   1
 
#define MAX_CBS_4x4   256
 Maximum number of generated 4x4 codebooks. More...
 
#define MAX_CBS_2x2   256
 Maximum number of 2x2 codebooks.
 
#define ROQ_LAMBDA_SCALE   ((uint64_t) FF_LAMBDA_SCALE)
 
#define EVAL_MOTION(MOTION)
 
#define OFFSET(x)   offsetof(RoqContext, x)
 
#define VE   AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 

Typedefs

typedef struct SubcelEvaluation SubcelEvaluation
 
typedef struct CelEvaluation CelEvaluation
 
typedef struct RoqCodebooks RoqCodebooks
 
typedef struct RoqTempData RoqTempdata
 Temporary vars.
 
typedef struct CodingSpool CodingSpool
 

Variables

AVCodec ff_roq_encoder
 

Detailed Description

id RoQ encoder by Vitor.

Based on the Switchblade3 library and the Switchblade3 FFmpeg glue by Eric Lasota.

Macro Definition Documentation

§ EVAL_MOTION

#define EVAL_MOTION (   MOTION)
Value:
do { \
diff = eval_motion_dist(enc, j, i, MOTION, blocksize); \
\
if (diff < lowestdiff) { \
lowestdiff = diff; \
bestpick = MOTION; \
} \
} while(0)

§ MAX_CBS_4x4

#define MAX_CBS_4x4   256

Maximum number of generated 4x4 codebooks.

Can't be 256 to workaround a Quake 3 bug.

Variable Documentation

§ ff_roq_encoder

AVCodec ff_roq_encoder
Initial value:
= {
.name = "roqvideo",
.long_name = NULL_IF_CONFIG_SMALL("id RoQ video"),
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_ROQ,
.priv_data_size = sizeof(RoqContext),
.init = roq_encode_init,
.encode2 = roq_encode_frame,
.close = roq_encode_end,
.pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUVJ444P,
AV_PIX_FMT_NONE },
.priv_class = &roq_class,
}
Definition: roqvideo.h:44
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
planar YUV 4:4:4, 24bpp, full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV444P and setting col...
Definition: pixfmt.h:76
AVPixelFormat
Pixel format.
Definition: pixfmt.h:60