diff options
Diffstat (limited to 'libs/ardour/test/test_needing_playlist_and_regions.cc')
-rw-r--r-- | libs/ardour/test/test_needing_playlist_and_regions.cc | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/libs/ardour/test/test_needing_playlist_and_regions.cc b/libs/ardour/test/test_needing_playlist_and_regions.cc index fea08cc4d9..4e0e42c67b 100644 --- a/libs/ardour/test/test_needing_playlist_and_regions.cc +++ b/libs/ardour/test/test_needing_playlist_and_regions.cc @@ -3,7 +3,9 @@ #include "ardour/source_factory.h" #include "ardour/region.h" #include "ardour/region_factory.h" +#include "ardour/sndfilesource.h" #include "test_needing_playlist_and_regions.h" +#include "test_globals.h" using namespace std; using namespace PBD; @@ -14,9 +16,25 @@ TestNeedingPlaylistAndRegions::setUp () { TestNeedingSession::setUp (); + /* This is important, otherwise createWritable will mark the source immutable (hence unwritable) */ + unlink ("libs/ardour/test/test.wav"); string const test_wav_path = "libs/ardour/test/test.wav"; _playlist = PlaylistFactory::create (DataType::AUDIO, *_session, "test"); - _source = SourceFactory::createWritable (DataType::AUDIO, *_session, test_wav_path, "", false, 44100); + _source = SourceFactory::createWritable (DataType::AUDIO, *_session, test_wav_path, "", false, Fs); + + /* Write a staircase to the source */ + + boost::shared_ptr<SndFileSource> s = boost::dynamic_pointer_cast<SndFileSource> (_source); + assert (s); + + int const signal_length = 4096; + + Sample staircase[signal_length]; + for (int i = 0; i < signal_length; ++i) { + staircase[i] = i; + } + + s->write (staircase, signal_length); PropertyList plist; plist.add (Properties::start, 0); |