msvideo1enc.c File Reference

Microsoft Video-1 encoder. More...

#include "avcodec.h"
#include "internal.h"
#include "bytestream.h"
#include "libavutil/lfg.h"
#include "elbg.h"
#include "libavutil/imgutils.h"
Include dependency graph for msvideo1enc.c:

Go to the source code of this file.

Data Structures

struct  Msvideo1EncContext
 Encoder context. More...
 

Macros

#define SKIP_PREFIX   0x8400
 
#define SKIPS_MAX   0x0FFF
 
#define MKRGB555(in, off)   ((in[off] << 10) | (in[off + 1] << 5) | (in[off + 2]))
 

Typedefs

typedef struct Msvideo1EncContext Msvideo1EncContext
 Encoder context. More...
 

Enumerations

enum  MSV1Mode { MODE_SKIP = 0, MODE_FILL, MODE_2COL, MODE_8COL }
 

Functions

static int encode_frame (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet)
 
static av_cold int encode_init (AVCodecContext *avctx)
 init encoder More...
 
static av_cold int encode_end (AVCodecContext *avctx)
 Uninit encoder. More...
 

Variables

static const int remap [16] = { 0, 1, 4, 5, 2, 3, 6, 7, 8, 9, 12, 13, 10, 11, 14, 15 }
 
AVCodec ff_msvideo1_encoder
 

Detailed Description

Microsoft Video-1 encoder.

Definition in file msvideo1enc.c.

Macro Definition Documentation

#define MKRGB555 (   in,
  off 
)    ((in[off] << 10) | (in[off + 1] << 5) | (in[off + 2]))

Definition at line 62 of file msvideo1enc.c.

Referenced by encode_frame().

#define SKIP_PREFIX   0x8400

Definition at line 60 of file msvideo1enc.c.

Referenced by encode_frame().

#define SKIPS_MAX   0x0FFF

Definition at line 61 of file msvideo1enc.c.

Referenced by encode_frame().

Typedef Documentation

Encoder context.

Enumeration Type Documentation

enum MSV1Mode
Enumerator
MODE_SKIP 
MODE_FILL 
MODE_2COL 
MODE_8COL 

Definition at line 53 of file msvideo1enc.c.

Function Documentation

static av_cold int encode_end ( AVCodecContext avctx)
static

Uninit encoder.

Definition at line 292 of file msvideo1enc.c.

static int encode_frame ( AVCodecContext avctx,
AVPacket pkt,
const AVFrame pict,
int *  got_packet 
)
static

Definition at line 66 of file msvideo1enc.c.

static av_cold int encode_init ( AVCodecContext avctx)
static

init encoder

Definition at line 264 of file msvideo1enc.c.

Variable Documentation

AVCodec ff_msvideo1_encoder
Initial value:
= {
.name = "msvideo1",
.priv_data_size = sizeof(Msvideo1EncContext),
.encode2 = encode_frame,
.pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_RGB555, AV_PIX_FMT_NONE},
.long_name = NULL_IF_CONFIG_SMALL("Microsoft Video-1"),
}
static av_cold int encode_init(AVCodecContext *avctx)
init encoder
Definition: msvideo1enc.c:264
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
struct Msvideo1EncContext Msvideo1EncContext
Encoder context.
static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet)
Definition: msvideo1enc.c:66
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static av_cold int encode_end(AVCodecContext *avctx)
Uninit encoder.
Definition: msvideo1enc.c:292
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:375
#define AV_PIX_FMT_RGB555
Definition: pixfmt.h:269
AVPixelFormat
Pixel format.
Definition: pixfmt.h:66

Definition at line 301 of file msvideo1enc.c.

const int remap[16] = { 0, 1, 4, 5, 2, 3, 6, 7, 8, 9, 12, 13, 10, 11, 14, 15 }
static

Definition at line 64 of file msvideo1enc.c.

Referenced by dv_calc_mb_coordinates(), and encode_frame().