FFmpeg
Macros | Functions | Variables
h263dec.c File Reference
#include "config_components.h"
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
#include "error_resilience.h"
#include "flvdec.h"
#include "h263.h"
#include "h263dec.h"
#include "hwaccel_internal.h"
#include "hwconfig.h"
#include "mpeg_er.h"
#include "mpeg4video.h"
#include "mpeg4videodec.h"
#include "mpeg4videodefs.h"
#include "mpegvideo.h"
#include "mpegvideodec.h"
#include "msmpeg4dec.h"
#include "thread.h"
#include "wmv2dec.h"

Go to the source code of this file.

Macros

#define UNCHECKED_BITSTREAM_READER   1
 

Functions

static enum AVPixelFormat h263_get_format (AVCodecContext *avctx)
 
av_cold int ff_h263_decode_init (AVCodecContext *avctx)
 
static int get_consumed_bytes (MpegEncContext *s, int buf_size)
 Return the number of bytes consumed for building the current frame. More...
 
static int decode_slice (MpegEncContext *s)
 
int ff_h263_decode_frame (AVCodecContext *avctx, AVFrame *pict, int *got_frame, AVPacket *avpkt)
 

Variables

static enum AVPixelFormat h263_hwaccel_pixfmt_list_420 []
 
static const AVCodecHWConfigInternal *const h263_hw_config_list []
 
const FFCodec ff_h263_decoder
 
const FFCodec ff_h263p_decoder
 

Detailed Description

H.263 decoder.

Definition in file h263dec.c.

Macro Definition Documentation

◆ UNCHECKED_BITSTREAM_READER

#define UNCHECKED_BITSTREAM_READER   1

Definition at line 28 of file h263dec.c.

Function Documentation

◆ h263_get_format()

static enum AVPixelFormat h263_get_format ( AVCodecContext avctx)
static

Definition at line 68 of file h263dec.c.

Referenced by ff_h263_decode_frame(), and ff_h263_decode_init().

◆ ff_h263_decode_init()

av_cold int ff_h263_decode_init ( AVCodecContext avctx)

Definition at line 90 of file h263dec.c.

Referenced by ff_msmpeg4_decode_init(), and rv10_decode_init().

◆ get_consumed_bytes()

static int get_consumed_bytes ( MpegEncContext s,
int  buf_size 
)
static

Return the number of bytes consumed for building the current frame.

Definition at line 176 of file h263dec.c.

Referenced by ff_h263_decode_frame().

◆ decode_slice()

static int decode_slice ( MpegEncContext s)
static

Definition at line 196 of file h263dec.c.

Referenced by ff_h263_decode_frame().

◆ ff_h263_decode_frame()

int ff_h263_decode_frame ( AVCodecContext avctx,
AVFrame pict,
int *  got_frame,
AVPacket avpkt 
)

Definition at line 426 of file h263dec.c.

Variable Documentation

◆ h263_hwaccel_pixfmt_list_420

enum AVPixelFormat h263_hwaccel_pixfmt_list_420[]
static
Initial value:

Definition at line 51 of file h263dec.c.

Referenced by h263_get_format().

◆ h263_hw_config_list

const AVCodecHWConfigInternal* const h263_hw_config_list[]
static
Initial value:
= {
}

Definition at line 694 of file h263dec.c.

◆ ff_h263_decoder

const FFCodec ff_h263_decoder
Initial value:
= {
.p.name = "h263",
CODEC_LONG_NAME("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),
.p.type = AVMEDIA_TYPE_VIDEO,
.priv_data_size = sizeof(MpegEncContext),
.caps_internal = FF_CODEC_CAP_INIT_CLEANUP |
.flush = ff_mpeg_flush,
.p.max_lowres = 3,
.hw_configs = h263_hw_config_list,
}

Definition at line 710 of file h263dec.c.

◆ ff_h263p_decoder

const FFCodec ff_h263p_decoder
Initial value:
= {
.p.name = "h263p",
CODEC_LONG_NAME("H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2"),
.p.type = AVMEDIA_TYPE_VIDEO,
.priv_data_size = sizeof(MpegEncContext),
.caps_internal = FF_CODEC_CAP_INIT_CLEANUP |
.flush = ff_mpeg_flush,
.p.max_lowres = 3,
.hw_configs = h263_hw_config_list,
}

Definition at line 728 of file h263dec.c.

h263_hw_config_list
static const AVCodecHWConfigInternal *const h263_hw_config_list[]
Definition: h263dec.c:694
FF_CODEC_CAP_INIT_CLEANUP
#define FF_CODEC_CAP_INIT_CLEANUP
The codec allows calling the close function for deallocation even if the init function returned a fai...
Definition: codec_internal.h:43
FF_CODEC_DECODE_CB
#define FF_CODEC_DECODE_CB(func)
Definition: codec_internal.h:311
AV_PIX_FMT_YUV420P
@ AV_PIX_FMT_YUV420P
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
Definition: pixfmt.h:73
CODEC_LONG_NAME
#define CODEC_LONG_NAME(str)
Definition: codec_internal.h:296
NULL
#define NULL
Definition: coverity.c:32
ff_h263_decode_frame
int ff_h263_decode_frame(AVCodecContext *avctx, AVFrame *pict, int *got_frame, AVPacket *avpkt)
Definition: h263dec.c:426
init
int(* init)(AVBSFContext *ctx)
Definition: dts2pts.c:368
AV_CODEC_CAP_DR1
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
Definition: codec.h:52
AV_CODEC_ID_H263
@ AV_CODEC_ID_H263
Definition: codec_id.h:56
FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM
#define FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM
The decoder extracts and fills its parameters even if the frame is skipped due to the skip_frame sett...
Definition: codec_internal.h:55
ff_mpeg_flush
void ff_mpeg_flush(AVCodecContext *avctx)
Definition: mpegvideo_dec.c:449
ff_h263_decode_init
av_cold int ff_h263_decode_init(AVCodecContext *avctx)
Definition: h263dec.c:90
AV_CODEC_ID_H263P
@ AV_CODEC_ID_H263P
Definition: codec_id.h:71
AV_PIX_FMT_NONE
@ AV_PIX_FMT_NONE
Definition: pixfmt.h:72
AV_CODEC_CAP_DELAY
#define AV_CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
Definition: codec.h:76
AVMEDIA_TYPE_VIDEO
@ AVMEDIA_TYPE_VIDEO
Definition: avutil.h:201
AV_CODEC_CAP_DRAW_HORIZ_BAND
#define AV_CODEC_CAP_DRAW_HORIZ_BAND
Decoder can use draw_horiz_band callback.
Definition: codec.h:44
MpegEncContext
MpegEncContext.
Definition: mpegvideo.h:73
ff_mpv_decode_close
int ff_mpv_decode_close(AVCodecContext *avctx)
Definition: mpegvideo_dec.c:163