#include "except.h"
-#include <boost/assign/list_of.hpp>
#include <boost/regex.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/range/adaptor/map.hpp>
const std::unordered_map<std::wstring, tween_t>& get_tweens()
{
- static const std::unordered_map<std::wstring, tween_t> tweens = boost::assign::map_list_of
- (L"", ease_none )
- (L"linear", ease_none )
- (L"easenone", ease_none )
- (L"easeinquad", ease_in_quad )
- (L"easeoutquad", ease_out_quad )
- (L"easeinoutquad", ease_in_out_quad )
- (L"easeoutinquad", ease_out_in_quad )
- (L"easeincubic", ease_in_cubic )
- (L"easeoutcubic", ease_out_cubic )
- (L"easeinoutcubic", ease_in_out_cubic )
- (L"easeoutincubic", ease_out_in_cubic )
- (L"easeinquart", ease_in_quart )
- (L"easeoutquart", ease_out_quart )
- (L"easeinoutquart", ease_in_out_quart )
- (L"easeoutinquart", ease_out_in_quart )
- (L"easeinquint", ease_in_quint )
- (L"easeoutquint", ease_out_quint )
- (L"easeinoutquint", ease_in_out_quint )
- (L"easeoutinquint", ease_out_in_quint )
- (L"easeinsine", ease_in_sine )
- (L"easeoutsine", ease_out_sine )
- (L"easeinoutsine", ease_in_out_sine )
- (L"easeoutinsine", ease_out_in_sine )
- (L"easeinexpo", ease_in_expo )
- (L"easeoutexpo", ease_out_expo )
- (L"easeinoutexpo", ease_in_out_expo )
- (L"easeoutinexpo", ease_out_in_expo )
- (L"easeincirc", ease_in_circ )
- (L"easeoutcirc", ease_out_circ )
- (L"easeinoutcirc", ease_in_out_circ )
- (L"easeoutincirc", ease_out_in_circ )
- (L"easeinelastic", ease_in_elastic )
- (L"easeoutelastic", ease_out_elastic )
- (L"easeinoutelastic", ease_in_out_elastic)
- (L"easeoutinelastic", ease_out_in_elastic)
- (L"easeinback", ease_in_back )
- (L"easeoutback", ease_out_back )
- (L"easeinoutback", ease_in_out_back )
- (L"easeoutintback", ease_out_int_back )
- (L"easeoutbounce", ease_out_bounce )
- (L"easeinbounce", ease_in_bounce )
- (L"easeinoutbounce", ease_in_out_bounce )
- (L"easeoutinbounce", ease_out_in_bounce );
+ static const std::unordered_map<std::wstring, tween_t> tweens = {
+ {L"", ease_none },
+ {L"linear", ease_none },
+ {L"easenone", ease_none },
+ {L"easeinquad", ease_in_quad },
+ {L"easeoutquad", ease_out_quad },
+ {L"easeinoutquad", ease_in_out_quad },
+ {L"easeoutinquad", ease_out_in_quad },
+ {L"easeincubic", ease_in_cubic },
+ {L"easeoutcubic", ease_out_cubic },
+ {L"easeinoutcubic", ease_in_out_cubic },
+ {L"easeoutincubic", ease_out_in_cubic },
+ {L"easeinquart", ease_in_quart },
+ {L"easeoutquart", ease_out_quart },
+ {L"easeinoutquart", ease_in_out_quart },
+ {L"easeoutinquart", ease_out_in_quart },
+ {L"easeinquint", ease_in_quint },
+ {L"easeoutquint", ease_out_quint },
+ {L"easeinoutquint", ease_in_out_quint },
+ {L"easeoutinquint", ease_out_in_quint },
+ {L"easeinsine", ease_in_sine },
+ {L"easeoutsine", ease_out_sine },
+ {L"easeinoutsine", ease_in_out_sine },
+ {L"easeoutinsine", ease_out_in_sine },
+ {L"easeinexpo", ease_in_expo },
+ {L"easeoutexpo", ease_out_expo },
+ {L"easeinoutexpo", ease_in_out_expo },
+ {L"easeoutinexpo", ease_out_in_expo },
+ {L"easeincirc", ease_in_circ },
+ {L"easeoutcirc", ease_out_circ },
+ {L"easeinoutcirc", ease_in_out_circ },
+ {L"easeoutincirc", ease_out_in_circ },
+ {L"easeinelastic", ease_in_elastic },
+ {L"easeoutelastic", ease_out_elastic },
+ {L"easeinoutelastic", ease_in_out_elastic },
+ {L"easeoutinelastic", ease_out_in_elastic },
+ {L"easeinback", ease_in_back },
+ {L"easeoutback", ease_out_back },
+ {L"easeinoutback", ease_in_out_back },
+ {L"easeoutintback", ease_out_int_back },
+ {L"easeoutbounce", ease_out_bounce },
+ {L"easeinbounce", ease_in_bounce },
+ {L"easeinoutbounce", ease_in_out_bounce },
+ {L"easeoutinbounce", ease_out_in_bounce }
+ };
return tweens;
}
#include "video_format.h"
#include <boost/algorithm/string.hpp>
-#include <boost/assign.hpp>
namespace caspar { namespace core {
-const std::vector<video_format_desc> format_descs = boost::assign::list_of
- (video_format_desc(video_format::pal, 720, 576, 1024, 576, field_mode::upper, 25, 1, L"PAL", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::ntsc, 720, 486, 720, 540, field_mode::lower, 30000, 1001, L"NTSC", boost::assign::list_of<int>(1602)(1601)(1602)(1601)(1602)))
- (video_format_desc(video_format::x576p2500, 720, 576, 1024, 576, field_mode::progressive, 25, 1, L"576p2500", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x720p2398, 1280, 720, 1280, 720, field_mode::progressive, 24000, 1001, L"720p2398", boost::assign::list_of<int>(2002) ))
- (video_format_desc(video_format::x720p2400, 1280, 720, 1280, 720, field_mode::progressive, 24, 1, L"720p2400", boost::assign::list_of<int>(2000) ))
- (video_format_desc(video_format::x720p2500, 1280, 720, 1280, 720, field_mode::progressive, 25, 1, L"720p2500", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x720p5000, 1280, 720, 1280, 720, field_mode::progressive, 50, 1, L"720p5000", boost::assign::list_of<int>(960) ))
- (video_format_desc(video_format::x720p2997, 1280, 720, 1280, 720, field_mode::progressive, 30000, 1001, L"720p2997", boost::assign::list_of<int>(1602)(1601)(1602)(1601)(1602)))
- (video_format_desc(video_format::x720p5994, 1280, 720, 1280, 720, field_mode::progressive, 60000, 1001, L"720p5994", boost::assign::list_of<int>(801) (800) (801) (801) (801) ))
- (video_format_desc(video_format::x720p3000, 1280, 720, 1280, 720, field_mode::progressive, 30, 1, L"720p3000", boost::assign::list_of<int>(1600) ))
- (video_format_desc(video_format::x720p6000, 1280, 720, 1280, 720, field_mode::progressive, 60, 1, L"720p6000", boost::assign::list_of<int>(800) ))
- (video_format_desc(video_format::x1080p2398, 1920, 1080, 1920, 1080, field_mode::progressive, 24000, 1001, L"1080p2398", boost::assign::list_of<int>(2002) ))
- (video_format_desc(video_format::x1080p2400, 1920, 1080, 1920, 1080, field_mode::progressive, 24, 1, L"1080p2400", boost::assign::list_of<int>(2000) ))
- (video_format_desc(video_format::x1080i5000, 1920, 1080, 1920, 1080, field_mode::upper, 25, 1, L"1080i5000", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x1080i5994, 1920, 1080, 1920, 1080, field_mode::upper, 30000, 1001, L"1080i5994", boost::assign::list_of<int>(1602)(1601)(1602)(1601)(1602)))
- (video_format_desc(video_format::x1080i6000, 1920, 1080, 1920, 1080, field_mode::upper, 30, 1, L"1080i6000", boost::assign::list_of<int>(1600) ))
- (video_format_desc(video_format::x1080p2500, 1920, 1080, 1920, 1080, field_mode::progressive, 25, 1, L"1080p2500", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x1080p2997, 1920, 1080, 1920, 1080, field_mode::progressive, 30000, 1001, L"1080p2997", boost::assign::list_of<int>(1602)(1601)(1602)(1601)(1602)))
- (video_format_desc(video_format::x1080p3000, 1920, 1080, 1920, 1080, field_mode::progressive, 30, 1, L"1080p3000", boost::assign::list_of<int>(1600) ))
- (video_format_desc(video_format::x1080p5000, 1920, 1080, 1920, 1080, field_mode::progressive, 50, 1, L"1080p5000", boost::assign::list_of<int>(960) ))
- (video_format_desc(video_format::x1080p5994, 1920, 1080, 1920, 1080, field_mode::progressive, 60000, 1001, L"1080p5994", boost::assign::list_of<int>(801) (800) (801) (801) (801) ))
- (video_format_desc(video_format::x1080p6000, 1920, 1080, 1920, 1080, field_mode::progressive, 60, 1, L"1080p6000", boost::assign::list_of<int>(800) ))
- (video_format_desc(video_format::x2k2398, 2048, 1556, 2048, 1556, field_mode::progressive, 24000, 1001, L"2k2398", boost::assign::list_of<int>(2002) ))
- (video_format_desc(video_format::x2k2400, 2048, 1556, 2048, 1556, field_mode::progressive, 24, 1, L"2k2400", boost::assign::list_of<int>(2000) ))
- (video_format_desc(video_format::x2k2500, 2048, 1556, 2048, 1556, field_mode::progressive, 25, 1, L"2k2500", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x4k2398, 3840, 2160, 3840, 2160, field_mode::progressive, 24000, 1001, L"4k2398", boost::assign::list_of<int>(2002) ))
- (video_format_desc(video_format::x4k2400, 3840, 2160, 3840, 2160, field_mode::progressive, 24, 1, L"4k2400", boost::assign::list_of<int>(2000) ))
- (video_format_desc(video_format::x4k2500, 3840, 2160, 3840, 2160, field_mode::progressive, 25, 1, L"4k2500", boost::assign::list_of<int>(1920) ))
- (video_format_desc(video_format::x4k2997, 3840, 2160, 3840, 2160, field_mode::progressive, 30000, 1001, L"4k2398", boost::assign::list_of<int>(1602)(1601)(1602)(1601)(1602)))
- (video_format_desc(video_format::x4k3000, 3840, 2160, 3840, 2160, field_mode::progressive, 30, 1, L"4k3000", boost::assign::list_of<int>(1600) ))
- (video_format_desc(video_format::invalid, 0, 0, 0, 0, field_mode::progressive, 1, 1, L"invalid", boost::assign::list_of<int>(1) ));
+ const std::vector<video_format_desc> format_descs = {
+ { video_format::pal, 720, 576, 1024, 576, field_mode::upper, 25, 1, L"PAL", { 1920 } },
+ { video_format::ntsc, 720, 486, 720, 540, field_mode::lower, 30000, 1001, L"NTSC", { 1602, 1601, 1602, 1601, 1602 } },
+ { video_format::x576p2500, 720, 576, 1024, 576, field_mode::progressive, 25, 1, L"576p2500", { 1920 } },
+ { video_format::x720p2398, 1280, 720, 1280, 720, field_mode::progressive, 24000, 1001, L"720p2398", { 2002 } },
+ { video_format::x720p2400, 1280, 720, 1280, 720, field_mode::progressive, 24, 1, L"720p2400", { 2000 } },
+ { video_format::x720p2500, 1280, 720, 1280, 720, field_mode::progressive, 25, 1, L"720p2500", { 1920 } },
+ { video_format::x720p5000, 1280, 720, 1280, 720, field_mode::progressive, 50, 1, L"720p5000", { 960 } },
+ { video_format::x720p2997, 1280, 720, 1280, 720, field_mode::progressive, 30000, 1001, L"720p2997", { 1602, 1601, 1602, 1601, 1602 } },
+ { video_format::x720p5994, 1280, 720, 1280, 720, field_mode::progressive, 60000, 1001, L"720p5994", { 801, 800, 801, 801, 801 } },
+ { video_format::x720p3000, 1280, 720, 1280, 720, field_mode::progressive, 30, 1, L"720p3000", { 1600 } },
+ { video_format::x720p6000, 1280, 720, 1280, 720, field_mode::progressive, 60, 1, L"720p6000", { 800 } },
+ { video_format::x1080p2398, 1920, 1080, 1920, 1080, field_mode::progressive, 24000, 1001, L"1080p2398", { 2002 } },
+ { video_format::x1080p2400, 1920, 1080, 1920, 1080, field_mode::progressive, 24, 1, L"1080p2400", { 2000 } },
+ { video_format::x1080i5000, 1920, 1080, 1920, 1080, field_mode::upper, 25, 1, L"1080i5000", { 1920 } },
+ { video_format::x1080i5994, 1920, 1080, 1920, 1080, field_mode::upper, 30000, 1001, L"1080i5994", { 1602, 1601, 1602, 1601, 1602 } },
+ { video_format::x1080i6000, 1920, 1080, 1920, 1080, field_mode::upper, 30, 1, L"1080i6000", { 1600 } },
+ { video_format::x1080p2500, 1920, 1080, 1920, 1080, field_mode::progressive, 25, 1, L"1080p2500", { 1920 } },
+ { video_format::x1080p2997, 1920, 1080, 1920, 1080, field_mode::progressive, 30000, 1001, L"1080p2997", { 1602, 1601, 1602, 1601, 1602 } },
+ { video_format::x1080p3000, 1920, 1080, 1920, 1080, field_mode::progressive, 30, 1, L"1080p3000", { 1600 } },
+ { video_format::x1080p5000, 1920, 1080, 1920, 1080, field_mode::progressive, 50, 1, L"1080p5000", { 960 } },
+ { video_format::x1080p5994, 1920, 1080, 1920, 1080, field_mode::progressive, 60000, 1001, L"1080p5994", { 801, 800, 801, 801, 801 } },
+ { video_format::x1080p6000, 1920, 1080, 1920, 1080, field_mode::progressive, 60, 1, L"1080p6000", { 800 } },
+ { video_format::x2k2398, 2048, 1556, 2048, 1556, field_mode::progressive, 24000, 1001, L"2k2398", { 2002 } },
+ { video_format::x2k2400, 2048, 1556, 2048, 1556, field_mode::progressive, 24, 1, L"2k2400", { 2000 } },
+ { video_format::x2k2500, 2048, 1556, 2048, 1556, field_mode::progressive, 25, 1, L"2k2500", { 1920 } },
+ { video_format::x4k2398, 3840, 2160, 3840, 2160, field_mode::progressive, 24000, 1001, L"4k2398", { 2002 } },
+ { video_format::x4k2400, 3840, 2160, 3840, 2160, field_mode::progressive, 24, 1, L"4k2400", { 2000 } },
+ { video_format::x4k2500, 3840, 2160, 3840, 2160, field_mode::progressive, 25, 1, L"4k2500", { 1920 } },
+ { video_format::x4k2997, 3840, 2160, 3840, 2160, field_mode::progressive, 30000, 1001, L"4k2398", { 1602, 1601, 1602, 1601, 1602 } },
+ { video_format::x4k3000, 3840, 2160, 3840, 2160, field_mode::progressive, 30, 1, L"4k3000", { 1600 } },
+ { video_format::invalid, 0, 0, 0, 0, field_mode::progressive, 1, 1, L"invalid", { 1 } }
+ };
-video_format_desc::video_format_desc(video_format format,
- int width,
- int height,
- int square_width,
- int square_height,
- core::field_mode field_mode,
- int time_scale,
- int duration,
- const std::wstring& name,
- const std::vector<int>& audio_cadence)
+video_format_desc::video_format_desc(
+ video_format format,
+ int width,
+ int height,
+ int square_width,
+ int square_height,
+ core::field_mode field_mode,
+ int time_scale,
+ int duration,
+ const std::wstring& name,
+ const std::vector<int>& audio_cadence)
: format(format)
, width(width)
, height(height)