utvideo.c File Reference

Ut Video decoder. More...

#include <stdlib.h>
#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "bytestream.h"
#include "get_bits.h"
#include "dsputil.h"
#include "thread.h"

Go to the source code of this file.

Data Structures

struct  UtvideoContext
 
struct  HuffEntry
 

Typedefs

typedef struct UtvideoContext UtvideoContext
 
typedef struct HuffEntry HuffEntry
 

Enumerations

enum  { PRED_NONE = 0, PRED_LEFT, PRED_GRADIENT, PRED_MEDIAN }
 

Functions

static int huff_cmp (const void *a, const void *b)
 
static int build_huff (const uint8_t *src, VLC *vlc, int *fsym)
 
static int decode_plane (UtvideoContext *c, int plane_no, uint8_t *dst, int step, int stride, int width, int height, const uint8_t *src, int src_size, int use_pred)
 
static void restore_rgb_planes (uint8_t *src, int step, int stride, int width, int height)
 
static void restore_median (uint8_t *src, int step, int stride, int width, int height, int slices, int rmode)
 
static void restore_median_il (uint8_t *src, int step, int stride, int width, int height, int slices, int rmode)
 
static int decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
 
static av_cold int decode_init (AVCodecContext *avctx)
 
static av_cold int decode_end (AVCodecContext *avctx)
 

Variables

static const int rgb_order [4] = { 1, 2, 0, 3 }
 
AVCodec ff_utvideo_decoder
 

Detailed Description

Ut Video decoder.

Definition in file utvideo.c.

Typedef Documentation

typedef struct HuffEntry HuffEntry

Enumeration Type Documentation

anonymous enum
Enumerator
PRED_NONE 
PRED_LEFT 
PRED_GRADIENT 
PRED_MEDIAN 

Definition at line 36 of file utvideo.c.

Function Documentation

static int build_huff ( const uint8_t *  src,
VLC vlc,
int *  fsym 
)
static

Definition at line 70 of file utvideo.c.

Referenced by decode_plane().

static av_cold int decode_end ( AVCodecContext avctx)
static

Definition at line 558 of file utvideo.c.

static int decode_frame ( AVCodecContext avctx,
void data,
int *  data_size,
AVPacket avpkt 
)
static

Definition at line 361 of file utvideo.c.

static av_cold int decode_init ( AVCodecContext avctx)
static

Definition at line 502 of file utvideo.c.

static int decode_plane ( UtvideoContext c,
int  plane_no,
uint8_t *  dst,
int  step,
int  stride,
int  width,
int  height,
const uint8_t *  src,
int  src_size,
int  use_pred 
)
static

Definition at line 112 of file utvideo.c.

Referenced by decode_frame().

static int huff_cmp ( const void a,
const void b 
)
static

Definition at line 64 of file utvideo.c.

Referenced by build_huff().

static void restore_median ( uint8_t *  src,
int  step,
int  stride,
int  width,
int  height,
int  slices,
int  rmode 
)
static

Definition at line 237 of file utvideo.c.

Referenced by decode_frame().

static void restore_median_il ( uint8_t *  src,
int  step,
int  stride,
int  width,
int  height,
int  slices,
int  rmode 
)
static

Definition at line 292 of file utvideo.c.

Referenced by decode_frame().

static void restore_rgb_planes ( uint8_t *  src,
int  step,
int  stride,
int  width,
int  height 
)
static

Definition at line 220 of file utvideo.c.

Referenced by decode_frame().

Variable Documentation

AVCodec ff_utvideo_decoder
Initial value:
= {
.name = "utvideo",
.priv_data_size = sizeof(UtvideoContext),
.long_name = NULL_IF_CONFIG_SMALL("Ut Video"),
}
#define CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading.
Definition: avcodec.h:788
static int decode(MimicContext *ctx, int quality, int num_coeffs, int is_iframe)
Definition: mimic.c:228
static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
Definition: utvideo.c:361
static int init(AVCodecParserContext *s)
Definition: h264_parser.c:336
#define CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:719
static av_cold int decode_end(AVCodecContext *avctx)
Definition: utvideo.c:558
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:191
static void close(AVCodecParserContext *s)
Definition: h264_parser.c:327
struct UtvideoContext UtvideoContext
static av_cold int decode_init(AVCodecContext *avctx)
Definition: utvideo.c:502

Definition at line 570 of file utvideo.c.

const int rgb_order[4] = { 1, 2, 0, 3 }
static

Definition at line 218 of file utvideo.c.

Referenced by decode_frame().