*/
+/** @file test/upmixer_a_test.cc
+ * @brief Check the Upmixer A against some reference sound files.
+ * @ingroup selfcontained
+ */
+
#include <boost/test/unit_test.hpp>
#include <sndfile.h>
#include "lib/film.h"
#include "lib/upmixer_a.h"
#include "test.h"
-using boost::shared_ptr;
+using std::shared_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
+using namespace dcpomatic;
static SNDFILE* L;
static SNDFILE* R;
film->set_dcp_content_type (DCPContentType::from_isdcf_name ("TLR"));
film->set_name ("frobozz");
film->set_audio_processor (AudioProcessor::from_id ("stereo-5.1-upmix-a"));
- shared_ptr<FFmpegContent> content (new FFmpegContent (film, "test/data/white.wav"));
+ shared_ptr<FFmpegContent> content (new FFmpegContent ("test/data/white.wav"));
film->examine_and_add_content (content);
- wait_for_jobs ();
+ BOOST_REQUIRE (!wait_for_jobs());
SF_INFO info;
info.samplerate = 48000;
Ls = sf_open ("build/test/upmixer_a_test/Ls.wav", SFM_WRITE, &info);
Rs = sf_open ("build/test/upmixer_a_test/Rs.wav", SFM_WRITE, &info);
- shared_ptr<Player> player (new Player (film, film->playlist ()));
+ shared_ptr<Player> player (new Player(film));
player->Audio.connect (bind (&write, _1, _2));
while (!player->pass()) {}
sf_close (Ls);
sf_close (Rs);
- check_audio_file ("test/data/upmixer_a_test/L.wav", "build/test/upmixer_a_test/L.wav");
- check_audio_file ("test/data/upmixer_a_test/R.wav", "build/test/upmixer_a_test/R.wav");
- check_audio_file ("test/data/upmixer_a_test/C.wav", "build/test/upmixer_a_test/C.wav");
- check_audio_file ("test/data/upmixer_a_test/Lfe.wav", "build/test/upmixer_a_test/Lfe.wav");
- check_audio_file ("test/data/upmixer_a_test/Ls.wav", "build/test/upmixer_a_test/Ls.wav");
- check_audio_file ("test/data/upmixer_a_test/Rs.wav", "build/test/upmixer_a_test/Rs.wav");
+ check_wav_file ("test/data/upmixer_a_test/L.wav", "build/test/upmixer_a_test/L.wav");
+ check_wav_file ("test/data/upmixer_a_test/R.wav", "build/test/upmixer_a_test/R.wav");
+ check_wav_file ("test/data/upmixer_a_test/C.wav", "build/test/upmixer_a_test/C.wav");
+ check_wav_file ("test/data/upmixer_a_test/Lfe.wav", "build/test/upmixer_a_test/Lfe.wav");
+ check_wav_file ("test/data/upmixer_a_test/Ls.wav", "build/test/upmixer_a_test/Ls.wav");
+ check_wav_file ("test/data/upmixer_a_test/Rs.wav", "build/test/upmixer_a_test/Rs.wav");
}