X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fbutler_test.cc;h=3d524a3b258382d98f82786224fae38a69793eb2;hb=8f955150ff2b642109552dd234089f9a038bb3d6;hp=7575728fd3fce3bc6364df24145ff3013960cce2;hpb=990f879d9af6300068af44c431b1a8e158e7f7a0;p=dcpomatic.git diff --git a/test/butler_test.cc b/test/butler_test.cc index 7575728fd..3d524a3b2 100644 --- a/test/butler_test.cc +++ b/test/butler_test.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2017 Carl Hetherington + Copyright (C) 2017-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,6 +18,7 @@ */ + #include "lib/butler.h" #include "lib/film.h" #include "lib/dcp_content_type.h" @@ -28,39 +29,45 @@ #include "test.h" #include -using boost::shared_ptr; + +using std::make_shared; +using std::shared_ptr; +#if BOOST_VERSION >= 106100 +using namespace boost::placeholders; +#endif using namespace dcpomatic; + BOOST_AUTO_TEST_CASE (butler_test1) { - shared_ptr film = new_test_film ("butler_test1"); - film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR")); + auto film = new_test_film ("butler_test1"); + film->set_dcp_content_type (DCPContentType::from_isdcf_name("FTR")); film->set_name ("butler_test1"); film->set_container (Ratio::from_id ("185")); - shared_ptr video = content_factory("test/data/flat_red.png").front (); + auto video = content_factory("test/data/flat_red.png").front(); film->examine_and_add_content (video); - shared_ptr audio = content_factory("test/data/staircase.wav").front (); + auto audio = content_factory("test/data/staircase.wav").front(); film->examine_and_add_content (audio); BOOST_REQUIRE (!wait_for_jobs ()); film->set_audio_channels (6); /* This is the map of the player output (5.1) to the butler output (also 5.1) */ - AudioMapping map = AudioMapping (6, 6); + auto map = AudioMapping (6, 6); for (int i = 0; i < 6; ++i) { map.set (i, i, 1); } - Butler butler (shared_ptr(new Player(film)), map, 6, bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, false); + Butler butler (film, make_shared(film, Image::Alignment::COMPACT), map, 6, bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), VideoRange::FULL, Image::Alignment::COMPACT, false, false); - BOOST_CHECK (butler.get_video(true, 0).second == DCPTime()); - BOOST_CHECK (butler.get_video(true, 0).second == DCPTime::from_frames(1, 24)); - BOOST_CHECK (butler.get_video(true, 0).second == DCPTime::from_frames(2, 24)); + BOOST_CHECK (butler.get_video(Butler::Behaviour::BLOCKING, 0).second == DCPTime()); + BOOST_CHECK (butler.get_video(Butler::Behaviour::BLOCKING, 0).second == DCPTime::from_frames(1, 24)); + BOOST_CHECK (butler.get_video(Butler::Behaviour::BLOCKING, 0).second == DCPTime::from_frames(2, 24)); /* XXX: check the frame contents */ float buffer[256 * 6]; - BOOST_REQUIRE (butler.get_audio (buffer, 256) == DCPTime()); + BOOST_REQUIRE (butler.get_audio(Butler::Behaviour::BLOCKING, buffer, 256) == DCPTime()); for (int i = 0; i < 256; ++i) { BOOST_REQUIRE_EQUAL (buffer[i * 6 + 0], 0); BOOST_REQUIRE_EQUAL (buffer[i * 6 + 1], 0);