summaryrefslogtreecommitdiff
path: root/libavcodec/eac3enc.h
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2011-07-13 12:20:29 -0400
committerJustin Ruggles <justin.ruggles@gmail.com>2011-07-19 14:15:00 -0400
commit08a747afb98c11da48b89339c2f1c5fdc56ced7e (patch)
tree15266498fd82587fc6540fcc60333c242d317175 /libavcodec/eac3enc.h
parent31b69928e5fd3d40dda4091ae7db340c582113af (diff)
eac3enc: use frame exponent strategy when applicable.
This checks if the set of selected exponent strategies for all blocks in a channel are in the frame exponent strategy table, and if so, writes the table index instead of each strategy. This saves up to 7 bits per channel per frame, so the overall effect on quality is small.
Diffstat (limited to 'libavcodec/eac3enc.h')
-rw-r--r--libavcodec/eac3enc.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/eac3enc.h b/libavcodec/eac3enc.h
index eacb8cf164..a92a24c2fa 100644
--- a/libavcodec/eac3enc.h
+++ b/libavcodec/eac3enc.h
@@ -30,6 +30,16 @@
#include "ac3enc.h"
/**
+ * Initialize E-AC-3 exponent tables.
+ */
+void ff_eac3_exponent_init(void);
+
+/**
+ * Determine frame exponent strategy use and indices.
+ */
+void ff_eac3_get_frame_exp_strategy(AC3EncodeContext *s);
+
+/**
* Set coupling states.
* This determines whether certain flags must be written to the bitstream or
* whether they will be implicitly already known by the decoder.