summaryrefslogtreecommitdiff
path: root/libavcodec/vorbis_data.c
diff options
context:
space:
mode:
authorRobert Swain <robert.swain@gmail.com>2009-10-02 12:59:37 +0000
committerRobert Swain <robert.swain@gmail.com>2009-10-02 12:59:37 +0000
commit53a71e1ba4b2d7ebf9c6015fd77560cc1cde8137 (patch)
treec6ca95804f742ca8e11e5ec3ad282615fd75dbdf /libavcodec/vorbis_data.c
parente654b7c29e9a3ecc9dc02885b372d6c589f7b4ef (diff)
Add vorbis channel layout support according to those defined in the Vorbis I
specification Originally committed as revision 20148 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/vorbis_data.c')
-rw-r--r--libavcodec/vorbis_data.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/libavcodec/vorbis_data.c b/libavcodec/vorbis_data.c
index 5e7a738de7..35672fa124 100644
--- a/libavcodec/vorbis_data.c
+++ b/libavcodec/vorbis_data.c
@@ -21,6 +21,25 @@
#include "dsputil.h"
#include "vorbis.h"
+const uint8_t ff_vorbis_channel_layout_offsets[6][6] = {
+ { 0, },
+ { 0, 1, },
+ { 0, 2, 1, },
+ { 0, 1, 2, 3, },
+ { 0, 2, 1, 3, 4, },
+ { 0, 2, 1, 5, 3, 4, }
+};
+
+const int64_t ff_vorbis_channel_layouts[7] = {
+ CH_LAYOUT_MONO,
+ CH_LAYOUT_STEREO,
+ CH_LAYOUT_SURROUND,
+ CH_LAYOUT_QUAD,
+ CH_LAYOUT_5POINT0_BACK,
+ CH_LAYOUT_5POINT1_BACK,
+ 0
+};
+
DECLARE_ALIGNED_16(static const float, vwin64[32]) = {
0.0009460463F, 0.0085006468F, 0.0235352254F, 0.0458950567F,
0.0753351908F, 0.1115073077F, 0.1539457973F, 0.2020557475F,