summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-05-22 20:52:01 +0200
committerRobin Gareus <robin@gareus.org>2018-07-09 17:30:38 +0200
commitcf11764763c302242f4d803cae2c326a66c8f5d8 (patch)
tree1e60e53b0bd59ff9042eb093fb67470291b2c51f /libs
parentcdec333bfe870fdbbbcaaaabe4b4aa98ccc9f0e8 (diff)
Remove unused disk-reader vari-speed
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/ardour/disk_io.h8
-rw-r--r--libs/ardour/disk_io.cc2
-rw-r--r--libs/ardour/disk_reader.cc38
3 files changed, 14 insertions, 34 deletions
diff --git a/libs/ardour/ardour/disk_io.h b/libs/ardour/ardour/disk_io.h
index 3fae063c1e..8cba4e24f6 100644
--- a/libs/ardour/ardour/disk_io.h
+++ b/libs/ardour/ardour/disk_io.h
@@ -45,7 +45,7 @@ template<typename T> class MidiRingBuffer;
class LIBARDOUR_API DiskIOProcessor : public Processor
{
- public:
+public:
enum Flag {
Recordable = 0x1,
Hidden = 0x2,
@@ -108,11 +108,11 @@ class LIBARDOUR_API DiskIOProcessor : public Processor
virtual void adjust_buffering() = 0;
- protected:
+protected:
friend class Auditioner;
virtual int seek (samplepos_t which_sample, bool complete_refill = false) = 0;
- protected:
+protected:
Flag _flags;
uint32_t i_am_the_modifier;
double _actual_speed;
@@ -174,8 +174,6 @@ class LIBARDOUR_API DiskIOProcessor : public Processor
int add_channel_to (boost::shared_ptr<ChannelList>, uint32_t how_many);
int remove_channel_from (boost::shared_ptr<ChannelList>, uint32_t how_many);
- CubicInterpolation interpolation;
-
boost::shared_ptr<Playlist> _playlists[DataType::num_types];
PBD::ScopedConnectionList playlist_connections;
diff --git a/libs/ardour/disk_io.cc b/libs/ardour/disk_io.cc
index c43e42c315..0f5cc657a4 100644
--- a/libs/ardour/disk_io.cc
+++ b/libs/ardour/disk_io.cc
@@ -223,7 +223,6 @@ DiskIOProcessor::add_channel_to (boost::shared_ptr<ChannelList> c, uint32_t how_
{
while (how_many--) {
c->push_back (new ChannelInfo (_session.butler()->audio_diskstream_playback_buffer_size()));
- interpolation.add_channel ();
DEBUG_TRACE (DEBUG::DiskIO, string_compose ("%1: new channel, write space = %2 read = %3\n",
name(),
c->back()->buf->write_space(),
@@ -248,7 +247,6 @@ DiskIOProcessor::remove_channel_from (boost::shared_ptr<ChannelList> c, uint32_t
while (how_many-- && !c->empty()) {
delete c->back();
c->pop_back();
- interpolation.remove_channel ();
}
return 0;
diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc
index a162c42236..0abcbac3d7 100644
--- a/libs/ardour/disk_reader.cc
+++ b/libs/ardour/disk_reader.cc
@@ -268,17 +268,16 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp
goto midi;
}
- if (speed != 1.0f && speed != -1.0f) {
- interpolation.set_speed (speed);
- disk_samples_to_consume = interpolation.distance (nframes);
- if (speed < 0.0) {
- disk_samples_to_consume = -disk_samples_to_consume;
- }
- } else {
+ assert (speed == -1 || speed == 0 || speed == 1);
+
+ if (speed < 0) {
+ disk_samples_to_consume = -nframes;
+ } else if (speed > 0) {
disk_samples_to_consume = nframes;
+ } else {
+ disk_samples_to_consume = 0;
}
-
if (!result_required || ((ms & MonitoringDisk) == 0) || still_locating || _no_disk_output) {
/* no need for actual disk data, just advance read pointer and return */
@@ -350,11 +349,7 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp
if (disk_samples_to_consume <= (samplecnt_t) chaninfo->rw_vector.len[0]) {
- if (fabsf (speed) != 1.0f) {
- samplecnt_t ocnt = nframes;
- samplecnt_t icnt = chaninfo->rw_vector.len[0];
- (void) interpolation.interpolate (n, icnt, chaninfo->rw_vector.buf[0], ocnt, disk_signal);
- } else if (speed != 0.0) {
+ if (speed != 0.0) {
memcpy (disk_signal, chaninfo->rw_vector.buf[0], sizeof (Sample) * disk_samples_to_consume);
}
@@ -364,22 +359,11 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp
if (disk_samples_to_consume <= total) {
- if (fabsf (speed) != 1.0f) {
- samplecnt_t ocnt = nframes;
- interpolation.interpolate (n, chaninfo->rw_vector.len[0], chaninfo->rw_vector.buf[0], ocnt, disk_signal);
-
- if (ocnt < nframes) {
- disk_signal += ocnt;
- ocnt = nframes - ocnt;
- interpolation.interpolate (n, chaninfo->rw_vector.len[1], chaninfo->rw_vector.buf[1], ocnt, disk_signal);
- }
-
- } else if (speed != 0.0) {
-
- memcpy (disk_signal,
+ if (speed != 0.0) {
+ memcpy (disk_signal,
chaninfo->rw_vector.buf[0],
chaninfo->rw_vector.len[0] * sizeof (Sample));
- memcpy (disk_signal + chaninfo->rw_vector.len[0],
+ memcpy (disk_signal + chaninfo->rw_vector.len[0],
chaninfo->rw_vector.buf[1],
(disk_samples_to_consume - chaninfo->rw_vector.len[0]) * sizeof (Sample));
}