: accelerator_(env::properties().get(L"configuration.accelerator", L"auto"))
, media_info_repo_(create_in_memory_media_info_repository())
, producer_registry_(spl::make_shared<core::frame_producer_registry>(help_repo_))
: accelerator_(env::properties().get(L"configuration.accelerator", L"auto"))
, media_info_repo_(create_in_memory_media_info_repository())
, producer_registry_(spl::make_shared<core::frame_producer_registry>(help_repo_))
using boost::property_tree::wptree;
for (auto& xml_channel : pt | witerate_children(L"configuration.channels") | welement_context_iteration)
{
using boost::property_tree::wptree;
for (auto& xml_channel : pt | witerate_children(L"configuration.channels") | welement_context_iteration)
{
channel->monitor_output().attach_parent(monitor_subject_);
channel->mixer().set_straight_alpha_output(xml_channel.second.get(L"straight-alpha-output", false));
channel->monitor_output().attach_parent(monitor_subject_);
channel->mixer().set_straight_alpha_output(xml_channel.second.get(L"straight-alpha-output", false));
using boost::property_tree::wptree;
using namespace boost::asio::ip;
monitor_subject_->attach_parent(osc_client_->sink());
using boost::property_tree::wptree;
using namespace boost::asio::ip;
monitor_subject_->attach_parent(osc_client_->sink());
primary_amcp_server_->add_client_lifecycle_object_factory(
[=] (const std::string& ipv4_address)
-> std::pair<std::wstring, std::shared_ptr<void>>
primary_amcp_server_->add_client_lifecycle_object_factory(
[=] (const std::string& ipv4_address)
-> std::pair<std::wstring, std::shared_ptr<void>>
polling_filesystem_monitor_factory monitor_factory(io_service_, scan_interval_millis);
thumbnail_generator_.reset(new thumbnail_generator(
polling_filesystem_monitor_factory monitor_factory(io_service_, scan_interval_millis);
thumbnail_generator_.reset(new thumbnail_generator(
env::media_folder(),
env::thumbnails_folder(),
pt.get(L"configuration.thumbnails.width", 256),
env::media_folder(),
env::thumbnails_folder(),
pt.get(L"configuration.thumbnails.width", 256),
void setup_controllers(const boost::property_tree::wptree& pt)
{
amcp_command_repo_ = spl::make_shared<amcp::amcp_command_repository>(
void setup_controllers(const boost::property_tree::wptree& pt)
{
amcp_command_repo_ = spl::make_shared<amcp::amcp_command_repository>(
auto port = ptree_get<unsigned int>(xml_controller.second, L"port");
auto asyncbootstrapper = spl::make_shared<IO::AsyncEventServer>(
io_service_,
auto port = ptree_get<unsigned int>(xml_controller.second, L"port");
auto asyncbootstrapper = spl::make_shared<IO::AsyncEventServer>(
io_service_,