summaryrefslogtreecommitdiff
path: root/libavcodec/hevc.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2015-06-30 14:51:53 +0200
committerAnton Khirnov <anton@khirnov.net>2015-07-08 23:36:22 +0200
commitfd124d8357b1becfde3ac8d5e3320127cf97a5b7 (patch)
treeec24d098b2505a67ce0d4309b27732c2ce1feef7 /libavcodec/hevc.h
parent0e7c0ec344f542e68e3cc9680e8d41dffeffdb4e (diff)
hevc_ps: split the code for parsing the SPS and exporting it into the context
This will be useful in the later commits, where we want to parse an SPS without having a whole decoding context.
Diffstat (limited to 'libavcodec/hevc.h')
-rw-r--r--libavcodec/hevc.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index 068c10a8ff..27b0af6b95 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -863,8 +863,21 @@ typedef struct HEVCContext {
int sei_hflip, sei_vflip;
} HEVCContext;
-int ff_hevc_decode_short_term_rps(HEVCContext *s, ShortTermRPS *rps,
- const HEVCSPS *sps, int is_slice_header);
+int ff_hevc_decode_short_term_rps(GetBitContext *gb, AVCodecContext *avctx,
+ ShortTermRPS *rps, const HEVCSPS *sps, int is_slice_header);
+
+/**
+ * Parse the SPS from the bitstream into the provided HEVCSPS struct.
+ *
+ * @param sps_id the SPS id will be written here
+ * @param apply_defdispwin if set 1, the default display window from the VUI
+ * will be applied to the video dimensions
+ * @param vps_list if non-NULL, this function will validate that the SPS refers
+ * to an existing VPS
+ */
+int ff_hevc_parse_sps(HEVCSPS *sps, GetBitContext *gb, unsigned int *sps_id,
+ int apply_defdispwin, AVBufferRef **vps_list, AVCodecContext *avctx);
+
int ff_hevc_decode_nal_vps(HEVCContext *s);
int ff_hevc_decode_nal_sps(HEVCContext *s);
int ff_hevc_decode_nal_pps(HEVCContext *s);