Signed-off-by: James Almer <[email protected]>
---
libavcodec/hevc_ps.c | 16 ++++++++++++++++
libavcodec/hevc_ps.h | 2 ++
2 files changed, 18 insertions(+)
diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c
index a4f7ed60f7..b18457296b 100644
--- a/libavcodec/hevc_ps.c
+++ b/libavcodec/hevc_ps.c
@@ -1704,6 +1704,22 @@ err:
return ret;
}
+void ff_hevc_uninit_parameter_sets(HEVCParamSets *ps)
+{
+ int i;
+
+ for (i = 0; i < FF_ARRAY_ELEMS(ps->vps_list); i++)
+ av_buffer_unref(&ps->vps_list[i]);
+ for (i = 0; i < FF_ARRAY_ELEMS(ps->sps_list); i++)
+ av_buffer_unref(&ps->sps_list[i]);
+ for (i = 0; i < FF_ARRAY_ELEMS(ps->pps_list); i++)
+ av_buffer_unref(&ps->pps_list[i]);
+
+ ps->sps = NULL;
+ ps->pps = NULL;
+ ps->vps = NULL;
+}
+
int ff_hevc_compute_poc(const HEVCSPS *sps, int pocTid0, int poc_lsb, int
nal_unit_type)
{
int max_poc_lsb = 1 << sps->log2_max_poc_lsb;
diff --git a/libavcodec/hevc_ps.h b/libavcodec/hevc_ps.h
index 477ee4299a..871a58acc6 100644
--- a/libavcodec/hevc_ps.h
+++ b/libavcodec/hevc_ps.h
@@ -421,6 +421,8 @@ int ff_hevc_decode_nal_sps(GetBitContext *gb,
AVCodecContext *avctx,
int ff_hevc_decode_nal_pps(GetBitContext *gb, AVCodecContext *avctx,
HEVCParamSets *ps);
+void ff_hevc_uninit_parameter_sets(HEVCParamSets *ps);
+
int ff_hevc_decode_short_term_rps(GetBitContext *gb, AVCodecContext *avctx,
ShortTermRPS *rps, const HEVCSPS *sps, int
is_slice_header);
--
2.15.0
_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel