X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fh264_ps.h;h=3f1ab72e385a8fd8f1528cb95701c04b7457e9be;hb=930391e5988abe126d29c5e9b09fab459e0b8936;hp=51b6694b5f4aaa1e0624fd3913a4dff91ea79f87;hpb=6e050e0085b3f6f1109a0593aad63ec6e6bf23ff;p=ffmpeg diff --git a/libavcodec/h264_ps.h b/libavcodec/h264_ps.h index 51b6694b5f4..3f1ab72e385 100644 --- a/libavcodec/h264_ps.h +++ b/libavcodec/h264_ps.h @@ -36,6 +36,7 @@ #define MAX_SPS_COUNT 32 #define MAX_PPS_COUNT 256 +#define MAX_LOG2_MAX_FRAME_NUM (12 + 4) /** * Sequence parameter set @@ -76,11 +77,13 @@ typedef struct SPS { enum AVColorPrimaries color_primaries; enum AVColorTransferCharacteristic color_trc; enum AVColorSpace colorspace; + enum AVChromaLocation chroma_location; + int timing_info_present_flag; uint32_t num_units_in_tick; uint32_t time_scale; int fixed_frame_rate_flag; - short offset_for_ref_frame[256]; // FIXME dyn aloc? + int32_t offset_for_ref_frame[256]; int bitstream_restriction_flag; int num_reorder_frames; int scaling_matrix_present; @@ -132,6 +135,9 @@ typedef struct PPS { uint32_t dequant8_buffer[6][QP_MAX_NUM + 1][64]; uint32_t(*dequant4_coeff[6])[16]; uint32_t(*dequant8_coeff[6])[64]; + + AVBufferRef *sps_ref; + const SPS *sps; } PPS; typedef struct H264ParamSets { @@ -139,10 +145,11 @@ typedef struct H264ParamSets { AVBufferRef *pps_list[MAX_PPS_COUNT]; AVBufferRef *pps_ref; - AVBufferRef *sps_ref; /* currently active parameters sets */ const PPS *pps; const SPS *sps; + + int overread_warning_printed[2]; } H264ParamSets; /**