Commit b2dd0472 authored by michael's avatar michael

Split all the reference picture handling off h264.c.


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@21172 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 47da42d6
...@@ -132,7 +132,7 @@ OBJS-$(CONFIG_H263_ENCODER) += mpegvideo_enc.o mpeg4video.o mpeg4vide ...@@ -132,7 +132,7 @@ OBJS-$(CONFIG_H263_ENCODER) += mpegvideo_enc.o mpeg4video.o mpeg4vide
ratecontrol.o h263.o ituh263enc.o flvenc.o mpeg12data.o \ ratecontrol.o h263.o ituh263enc.o flvenc.o mpeg12data.o \
mpegvideo.o error_resilience.o mpegvideo.o error_resilience.o
OBJS-$(CONFIG_H264_DECODER) += h264.o h264idct.o h264pred.o h264_loopfilter.o h264_direct.o cabac.o \ OBJS-$(CONFIG_H264_DECODER) += h264.o h264idct.o h264pred.o h264_loopfilter.o h264_direct.o cabac.o \
h264_sei.o h264_ps.o\ h264_sei.o h264_ps.o h264_refs.o\
mpegvideo.o error_resilience.o mpegvideo.o error_resilience.o
OBJS-$(CONFIG_H264_ENCODER) += h264enc.o h264dspenc.o OBJS-$(CONFIG_H264_ENCODER) += h264enc.o h264dspenc.o
OBJS-$(CONFIG_H264_VAAPI_HWACCEL) += vaapi_h264.o OBJS-$(CONFIG_H264_VAAPI_HWACCEL) += vaapi_h264.o
...@@ -283,7 +283,7 @@ OBJS-$(CONFIG_SVQ1_ENCODER) += svq1enc.o svq1.o \ ...@@ -283,7 +283,7 @@ OBJS-$(CONFIG_SVQ1_ENCODER) += svq1enc.o svq1.o \
motion_est.o h263.o \ motion_est.o h263.o \
mpegvideo.o error_resilience.o mpegvideo.o error_resilience.o
OBJS-$(CONFIG_SVQ3_DECODER) += h264.o svq3.o h264idct.o h264pred.o h264_loopfilter.o h264_direct.o \ OBJS-$(CONFIG_SVQ3_DECODER) += h264.o svq3.o h264idct.o h264pred.o h264_loopfilter.o h264_direct.o \
h264_sei.o h264_ps.o\ h264_sei.o h264_ps.o h264_refs.o\
cabac.o \ cabac.o \
mpegvideo.o error_resilience.o \ mpegvideo.o error_resilience.o \
svq1dec.o svq1.o h263.o svq1dec.o svq1.o h263.o
......
This diff is collapsed.
...@@ -93,6 +93,13 @@ ...@@ -93,6 +93,13 @@
#define IS_REF0(a) ((a) & MB_TYPE_REF0) #define IS_REF0(a) ((a) & MB_TYPE_REF0)
#define IS_8x8DCT(a) ((a) & MB_TYPE_8x8DCT) #define IS_8x8DCT(a) ((a) & MB_TYPE_8x8DCT)
/**
* Value of Picture.reference when Picture is not a reference picture, but
* is held for delayed output.
*/
#define DELAYED_PIC_REF 4
/* NAL unit types */ /* NAL unit types */
enum { enum {
NAL_SLICE=1, NAL_SLICE=1,
...@@ -603,6 +610,23 @@ int ff_h264_get_slice_type(H264Context *h); ...@@ -603,6 +610,23 @@ int ff_h264_get_slice_type(H264Context *h);
*/ */
int ff_h264_alloc_tables(H264Context *h); int ff_h264_alloc_tables(H264Context *h);
/**
* fills the default_ref_list.
*/
int ff_h264_fill_default_ref_list(H264Context *h);
int ff_h264_decode_ref_pic_list_reordering(H264Context *h);
void ff_h264_fill_mbaff_ref_list(H264Context *h);
void ff_h264_remove_all_refs(H264Context *h);
/**
* Executes the reference picture marking (memory management control operations).
*/
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count);
int ff_h264_decode_ref_pic_marking(H264Context *h, GetBitContext *gb);
/** /**
* checks if the top & left blocks are available if needed & changes the dc mode so it only uses the available blocks. * checks if the top & left blocks are available if needed & changes the dc mode so it only uses the available blocks.
*/ */
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment