5 #include <common/compiler/vs/disable_silly_warnings.h>
\r
7 namespace caspar { namespace core {
\r
45 struct video_format_desc
\r
47 video_format::type format; // video output format
\r
49 size_t width; // output frame width
\r
50 size_t height; // output frame height
\r
51 video_mode::type mode; // progressive, interlaced upper field first, interlaced lower field first
\r
52 double fps; // actual framerate, e.g. i50 = 25 fps, p50 = 50 fps
\r
53 double interval; // time between frames
\r
54 size_t size; // output frame size in bytes
\r
55 std::wstring name; // name of output format
\r
57 static const video_format_desc& get(video_format::type format);
\r
58 static const video_format_desc& get(const std::wstring& name);
\r
61 inline bool operator==(const video_format_desc& rhs, const video_format_desc& lhs)
\r
63 return rhs.format == lhs.format;
\r
66 inline bool operator!=(const video_format_desc& rhs, const video_format_desc& lhs)
\r
68 return !(rhs == lhs);
\r
71 inline std::wostream& operator<<(std::wostream& out, const video_format_desc& format_desc)
\r
73 out << format_desc.name.c_str();
\r