Remove duplicate tests
This commit is contained in:
@@ -1440,273 +1440,4 @@ BOOST_AUTO_TEST_CASE(with_resets_2x_5up_realtime_faster)
|
||||
with_resets(RubberBandStretcher::OptionProcessRealTime | RubberBandStretcher::OptionEngineFaster, 2.0, 1.5);
|
||||
}
|
||||
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(impulses_2x_0up_offline_reset_finer_initialparams)
|
||||
{
|
||||
int n = 10000;
|
||||
int rate = 44100;
|
||||
RubberBandStretcher stretcher
|
||||
(rate, 1, RubberBandStretcher::OptionEngineFiner,
|
||||
2.0, 1.0);
|
||||
|
||||
vector<float> in(n, 0.f), out1(n * 2, 0.f), out2(n * 2, 0.f);
|
||||
|
||||
in[100] = 1.f;
|
||||
in[101] = -1.f;
|
||||
|
||||
in[5000] = 1.f;
|
||||
in[5001] = -1.f;
|
||||
|
||||
in[9900] = 1.f;
|
||||
in[9901] = -1.f;
|
||||
|
||||
float *inp = in.data(), *outp1 = out1.data(), *outp2 = out2.data();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
size_t got = stretcher.retrieve(&outp1, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
stretcher.reset();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
got = stretcher.retrieve(&outp2, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
for (int i = 0; i < n * 2; ++i) {
|
||||
BOOST_TEST(outp1[i] == outp2[i]);
|
||||
if (outp1[i] != outp2[i]) {
|
||||
std::cerr << "Failure at index " << i << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
std::cout << "ms\tV" << std::endl;
|
||||
for (int i = 0; i < n*2; ++i) {
|
||||
std::cout << i << "\t" << out[i] << std::endl;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(impulses_2x_0up_offline_reset_finer_postparams)
|
||||
{
|
||||
int n = 10000;
|
||||
int rate = 44100;
|
||||
RubberBandStretcher stretcher
|
||||
(rate, 1, RubberBandStretcher::OptionEngineFiner,
|
||||
2.0, 1.0);
|
||||
|
||||
stretcher.setTimeRatio(2.0);
|
||||
stretcher.setPitchScale(1.0);
|
||||
|
||||
vector<float> in(n, 0.f), out1(n * 2, 0.f), out2(n * 2, 0.f);
|
||||
|
||||
in[100] = 1.f;
|
||||
in[101] = -1.f;
|
||||
|
||||
in[5000] = 1.f;
|
||||
in[5001] = -1.f;
|
||||
|
||||
in[9900] = 1.f;
|
||||
in[9901] = -1.f;
|
||||
|
||||
float *inp = in.data(), *outp1 = out1.data(), *outp2 = out2.data();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
size_t got = stretcher.retrieve(&outp1, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
stretcher.reset();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
got = stretcher.retrieve(&outp2, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
for (int i = 0; i < n * 2; ++i) {
|
||||
BOOST_TEST(outp1[i] == outp2[i]);
|
||||
if (outp1[i] != outp2[i]) {
|
||||
std::cerr << "Failure at index " << i << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
std::cout << "ms\tV" << std::endl;
|
||||
for (int i = 0; i < n*2; ++i) {
|
||||
std::cout << i << "\t" << out[i] << std::endl;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(impulses_2x_5up_offline_reset_finer)
|
||||
{
|
||||
int n = 10000;
|
||||
int rate = 44100;
|
||||
RubberBandStretcher stretcher
|
||||
(rate, 1, RubberBandStretcher::OptionEngineFiner);
|
||||
|
||||
stretcher.setTimeRatio(2.0);
|
||||
stretcher.setPitchScale(1.5);
|
||||
|
||||
vector<float> in(n, 0.f), out1(n * 2, 0.f), out2(n * 2, 0.f);
|
||||
|
||||
in[100] = 1.f;
|
||||
in[101] = -1.f;
|
||||
|
||||
in[5000] = 1.f;
|
||||
in[5001] = -1.f;
|
||||
|
||||
in[9900] = 1.f;
|
||||
in[9901] = -1.f;
|
||||
|
||||
float *inp = in.data(), *outp1 = out1.data(), *outp2 = out2.data();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
size_t got = stretcher.retrieve(&outp1, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
stretcher.reset();
|
||||
|
||||
stretcher.setMaxProcessSize(n);
|
||||
stretcher.setExpectedInputDuration(n);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.study(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == 0);
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
BOOST_TEST(stretcher.available() == n * 2);
|
||||
|
||||
BOOST_TEST(stretcher.getStartDelay() == 0); // offline mode
|
||||
|
||||
got = stretcher.retrieve(&outp2, n * 2);
|
||||
BOOST_TEST(got == n * 2);
|
||||
BOOST_TEST(stretcher.available() == -1);
|
||||
|
||||
for (int i = 0; i < n * 2; ++i) {
|
||||
BOOST_TEST(outp1[i] == outp2[i]);
|
||||
if (outp1[i] != outp2[i]) {
|
||||
std::cerr << "Failure at index " << i << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
std::cout << "ms\tV" << std::endl;
|
||||
for (int i = 0; i < n*2; ++i) {
|
||||
std::cout << i << "\t" << out[i] << std::endl;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(impulses_2x_5up_realtime_reset_finer)
|
||||
{
|
||||
int n = 10000;
|
||||
int rate = 44100;
|
||||
RubberBandStretcher stretcher
|
||||
(rate, 1, RubberBandStretcher::OptionEngineFiner);
|
||||
|
||||
stretcher.setTimeRatio(2.0);
|
||||
stretcher.setPitchScale(1.5);
|
||||
|
||||
vector<float> in(n, 0.f), out1(n * 2, 0.f), out2(n * 2, 0.f);
|
||||
|
||||
in[100] = 1.f;
|
||||
in[101] = -1.f;
|
||||
|
||||
in[5000] = 1.f;
|
||||
in[5001] = -1.f;
|
||||
|
||||
in[9900] = 1.f;
|
||||
in[9901] = -1.f;
|
||||
|
||||
float *inp = in.data(), *outp1 = out1.data(), *outp2 = out2.data();
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
size_t got1 = stretcher.retrieve(&outp1, n * 2);
|
||||
BOOST_TEST(got1 <= n * 2);
|
||||
|
||||
stretcher.reset();
|
||||
|
||||
stretcher.process(&inp, n, true);
|
||||
size_t got2 = stretcher.retrieve(&outp2, n * 2);
|
||||
BOOST_TEST(got2 == got1);
|
||||
|
||||
for (size_t i = 0; i < got1; ++i) {
|
||||
BOOST_TEST(outp1[i] == outp2[i]);
|
||||
if (outp1[i] != outp2[i]) {
|
||||
std::cerr << "Failure at index " << i << std::endl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
std::cout << "ms\tV" << std::endl;
|
||||
for (int i = 0; i < n*2; ++i) {
|
||||
std::cout << i << "\t" << out[i] << std::endl;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_SUITE_END()
|
||||
|
||||
Reference in New Issue
Block a user