Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Stebbins <stebbins@jetheaddev.com>2013-10-11 20:51:50 +0400
committerAnton Khirnov <anton@khirnov.net>2013-10-31 23:14:14 +0400
commit28096e0a806e57376541e6222d315619906e3c55 (patch)
treea3d2c34efc7bfc08e00314c010e1f20fc7cf84cf /libavcodec/h264.h
parent9af7a8523a6bb517834ebed36093bdab11a8b38e (diff)
h264: wait for initial complete frame before outputing frames
This can be optionally disabled whith the "output_corrupt" flags option. When in "output_corrupt" mode, incomplete frames are signalled through AVFrame.flags FRAME_FLAG_INCOMPLETE_FRAME. Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavcodec/h264.h')
-rw-r--r--libavcodec/h264.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/libavcodec/h264.h b/libavcodec/h264.h
index cb970673ad..920e3fc1c8 100644
--- a/libavcodec/h264.h
+++ b/libavcodec/h264.h
@@ -611,6 +611,27 @@ typedef struct H264Context {
*/
int sei_recovery_frame_cnt;
+ /**
+ * recovery_frame is the frame_num at which the next frame should
+ * be fully constructed.
+ *
+ * Set to -1 when not expecting a recovery point.
+ */
+ int recovery_frame;
+
+/**
+ * We have seen an IDR, so all the following frames in coded order are correctly
+ * decodable.
+ */
+#define FRAME_RECOVERED_IDR (1 << 0)
+/**
+ * Sufficient number of frames have been decoded since a SEI recovery point,
+ * so all the following frames in presentation order are correct.
+ */
+#define FRAME_RECOVERED_SEI (1 << 1)
+
+ int frame_recovered; ///< Initial frame has been completely recovered
+
int luma_weight_flag[2]; ///< 7.4.3.2 luma_weight_lX_flag
int chroma_weight_flag[2]; ///< 7.4.3.2 chroma_weight_lX_flag