blob: 438367d9fd8d194e603be56af1708216053f4dc2 [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <stdint.h>
#include "media/filters/opus_constants.h"
namespace media {
const uint8_t kDefaultOpusChannelLayout[OPUS_MAX_CHANNELS_WITH_DEFAULT_LAYOUT] =
{0, 1};
const uint8_t kFFmpegChannelDecodingLayouts
[OPUS_MAX_VORBIS_CHANNELS][OPUS_MAX_VORBIS_CHANNELS] = {
{0},
// Stereo: No reorder.
{0, 1},
// 3 Channels, from Vorbis order to:
// L, R, Center
{0, 2, 1},
// 4 Channels: No reorder.
{0, 1, 2, 3},
// 5 Channels, from Vorbis order to:
// Front L, Front R, Center, Back L, Back R
{0, 2, 1, 3, 4},
// 6 Channels (5.1), from Vorbis order to:
// Front L, Front R, Center, LFE, Back L, Back R
{0, 2, 1, 5, 3, 4},
// 7 Channels (6.1), from Vorbis order to:
// Front L, Front R, Front Center, LFE, Side L, Side R, Back Center
{0, 2, 1, 6, 3, 4, 5},
// 8 Channels (7.1), from Vorbis order to:
// Front L, Front R, Center, LFE, Back L, Back R, Side L, Side R
{0, 2, 1, 7, 5, 6, 3, 4},
};
const uint8_t
kOpusVorbisChannelMap[OPUS_MAX_VORBIS_CHANNELS][OPUS_MAX_VORBIS_CHANNELS] =
{
{0},
{0, 1},
{0, 2, 1},
{0, 1, 2, 3},
{0, 4, 1, 2, 3},
{0, 4, 1, 2, 3, 5},
{0, 4, 1, 2, 3, 5, 6},
{0, 6, 1, 2, 3, 4, 5, 7},
};
} // namespace media