]> git.sesse.net Git - casparcg/blobdiff - core/video_channel.h
Use ScheduledFrameCompleted callback for audio scheduling in addition to video schedu...
[casparcg] / core / video_channel.h
index fb747eefea1a09abcdd61aec9e5ccf53e5df068d..b3ac548a7ff56b3107962e816ec4c4c6917d1b87 100644 (file)
 #pragma once
 
 #include <common/memory.h>
-#include <common/reactive.h>
 #include <common/forward.h>
 
+#include "fwd.h"
+
 #include "monitor/monitor.h"
 
 #include <boost/property_tree/ptree_fwd.hpp>
 
-FORWARD3(caspar, core, ogl, class accelerator);
-FORWARD2(caspar, core, class stage);
-FORWARD2(caspar, core, class mixer);
-FORWARD2(caspar, core, class output);
-FORWARD2(caspar, core, class image_mixer);
-FORWARD2(caspar, core, struct video_format_desc);
-FORWARD2(caspar, core, class frame_factory);
-
 namespace caspar { namespace core {
        
 class video_channel final
@@ -49,7 +42,11 @@ public:
 
        // Constructors
 
-       explicit video_channel(int index, const video_format_desc& format_desc, std::unique_ptr<image_mixer> image_mixer);
+       explicit video_channel(
+                       int index,
+                       const video_format_desc& format_desc,
+                       const audio_channel_layout& channel_layout,
+                       std::unique_ptr<image_mixer> image_mixer);
        ~video_channel();
 
        // Methods
@@ -67,10 +64,13 @@ public:
 
        core::video_format_desc                                 video_format_desc() const;
        void                                                                    video_format_desc(const core::video_format_desc& format_desc);
+       core::audio_channel_layout                              audio_channel_layout() const;
+       void                                                                    audio_channel_layout(const core::audio_channel_layout& channel_layout);
 
        spl::shared_ptr<core::frame_factory>    frame_factory();
 
        boost::property_tree::wptree                    info() const;
+       boost::property_tree::wptree                    delay_info() const;
        int                                                                             index() const;
 private:
        struct impl;