+ BOOST_FOREACH(auto device, caspar::bluefish::get_device_list())\r
+ info.add(L"system.bluefish.device", device);\r
+ \r
+ info.add(L"system.flash", caspar::flash::get_version());\r
+ info.add(L"system.free-image", caspar::image::get_version());\r
+ info.add(L"system.ffmpeg.avcodec", caspar::ffmpeg::get_avcodec_version());\r
+ info.add(L"system.ffmpeg.avformat", caspar::ffmpeg::get_avformat_version());\r
+ info.add(L"system.ffmpeg.avfilter", caspar::ffmpeg::get_avfilter_version());\r
+ info.add(L"system.ffmpeg.avutil", caspar::ffmpeg::get_avutil_version());\r
+ info.add(L"system.ffmpeg.swscale", caspar::ffmpeg::get_swscale_version());\r
+ \r
+ boost::property_tree::write_xml(replyString, info, w);\r
+ }\r
+ else if(_parameters.size() >= 1 && _parameters[0] == L"SERVER")\r
+ {\r
+ replyString << L"201 INFO SYSTEM OK\r\n";\r
+ \r
+ boost::property_tree::wptree info;\r
+\r
+ int index = 0;\r
+ BOOST_FOREACH(auto channel, channels_)\r
+ info.add_child(L"channels.channel", channel->info())\r
+ .add(L"index", ++index);\r
+ \r
+ boost::property_tree::write_xml(replyString, info, w);\r
+ }\r
+ else // channel\r
+ { \r