[FFmpeg-cvslog] diracdec: Replace dirac parse codes with better ones

Kieran Kunhya git at videolan.org
Thu Dec 10 22:47:26 CET 2015


ffmpeg | branch: master | Kieran Kunhya <kierank at ob-encoder.com> | Wed Dec  9 13:45:23 2015 +0000| [cdf8c9038ddb4a655661460896e8ba8046deb0a2] | committer: Rostislav Pehlivanov

diracdec: Replace dirac parse codes with better ones

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cdf8c9038ddb4a655661460896e8ba8046deb0a2
---

 libavcodec/dirac.h    |   22 ++++++++++++++++++++++
 libavcodec/diracdec.c |   17 +++--------------
 2 files changed, 25 insertions(+), 14 deletions(-)

diff --git a/libavcodec/dirac.h b/libavcodec/dirac.h
index 6852e82..b4982f8 100644
--- a/libavcodec/dirac.h
+++ b/libavcodec/dirac.h
@@ -34,6 +34,28 @@
 #include "avcodec.h"
 #include "get_bits.h"
 
+/**
+ * Parse code values:
+ *
+ * Dirac Specification ->
+ * 9.6.1  Table 9.1
+ *
+ * VC-2 Specification  ->
+ * 10.4.1 Table 10.1
+ */
+
+enum DiracParseCodes {
+    DIRAC_PCODE_SEQ_HEADER      = 0x00,
+    DIRAC_PCODE_END_SEQ         = 0x10,
+    DIRAC_PCODE_AUX             = 0x20,
+    DIRAC_PCODE_PAD             = 0x30,
+    DIRAC_PCODE_PICTURE_CODED   = 0x08,
+    DIRAC_PCODE_PICTURE_RAW     = 0x48,
+    DIRAC_PCODE_PICTURE_LOW_DEL = 0xC8,
+    DIRAC_PCODE_PICTURE_HQ      = 0xE8,
+    DIRAC_PCODE_MAGIC           = 0x42424344,
+};
+
 typedef struct DiracVersionInfo {
     int major;
     int minor;
diff --git a/libavcodec/diracdec.c b/libavcodec/diracdec.c
index 6d1d29d..2d076a5 100644
--- a/libavcodec/diracdec.c
+++ b/libavcodec/diracdec.c
@@ -230,17 +230,6 @@ typedef struct DiracContext {
     DiracFrame all_frames[MAX_FRAMES];
 } DiracContext;
 
-/**
- * Dirac Specification ->
- * Parse code values. 9.6.1 Table 9.1
- */
-enum dirac_parse_code {
-    pc_seq_header         = 0x00,
-    pc_eos                = 0x10,
-    pc_aux_data           = 0x20,
-    pc_padding            = 0x30,
-};
-
 enum dirac_subband {
     subband_ll = 0,
     subband_hl = 1,
@@ -1945,7 +1934,7 @@ static int dirac_decode_data_unit(AVCodecContext *avctx, const uint8_t *buf, int
 
     init_get_bits(&s->gb, &buf[13], 8*(size - DATA_UNIT_HEADER_SIZE));
 
-    if (parse_code == pc_seq_header) {
+    if (parse_code == DIRAC_PCODE_SEQ_HEADER) {
         if (s->seen_sequence_header)
             return 0;
 
@@ -1964,10 +1953,10 @@ static int dirac_decode_data_unit(AVCodecContext *avctx, const uint8_t *buf, int
             return ret;
 
         s->seen_sequence_header = 1;
-    } else if (parse_code == pc_eos) { /* [DIRAC_STD] End of Sequence */
+    } else if (parse_code == DIRAC_PCODE_END_SEQ) { /* [DIRAC_STD] End of Sequence */
         free_sequence_buffers(s);
         s->seen_sequence_header = 0;
-    } else if (parse_code == pc_aux_data) {
+    } else if (parse_code == DIRAC_PCODE_AUX) {
         if (buf[13] == 1) {     /* encoder implementation/version */
             int ver[3];
             /* versions older than 1.0.8 don't store quant delta for



More information about the ffmpeg-cvslog mailing list