// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef MEDIA_BASE_CHANNEL_MIXER_H_ #define MEDIA_BASE_CHANNEL_MIXER_H_ #include <vector> #include "media/base/channel_layout.h" #include "media/base/media_export.h" namespace media { class AudioBus; class AudioParameters; // ChannelMixer is for converting audio between channel layouts. The conversion // matrix is built upon construction and used during each Transform() call. The // algorithm works by generating a conversion matrix mapping each output channel // to list of input channels. The transform renders all of the output channels, // with each output channel rendered according to a weighted sum of the relevant // input channels as defined in the matrix. class MEDIA_EXPORT ChannelMixer { … }; } // namespace media #endif // MEDIA_BASE_CHANNEL_MIXER_H_