diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2010-01-12 20:59:00 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2010-01-12 20:59:00 +0000 |
commit | ea6f00c448beb212c80ebc7d4555a8aa7160fdb9 (patch) | |
tree | 5902e0f46b8d725649d22f0fa0064cfcbf8da1d0 /libavcodec/h264.h | |
parent | 099809d19b3fd0fb7118eb7a1749581a541c1e33 (diff) | |
download | ffmpeg-ea6f00c448beb212c80ebc7d4555a8aa7160fdb9.tar.gz |
Split all the reference picture handling off h264.c.
Originally committed as revision 21172 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264.h')
-rw-r--r-- | libavcodec/h264.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 03b465e6ee..16bf9aed73 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -93,6 +93,13 @@ #define IS_REF0(a) ((a) & MB_TYPE_REF0) #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 */ enum { NAL_SLICE=1, @@ -604,6 +611,23 @@ int ff_h264_get_slice_type(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. */ int ff_h264_check_intra_pred_mode(H264Context *h, int mode); |