changeset 7693:dc309e45a671 libavcodec

Another set of definitions for G.729
author voroshil
date Tue, 26 Aug 2008 07:10:38 +0000
parents 3ced4fb23342
children c75d2318d345
files g729data.h g729dec.c
diffstat 2 files changed, 24 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/g729data.h	Mon Aug 25 22:51:47 2008 +0000
+++ b/g729data.h	Tue Aug 26 07:10:38 2008 +0000
@@ -27,6 +27,15 @@
 /// Moving Average (MA) prediction order
 #define MA_NP                      4
 
+#define VQ_1ST_BITS          7  ///< first stage vector of quantizer (size in bits)
+#define VQ_2ND_BITS          5  ///< second stage vector of quantizer (size in bits)
+
+#define GC_1ST_IDX_BITS_8K   3  ///< gain codebook (first stage) index, 8k mode (size in bits)
+#define GC_2ND_IDX_BITS_8K   4  ///< gain codebook (second stage) index, 8k mode (size in bits)
+
+#define GC_1ST_IDX_BITS_6K4  3  ///< gain codebook (first stage) index, 6.4k mode (size in bits)
+#define GC_2ND_IDX_BITS_6K4  3  ///< gain codebook (second stage) index, 6.4k mode (size in bits)
+
 /**
  * first stage LSP codebook
  * (10-dimensional, with 128 entries (3.24 of G.729)
--- a/g729dec.c	Mon Aug 25 22:51:47 2008 +0000
+++ b/g729dec.c	Tue Aug 26 07:10:38 2008 +0000
@@ -49,6 +49,21 @@
 #define LSFQ_DIFF_MIN              321
 
 /**
+ * minimum gain pitch value (3.8, Equation 47)
+ * 0.2 in (1.14)
+ */
+#define SHARP_MIN                  3277
+
+/**
+ * maximum gain pitch value (3.8, Equation 47)
+ * (EE) This does not comply with the specification.
+ * Specification says about 0.8, which should be
+ * 13107 in (1.14), but reference C code uses
+ * 13017 (equals to 0.7945) instead of it.
+ */
+#define SHARP_MAX                  13017
+
+/**
  * \brief pseudo random number generator
  */
 static inline uint16_t g729_random(uint16_t value)