- shared_ptr<Film> film = new_test_film2 ("threed_test5");
- shared_ptr<FFmpegContent> L (new FFmpegContent(private_data / "boon_telly.mkv"));
+ auto film = new_test_film2 ("threed_test5");
+ auto L = make_shared<FFmpegContent>(TestPaths::private_data() / "boon_telly.mkv");
+ film->examine_and_add_content (L);
+ auto R = make_shared<FFmpegContent>(TestPaths::private_data() / "boon_telly.mkv");
+ film->examine_and_add_content (R);
+ BOOST_REQUIRE (!wait_for_jobs());
+
+ L->video->set_frame_type (VideoFrameType::THREE_D_LEFT);
+ R->video->set_frame_type (VideoFrameType::THREE_D_RIGHT);
+ /* There doesn't seem much point in encoding the whole input, especially as we're only
+ * checking for errors during the encode and not the result.
+ */
+ L->set_trim_end (dcpomatic::ContentTime::from_seconds(3 * 60 + 20));
+ R->set_trim_end (dcpomatic::ContentTime::from_seconds(3 * 60 + 20));
+
+ film->set_three_d (true);
+ make_and_verify_dcp (film, {dcp::VerificationNote::Code::INVALID_PICTURE_FRAME_RATE_FOR_2K});
+}
+
+
+BOOST_AUTO_TEST_CASE (threed_test6)
+{
+ auto film = new_test_film2 ("threed_test6");
+ auto L = make_shared<FFmpegContent>("test/data/3dL.mp4");