@@ -70,6 +70,17 @@ static const AVClass vorbis_class = {
.version = LIBAVUTIL_VERSION_INT,
};
+static const uint8_t vorbis_encoding_channel_layout_offsets[8][8] = {
+ { 0 },
+ { 0, 1 },
+ { 0, 2, 1 },
+ { 0, 1, 2, 3 },
+ { 0, 2, 1, 3, 4 },
+ { 0, 2, 1, 4, 5, 3 },
+ { 0, 2, 1, 5, 6, 4, 3 },
+ { 0, 2, 1, 6, 7, 4, 5, 3 },
+};
+
static int vorbis_error_to_averror(int ov_err)
{
switch (ov_err) {
@@ -287,7 +298,7 @@ static int libvorbis_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
buffer = vorbis_analysis_buffer(&s->vd, samples);
for (c = 0; c < channels; c++) {
int co = (channels > 8) ? c :
- ff_vorbis_encoding_channel_layout_offsets[channels - 1][c];
+ vorbis_encoding_channel_layout_offsets[channels - 1][c];
memcpy(buffer[c], frame->extended_data[co],
samples * sizeof(*buffer[c]));
}
@@ -26,7 +26,6 @@
extern const float ff_vorbis_floor1_inverse_db_table[256];
extern const float * const ff_vorbis_vwin[8];
extern const uint8_t ff_vorbis_channel_layout_offsets[8][8];
-extern const uint8_t ff_vorbis_encoding_channel_layout_offsets[8][8];
extern const uint64_t ff_vorbis_channel_layouts[9];
typedef struct vorbis_floor1_entry {
@@ -34,17 +34,6 @@ const uint8_t ff_vorbis_channel_layout_offsets[8][8] = {
{ 0, 2, 1, 7, 5, 6, 3, 4 },
};
-const uint8_t ff_vorbis_encoding_channel_layout_offsets[8][8] = {
- { 0 },
- { 0, 1 },
- { 0, 2, 1 },
- { 0, 1, 2, 3 },
- { 0, 2, 1, 3, 4 },
- { 0, 2, 1, 4, 5, 3 },
- { 0, 2, 1, 5, 6, 4, 3 },
- { 0, 2, 1, 6, 7, 4, 5, 3 },
-};
-
const uint64_t ff_vorbis_channel_layouts[9] = {
AV_CH_LAYOUT_MONO,
AV_CH_LAYOUT_STEREO,
Said table was unused in case libvorbis was disabled. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> --- libavcodec/libvorbisenc.c | 13 ++++++++++++- libavcodec/vorbis.h | 1 - libavcodec/vorbis_data.c | 11 ----------- 3 files changed, 12 insertions(+), 13 deletions(-)