X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fffmpeg_decoder_error_test.cc;h=2774d0ef4c22276e5342e6e1c1ddcfaab46bb1a3;hb=cc279961a2a9ffea67ed21378fef44c2e1bcb202;hp=b3e9e42930cbd6f52e147a3b26e728324c94dbe8;hpb=ab3be5fa1893bf1756627e1646b065c41e69336a;p=dcpomatic.git diff --git a/test/ffmpeg_decoder_error_test.cc b/test/ffmpeg_decoder_error_test.cc index b3e9e4293..2774d0ef4 100644 --- a/test/ffmpeg_decoder_error_test.cc +++ b/test/ffmpeg_decoder_error_test.cc @@ -22,13 +22,14 @@ #include "lib/content.h" #include "lib/content_factory.h" #include "lib/dcpomatic_time.h" +#include "lib/player.h" #include "test.h" #include -/** @defgroup regression Tests to make sure that old bugs do not reappear */ +/** @defgroup regression Regression tests */ -/** @file test/ffmpeg_decoder_erro_test.cc +/** @file test/ffmpeg_decoder_error_test.cc * @brief Check some bugs in the FFmpegDecoder * @ingroup regression */ @@ -36,13 +37,23 @@ BOOST_AUTO_TEST_CASE (check_exception_during_flush) { - auto content = content_factory(TestPaths::private_data() / "3d_thx_broadway_2010_lossless.m2ts").front(); - auto film = new_test_film2 ("check_exception_during_flush", { content }); + auto content = content_factory(TestPaths::private_data() / "3d_thx_broadway_2010_lossless.m2ts"); + auto film = new_test_film2 ("check_exception_during_flush", content); - content->set_trim_start (dcpomatic::ContentTime(2310308)); - content->set_trim_end (dcpomatic::ContentTime(116020)); + content[0]->set_trim_start(film, dcpomatic::ContentTime(2310308)); + content[0]->set_trim_end(dcpomatic::ContentTime(116020)); make_and_verify_dcp (film); } + +BOOST_AUTO_TEST_CASE (check_exception_with_multiple_video_frames_per_packet) +{ + auto content = content_factory(TestPaths::private_data() / "chk.mkv")[0]; + auto film = new_test_film2 ("check_exception_with_multiple_video_frames_per_packet", { content }); + auto player = std::make_shared(film, film->playlist()); + + while (!player->pass()) {} +} +