#include <common/forward.h>
#include <common/future_fwd.h>
#include <common/memory.h>
-#include <common/reactive.h>
-#include <core/video_format.h>
+#include <core/fwd.h>
+#include <core/monitor/monitor.h>
#include <boost/property_tree/ptree_fwd.hpp>
// Constructors
- explicit mixer(spl::shared_ptr<diagnostics::graph> graph, spl::shared_ptr<class image_mixer> image_mixer);
+ explicit mixer(int channel_index, spl::shared_ptr<caspar::diagnostics::graph> graph, spl::shared_ptr<image_mixer> image_mixer);
// Methods
- class const_frame operator()(std::map<int, class draw_frame> frames, const struct video_format_desc& format_desc);
+ const_frame operator()(std::map<int, draw_frame> frames, const video_format_desc& format_desc, const core::audio_channel_layout& channel_layout);
void set_master_volume(float volume);
float get_master_volume();
+ void set_straight_alpha_output(bool value);
+ bool get_straight_alpha_output();
- class mutable_frame create_frame(const void* tag, const struct pixel_format_desc& desc);
+ mutable_frame create_frame(const void* tag, const pixel_format_desc& desc, const core::audio_channel_layout& channel_layout);
// Properties
std::future<boost::property_tree::wptree> info() const;
+ std::future<boost::property_tree::wptree> delay_info() const;
+
+ monitor::subject& monitor_output();
private:
struct impl;