From: Carl Hetherington Date: Tue, 9 Sep 2014 23:50:49 +0000 (+0100) Subject: Add simple test of audio analysis. X-Git-Tag: v2.0.48~609 X-Git-Url: https://git.carlh.net/gitweb/?a=commitdiff_plain;ds=sidebyside;h=692d92f572eacf8110ebde5e30825df1546305f2;p=dcpomatic.git Add simple test of audio analysis. --- diff --git a/test/audio_analysis_test.cc b/test/audio_analysis_test.cc index 13a8dac84..279944919 100644 --- a/test/audio_analysis_test.cc +++ b/test/audio_analysis_test.cc @@ -18,11 +18,18 @@ */ /** @file test/audio_analysis_test.cc - * @brief Check serialisation of audio analyses. + * @brief Check audio analysis code. */ #include #include "lib/audio_analysis.h" +#include "lib/film.h" +#include "lib/sndfile_content.h" +#include "lib/dcp_content_type.h" +#include "lib/ratio.h" +#include "test.h" + +using boost::shared_ptr; static float random_float () @@ -30,7 +37,7 @@ random_float () return (float (rand ()) / RAND_MAX) * 2 - 1; } -BOOST_AUTO_TEST_CASE (audio_analysis_test) +BOOST_AUTO_TEST_CASE (audio_analysis_serialisation_test) { int const channels = 3; int const points = 4096; @@ -47,11 +54,11 @@ BOOST_AUTO_TEST_CASE (audio_analysis_test) } } - a.write ("build/test/audio_analysis_test"); + a.write ("build/test/audio_analysis_serialisation_test"); srand (1); - AudioAnalysis b ("build/test/audio_analysis_test"); + AudioAnalysis b ("build/test/audio_analysis_serialisation_test"); for (int i = 0; i < channels; ++i) { BOOST_CHECK_EQUAL (b.points(i), points); for (int j = 0; j < points; ++j) { @@ -61,3 +68,25 @@ BOOST_AUTO_TEST_CASE (audio_analysis_test) } } } + +void +finished () +{ + +} + +BOOST_AUTO_TEST_CASE (audio_analysis_test) +{ + shared_ptr film = new_test_film ("audio_analysis_test"); + film->set_dcp_content_type (DCPContentType::from_isdcf_name ("FTR")); + film->set_container (Ratio::from_id ("185")); + film->set_name ("audio_analysis_test"); + boost::filesystem::path p = private_data / "betty_L.wav"; + + shared_ptr c (new SndfileContent (film, p)); + film->examine_and_add_content (c); + wait_for_jobs (); + + c->analyse_audio (boost::bind (&finished)); + wait_for_jobs (); +}