dvdsubdec.c File Reference
#include "avcodec.h"
#include "get_bits.h"
#include "dsputil.h"
#include "libavutil/colorspace.h"

Go to the source code of this file.

Macros

#define READ_OFFSET(a)   (big_offsets ? AV_RB32(a) : AV_RB16(a))
 

Functions

static void yuv_a_to_rgba (const uint8_t *ycbcr, const uint8_t *alpha, uint32_t *rgba, int num_values)
 
static int decode_run_2bit (GetBitContext *gb, int *color)
 
static int decode_run_8bit (GetBitContext *gb, int *color)
 
static int decode_rle (uint8_t *bitmap, int linesize, int w, int h, const uint8_t *buf, int start, int buf_size, int is_8bit)
 
static void guess_palette (uint32_t *rgba_palette, uint8_t *colormap, uint8_t *alpha, uint32_t subtitle_color)
 
static int decode_dvd_subtitles (AVSubtitle *sub_header, const uint8_t *buf, int buf_size)
 
static int is_transp (const uint8_t *buf, int pitch, int n, const uint8_t *transp_color)
 
static int find_smallest_bounding_rectangle (AVSubtitle *s)
 
static int dvdsub_decode (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
 

Variables

AVCodec ff_dvdsub_decoder
 

Macro Definition Documentation

#define READ_OFFSET (   a)    (big_offsets ? AV_RB32(a) : AV_RB16(a))

Definition at line 160 of file dvdsubdec.c.

Referenced by decode_dvd_subtitles().

Function Documentation

static int decode_dvd_subtitles ( AVSubtitle sub_header,
const uint8_t buf,
int  buf_size 
)
static

Definition at line 162 of file dvdsubdec.c.

Referenced by dvdsub_decode().

static int decode_rle ( uint8_t bitmap,
int  linesize,
int  w,
int  h,
const uint8_t buf,
int  start,
int  buf_size,
int  is_8bit 
)
static

Definition at line 81 of file dvdsubdec.c.

Referenced by decode_dvd_subtitles().

static int decode_run_2bit ( GetBitContext gb,
int *  color 
)
static

Definition at line 45 of file dvdsubdec.c.

Referenced by decode_rle().

static int decode_run_8bit ( GetBitContext gb,
int *  color 
)
static

Definition at line 59 of file dvdsubdec.c.

Referenced by decode_rle().

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

Definition at line 455 of file dvdsubdec.c.

static int find_smallest_bounding_rectangle ( AVSubtitle s)
static

Definition at line 371 of file dvdsubdec.c.

Referenced by dvdsub_decode().

static void guess_palette ( uint32_t *  rgba_palette,
uint8_t colormap,
uint8_t alpha,
uint32_t  subtitle_color 
)
static

Definition at line 118 of file dvdsubdec.c.

Referenced by decode_dvd_subtitles().

static int is_transp ( const uint8_t buf,
int  pitch,
int  n,
const uint8_t transp_color 
)
static

Definition at line 358 of file dvdsubdec.c.

Referenced by find_smallest_bounding_rectangle().

static void yuv_a_to_rgba ( const uint8_t ycbcr,
const uint8_t alpha,
uint32_t *  rgba,
int  num_values 
)
static

Definition at line 28 of file dvdsubdec.c.

Referenced by decode_dvd_subtitles().

Variable Documentation

AVCodec ff_dvdsub_decoder
Initial value:
= {
.name = "dvdsub",
.decode = dvdsub_decode,
.long_name = NULL_IF_CONFIG_SMALL("DVD subtitles"),
}
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:88
static int dvdsub_decode(AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
Definition: dvdsubdec.c:455

Definition at line 487 of file dvdsubdec.c.