3 #include <tbb/spin_mutex.h>
\r
5 namespace caspar { namespace core {
\r
7 class audio_transform
\r
12 void set_gain(double value);
\r
13 double get_gain() const;
\r
15 audio_transform& operator*=(const audio_transform &other);
\r
16 const audio_transform operator*(const audio_transform &other) const;
\r
19 mutable tbb::spin_mutex mutex_;
\r
27 void begin(const audio_transform& transform);
\r
28 void process(const std::vector<short>& audio_data);
\r
31 std::vector<short> begin_pass();
\r
35 struct implementation;
\r
36 std::shared_ptr<implementation> impl_;
\r