if(frame == nullptr)\r
return;\r
\r
- if(frame->get_pixel_format_desc().format == core::pixel_format::invalid)\r
+ if(frame->pixel_format_desc().format == core::pixel_format::invalid)\r
return;\r
\r
- if(frame->get_buffers().empty())\r
+ if(frame->buffers().empty())\r
return;\r
\r
if(transform_stack_.back().field_mode == core::field_mode::empty)\r
return;\r
\r
item item;\r
- item.pix_desc = frame->get_pixel_format_desc();\r
- item.buffers = frame->get_buffers(); \r
+ item.pix_desc = frame->pixel_format_desc();\r
+ item.buffers = frame->buffers(); \r
item.transform = transform_stack_.back();\r
\r
items_.push_back(item);\r
}\r
void write_frame::swap(write_frame& other){impl_.swap(other.impl_);}\r
void write_frame::accept(core::frame_visitor& visitor) const {impl_->accept(*this, visitor);}\r
-const core::pixel_format_desc& write_frame::get_pixel_format_desc() const{return impl_->desc_;}\r
+const core::pixel_format_desc& write_frame::pixel_format_desc() const{return impl_->desc_;}\r
const boost::iterator_range<const uint8_t*> write_frame::image_data(int index) const{return impl_->image_data(index);}\r
const core::audio_buffer& write_frame::audio_data() const{return impl_->audio_data_;}\r
const boost::iterator_range<uint8_t*> write_frame::image_data(int index){return impl_->image_data(index);}\r
int write_frame::width() const{return impl_->desc_.planes.at(0).width;}\r
int write_frame::height() const{return impl_->desc_.planes.at(0).height;} \r
const void* write_frame::tag() const{return impl_->tag_;} \r
-std::vector<spl::shared_ptr<host_buffer>> write_frame::get_buffers() const{return impl_->buffers_;}\r
+std::vector<spl::shared_ptr<host_buffer>> write_frame::buffers() const{return impl_->buffers_;}\r
\r
}}}
\ No newline at end of file
\r
// data_frame\r
\r
- virtual const core::pixel_format_desc& get_pixel_format_desc() const override;\r
+ virtual const core::pixel_format_desc& pixel_format_desc() const override;\r
\r
virtual const boost::iterator_range<const uint8_t*> image_data(int index) const override;\r
virtual const core::audio_buffer& audio_data() const override;\r
\r
// write_frames\r
\r
- std::vector<spl::shared_ptr<host_buffer>> get_buffers() const; \r
+ std::vector<spl::shared_ptr<host_buffer>> buffers() const; \r
private:\r
struct impl;\r
spl::shared_ptr<impl> impl_;\r
if(frame == nullptr)\r
return;\r
\r
- if(frame->get_pixel_format_desc().format == core::pixel_format::invalid)\r
+ if(frame->pixel_format_desc().format == core::pixel_format::invalid)\r
return;\r
\r
- if(frame->get_buffers().empty())\r
+ if(frame->buffers().empty())\r
return;\r
\r
if(transform_stack_.back().field_mode == core::field_mode::empty)\r
return;\r
\r
item item;\r
- item.pix_desc = frame->get_pixel_format_desc();\r
- item.buffers = frame->get_buffers(); \r
+ item.pix_desc = frame->pixel_format_desc();\r
+ item.buffers = frame->buffers(); \r
item.transform = transform_stack_.back();\r
\r
layers_.back().items.push_back(item);\r
}\r
void write_frame::swap(write_frame& other){impl_.swap(other.impl_);}\r
void write_frame::accept(core::frame_visitor& visitor) const {impl_->accept(*this, visitor);}\r
-const core::pixel_format_desc& write_frame::get_pixel_format_desc() const{return impl_->desc_;}\r
+const core::pixel_format_desc& write_frame::pixel_format_desc() const{return impl_->desc_;}\r
const boost::iterator_range<const uint8_t*> write_frame::image_data(int index) const{return impl_->image_data(index);}\r
const core::audio_buffer& write_frame::audio_data() const{return impl_->audio_data_;}\r
const boost::iterator_range<uint8_t*> write_frame::image_data(int index){return impl_->image_data(index);}\r
int write_frame::width() const{return impl_->desc_.planes.at(0).width;}\r
int write_frame::height() const{return impl_->desc_.planes.at(0).height;} \r
const void* write_frame::tag() const{return impl_->tag_;} \r
-std::vector<spl::shared_ptr<ogl::host_buffer>> write_frame::get_buffers() const{return impl_->buffers_;}\r
+std::vector<spl::shared_ptr<ogl::host_buffer>> write_frame::buffers() const{return impl_->buffers_;}\r
\r
}}}
\ No newline at end of file
\r
// data_frame\r
\r
- virtual const core::pixel_format_desc& get_pixel_format_desc() const override;\r
+ virtual const core::pixel_format_desc& pixel_format_desc() const override;\r
\r
virtual const boost::iterator_range<const uint8_t*> image_data(int index) const override;\r
virtual const core::audio_buffer& audio_data() const override;\r
\r
// write_frames\r
\r
- std::vector<spl::shared_ptr<class host_buffer>> get_buffers() const;\r
+ std::vector<spl::shared_ptr<class host_buffer>> buffers() const;\r
private:\r
struct impl;\r
spl::shared_ptr<impl> impl_;\r
\r
namespace caspar {\r
\r
-static std::wstring get_win_product_name()\r
+static std::wstring win_product_name()\r
{\r
std::wstring result = L"Unknown Windows Product Name.";\r
HKEY hkey; \r
return result;\r
}\r
\r
-static std::wstring get_win_sp_version()\r
+static std::wstring win_sp_version()\r
{\r
std::wstring result = L"";\r
HKEY hkey; \r
\r
namespace caspar {\r
\r
-static std::wstring get_cpu_info()\r
+static std::wstring cpu_info()\r
{\r
std::wstring cpu_name = L"Unknown CPU";\r
HKEY hkey; \r
return s.str();\r
}\r
\r
-static std::wstring get_system_product_name()\r
+static std::wstring system_product_name()\r
{\r
std::wstring system_product_name = L"Unknown System";\r
HKEY hkey; \r
{\r
public:\r
empty_frame(){}\r
- virtual const struct pixel_format_desc& get_pixel_format_desc() const override\r
+ virtual const struct core::pixel_format_desc& pixel_format_desc() const override\r
{\r
- static pixel_format_desc invalid(pixel_format::invalid);\r
+ static core::pixel_format_desc invalid(pixel_format::invalid);\r
return invalid;\r
}\r
virtual const boost::iterator_range<const uint8_t*> image_data(int) const override\r
data_frame(){}\r
virtual ~data_frame(){}\r
\r
- virtual const struct pixel_format_desc& get_pixel_format_desc() const = 0;\r
+ virtual const struct pixel_format_desc& pixel_format_desc() const = 0;\r
\r
virtual const boost::iterator_range<const uint8_t*> image_data(int index = 0) const = 0;\r
virtual const audio_buffer& audio_data() const = 0;\r
mutable boost::shared_future<boost::iterator_range<const uint8_t*>> image_data_;\r
const audio_buffer audio_data_;\r
const video_format_desc video_desc_;\r
- pixel_format_desc pixel_desc_;\r
+ core::pixel_format_desc pixel_desc_;\r
const void* tag_;\r
\r
public:\r
BOOST_THROW_EXCEPTION(invalid_operation());\r
}\r
\r
- virtual const struct pixel_format_desc& get_pixel_format_desc() const override\r
+ virtual const struct pixel_format_desc& pixel_format_desc() const override\r
{\r
return pixel_desc_;\r
}\r
catch(...){}\r
}\r
\r
-std::wstring get_version()\r
+std::wstring version()\r
{\r
try\r
{\r
return u16(BlueVelvetVersion());\r
}\r
\r
-std::vector<std::wstring> get_device_list()\r
+std::vector<std::wstring> device_list()\r
{\r
std::vector<std::wstring> devices;\r
\r
\r
void init();\r
\r
-std::wstring get_version();\r
-std::vector<std::wstring> get_device_list();\r
+std::wstring version();\r
+std::vector<std::wstring> device_list();\r
\r
}}
\ No newline at end of file
core::register_producer_factory(create_producer);\r
}\r
\r
-std::wstring get_version() \r
+std::wstring version() \r
{\r
std::wstring version = L"Not found";\r
\r
{\r
CComPtr<IDeckLinkIterator> pDecklinkIterator;\r
if(SUCCEEDED(pDecklinkIterator.CoCreateInstance(CLSID_CDeckLinkIterator))) \r
- version = get_version(pDecklinkIterator);\r
+ version = decklink::version(pDecklinkIterator);\r
}\r
catch(...){}\r
\r
return version;\r
}\r
\r
-std::vector<std::wstring> get_device_list()\r
+std::vector<std::wstring> device_list()\r
{\r
std::vector<std::wstring> devices;\r
\r
\r
void init();\r
\r
-std::wstring get_version();\r
-std::vector<std::wstring> get_device_list();\r
+std::wstring version();\r
+std::vector<std::wstring> device_list();\r
\r
}}
\ No newline at end of file
}\r
\r
template<typename T>\r
-static std::wstring get_version(T& iterator)\r
+static std::wstring version(T& iterator)\r
{\r
CComQIPtr<IDeckLinkAPIInformation> info = iterator;\r
if (!info)\r
return str.str();\r
}\r
\r
-std::wstring get_avcodec_version()\r
+std::wstring avcodec_version()\r
{\r
- return make_version(avcodec_version());\r
+ return make_version(::avcodec_version());\r
}\r
\r
-std::wstring get_avformat_version()\r
+std::wstring avformat_version()\r
{\r
- return make_version(avformat_version());\r
+ return make_version(::avformat_version());\r
}\r
\r
-std::wstring get_avutil_version()\r
+std::wstring avutil_version()\r
{\r
- return make_version(avutil_version());\r
+ return make_version(::avutil_version());\r
}\r
\r
-std::wstring get_avfilter_version()\r
+std::wstring avfilter_version()\r
{\r
- return make_version(avfilter_version());\r
+ return make_version(::avfilter_version());\r
}\r
\r
-std::wstring get_swscale_version()\r
+std::wstring swscale_version()\r
{\r
- return make_version(swscale_version());\r
+ return make_version(::swscale_version());\r
}\r
\r
}}
\ No newline at end of file
void init();\r
void uninit();\r
\r
-std::wstring get_avcodec_version();\r
-std::wstring get_avformat_version();\r
-std::wstring get_avutil_version();\r
-std::wstring get_avfilter_version();\r
-std::wstring get_swscale_version();\r
+std::wstring avcodec_version();\r
+std::wstring avformat_version();\r
+std::wstring avutil_version();\r
+std::wstring avfilter_version();\r
+std::wstring swscale_version();\r
\r
}}
\ No newline at end of file
}\r
}\r
\r
-core::pixel_format_desc get_pixel_format_desc(PixelFormat pix_fmt, int width, int height)\r
+core::pixel_format_desc pixel_format_desc(PixelFormat pix_fmt, int width, int height)\r
{\r
// Get linesizes\r
AVPicture dummy_pict; \r
\r
const auto width = decoded_frame->width;\r
const auto height = decoded_frame->height;\r
- auto desc = get_pixel_format_desc(static_cast<PixelFormat>(decoded_frame->format), width, height);\r
+ auto desc = pixel_format_desc(static_cast<PixelFormat>(decoded_frame->format), width, height);\r
\r
if(flags & core::frame_producer::flags::alpha_only)\r
- desc = get_pixel_format_desc(static_cast<PixelFormat>(make_alpha_format(decoded_frame->format)), width, height);\r
+ desc = pixel_format_desc(static_cast<PixelFormat>(make_alpha_format(decoded_frame->format)), width, height);\r
\r
std::shared_ptr<core::write_frame> write;\r
\r
else if(pix_fmt == PIX_FMT_YUV444P10)\r
target_pix_fmt = PIX_FMT_YUV444P;\r
\r
- auto target_desc = get_pixel_format_desc(target_pix_fmt, width, height);\r
+ auto target_desc = pixel_format_desc(target_pix_fmt, width, height);\r
\r
write = frame_factory->create_frame(tag, target_desc, fps, get_mode(*decoded_frame));\r
\r
spl::shared_ptr<AVFrame> make_av_frame(caspar::core::data_frame& frame)\r
{\r
std::array<void*, 4> data = {};\r
- for(int n = 0; n < frame.get_pixel_format_desc().planes.size(); ++n)\r
+ for(int n = 0; n < frame.pixel_format_desc().planes.size(); ++n)\r
data[n] = frame.image_data(n).begin();\r
\r
- return make_av_frame(data, frame.get_pixel_format_desc());\r
+ return make_av_frame(data, frame.pixel_format_desc());\r
}\r
\r
spl::shared_ptr<AVFrame> make_av_frame(std::array<void*, 4> data, const core::pixel_format_desc& pix_desc)\r
return make_av_frame(data, pix_desc);\r
}\r
\r
-core::pixel_format_desc get_pixel_format_desc(PixelFormat pix_fmt, int width, int height);\r
+core::pixel_format_desc pixel_format_desc(PixelFormat pix_fmt, int width, int height);\r
\r
spl::shared_ptr<AVPacket> create_packet();\r
\r
core::register_producer_factory(create_ct_producer);\r
}\r
\r
-std::wstring get_cg_version()\r
+std::wstring cg_version()\r
{\r
return L"Unknown";\r
}\r
\r
-std::wstring get_version()\r
+std::wstring version()\r
{ \r
std::wstring version = L"Not found";\r
#ifdef WIN32\r
\r
void init();\r
\r
-std::wstring get_cg_version();\r
-std::wstring get_version();\r
+std::wstring cg_version();\r
+std::wstring version();\r
\r
}}
\ No newline at end of file
}\r
\r
\r
-std::wstring get_version()\r
+std::wstring version()\r
{\r
return u16(FreeImage_GetVersion());\r
}\r
void init();\r
void uninit();\r
\r
-std::wstring get_version();\r
+std::wstring version();\r
\r
}}
\ No newline at end of file
if(half_speed && frame_number_ % 2 == 0) // Skip frame\r
return receive(0);\r
\r
- auto frame = frame_factory_->create_frame(this, read_frame->get_pixel_format_desc());\r
+ auto frame = frame_factory_->create_frame(this, read_frame->pixel_format_desc());\r
\r
A_memcpy(frame->image_data(0).begin(), read_frame->image_data().begin(), read_frame->image_data().size());\r
boost::push_back(frame->audio_data(), read_frame->audio_data());\r
\r
boost::property_tree::wptree info;\r
\r
- info.add(L"system.name", caspar::get_system_product_name());\r
- info.add(L"system.windows.name", caspar::get_win_product_name());\r
- info.add(L"system.windows.service-pack", caspar::get_win_sp_version());\r
- info.add(L"system.cpu", caspar::get_cpu_info());\r
+ info.add(L"system.name", caspar::system_product_name());\r
+ info.add(L"system.windows.name", caspar::win_product_name());\r
+ info.add(L"system.windows.service-pack", caspar::win_sp_version());\r
+ info.add(L"system.cpu", caspar::cpu_info());\r
\r
- BOOST_FOREACH(auto device, caspar::decklink::get_device_list())\r
+ BOOST_FOREACH(auto device, caspar::decklink::device_list())\r
info.add(L"system.decklink.device", device);\r
\r
- BOOST_FOREACH(auto device, caspar::bluefish::get_device_list())\r
+ BOOST_FOREACH(auto device, caspar::bluefish::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
+ info.add(L"system.flash", caspar::flash::version());\r
+ //info.add(L"system.free-image", caspar::image::version());\r
+ info.add(L"system.ffmpeg.avcodec", caspar::ffmpeg::avcodec_version());\r
+ info.add(L"system.ffmpeg.avformat", caspar::ffmpeg::avformat_version());\r
+ info.add(L"system.ffmpeg.avfilter", caspar::ffmpeg::avfilter_version());\r
+ info.add(L"system.ffmpeg.avutil", caspar::ffmpeg::avutil_version());\r
+ info.add(L"system.ffmpeg.swscale", caspar::ffmpeg::swscale_version());\r
\r
boost::property_tree::write_xml(replyString, info, w);\r
}\r
if(_parameters.size() > 0)\r
{\r
if(_parameters[0] == L"FLASH")\r
- replyString = TEXT("201 VERSION OK\r\n") + flash::get_version() + TEXT("\r\n");\r
+ replyString = TEXT("201 VERSION OK\r\n") + flash::version() + TEXT("\r\n");\r
else if(_parameters[0] == L"TEMPLATEHOST")\r
- replyString = TEXT("201 VERSION OK\r\n") + flash::get_cg_version() + TEXT("\r\n");\r
+ replyString = TEXT("201 VERSION OK\r\n") + flash::cg_version() + TEXT("\r\n");\r
else if(_parameters[0] != L"SERVER")\r
replyString = TEXT("403 VERSION ERROR\r\n");\r
}\r
CASPAR_LOG(info) << L"Copyright (c) 2010 Sveriges Television AB, www.casparcg.com, <info@casparcg.com>";\r
CASPAR_LOG(info) << L"################################################################################";\r
CASPAR_LOG(info) << L"Starting CasparCG Video and Graphics Playout Server " << env::version();\r
- CASPAR_LOG(info) << L"on " << get_win_product_name() << L" " << get_win_sp_version();\r
- CASPAR_LOG(info) << get_cpu_info();\r
- CASPAR_LOG(info) << get_system_product_name();\r
+ CASPAR_LOG(info) << L"on " << win_product_name() << L" " << win_sp_version();\r
+ CASPAR_LOG(info) << cpu_info();\r
+ CASPAR_LOG(info) << system_product_name();\r
\r
- CASPAR_LOG(info) << L"Decklink " << decklink::get_version();\r
- BOOST_FOREACH(auto device, decklink::get_device_list())\r
+ CASPAR_LOG(info) << L"Decklink " << decklink::version();\r
+ BOOST_FOREACH(auto device, decklink::device_list())\r
CASPAR_LOG(info) << L" - " << device; \r
\r
- CASPAR_LOG(info) << L"Bluefish " << bluefish::get_version();\r
- BOOST_FOREACH(auto device, bluefish::get_device_list())\r
+ CASPAR_LOG(info) << L"Bluefish " << bluefish::version();\r
+ BOOST_FOREACH(auto device, bluefish::device_list())\r
CASPAR_LOG(info) << L" - " << device; \r
\r
- CASPAR_LOG(info) << L"Flash " << flash::get_version();\r
- CASPAR_LOG(info) << L"FreeImage " << image::get_version();\r
- CASPAR_LOG(info) << L"FFMPEG-avcodec " << ffmpeg::get_avcodec_version();\r
- CASPAR_LOG(info) << L"FFMPEG-avformat " << ffmpeg::get_avformat_version();\r
- CASPAR_LOG(info) << L"FFMPEG-avfilter " << ffmpeg::get_avfilter_version();\r
- CASPAR_LOG(info) << L"FFMPEG-avutil " << ffmpeg::get_avutil_version();\r
- CASPAR_LOG(info) << L"FFMPEG-swscale " << ffmpeg::get_swscale_version();\r
+ CASPAR_LOG(info) << L"Flash " << flash::version();\r
+ CASPAR_LOG(info) << L"FreeImage " << image::version();\r
+ CASPAR_LOG(info) << L"FFMPEG-avcodec " << ffmpeg::avcodec_version();\r
+ CASPAR_LOG(info) << L"FFMPEG-avformat " << ffmpeg::avformat_version();\r
+ CASPAR_LOG(info) << L"FFMPEG-avfilter " << ffmpeg::avfilter_version();\r
+ CASPAR_LOG(info) << L"FFMPEG-avutil " << ffmpeg::avutil_version();\r
+ CASPAR_LOG(info) << L"FFMPEG-swscale " << ffmpeg::swscale_version();\r
}\r
\r
LONG WINAPI UserUnhandledExceptionFilter(EXCEPTION_POINTERS* info)\r
//caspar_server.subscribe(console_obs);\r
\r
// Create a amcp parser for console commands.\r
- protocol::amcp::AMCPProtocolStrategy amcp(caspar_server.get_channels());\r
+ protocol::amcp::AMCPProtocolStrategy amcp(caspar_server.channels());\r
\r
// Create a dummy client which prints amcp responses to console.\r
auto console_client = std::make_shared<IO::ConsoleClientInfo>();\r
\r
server::server() : impl_(new impl()){}\r
\r
-const std::vector<spl::shared_ptr<video_channel>> server::get_channels() const\r
+const std::vector<spl::shared_ptr<video_channel>> server::channels() const\r
{\r
return impl_->channels_;\r
}\r
{\r
public:\r
server();\r
- const std::vector<spl::shared_ptr<core::video_channel>> get_channels() const;\r
+ const std::vector<spl::shared_ptr<core::video_channel>> channels() const;\r
\r
// monitor::observable\r
\r