summaryrefslogtreecommitdiff
path: root/libavcodec/h264.h
diff options
context:
space:
mode:
authorIvan Schreter <schreter@gmx.net>2009-02-21 19:54:14 +0000
committerCarl Eugen Hoyos <cehoyos@rainbow.studorg.tuwien.ac.at>2009-02-21 19:54:14 +0000
commit1790a5e908ab98fcf4a81942b751feef67c9e779 (patch)
treebdb4f40da3c7c25a603ea473373a7f01cf7224c4 /libavcodec/h264.h
parent20a93972c4811dd26d4757ca537f77e1c416cbbb (diff)
Make the following H264 functions available to the parser:
ff_h264_decode_sei, ff_h264_decode_seq_parameter_set, ff_h264_decode_picture_parameter_set, ff_h264_decode_nal, ff_h264_decode_rbsp_trailing Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17487 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264.h')
-rw-r--r--libavcodec/h264.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/libavcodec/h264.h b/libavcodec/h264.h
index 9331e22358..3cfa70ab52 100644
--- a/libavcodec/h264.h
+++ b/libavcodec/h264.h
@@ -532,4 +532,34 @@ typedef struct H264Context{
int initial_cpb_removal_delay[32]; ///< Initial timestamps for CPBs
}H264Context;
+/**
+ * Decode SEI
+ */
+int ff_h264_decode_sei(H264Context *h);
+
+/**
+ * Decode SPS
+ */
+int ff_h264_decode_seq_parameter_set(H264Context *h);
+
+/**
+ * Decode PPS
+ */
+int ff_h264_decode_picture_parameter_set(H264Context *h, int bit_length);
+
+/**
+ * Decodes a network abstraction layer unit.
+ * @param consumed is the number of bytes used as input
+ * @param length is the length of the array
+ * @param dst_length is the number of decoded bytes FIXME here or a decode rbsp tailing?
+ * @returns decoded bytes, might be src+1 if no escapes
+ */
+const uint8_t *ff_h264_decode_nal(H264Context *h, const uint8_t *src, int *dst_length, int *consumed, int length);
+
+/**
+ * identifies the exact end of the bitstream
+ * @return the length of the trailing, or 0 if damaged
+ */
+int ff_h264_decode_rbsp_trailing(H264Context *h, const uint8_t *src);
+
#endif /* AVCODEC_H264_H */