summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-06-22 01:10:47 +0100
committerCarl Hetherington <cth@carlh.net>2016-06-22 01:10:47 +0100
commit5e9e59e044fe3b51352d5dccad7f11882c6a571c (patch)
treedca9b4fee01fd836a36b0cba6d09f66b13982704 /src/lib
parent7fa5d6964891ea199e449d30e2591bf61645247b (diff)
A couple of small optimisations.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/audio_buffers.cc3
-rw-r--r--src/lib/dcp_decoder.cc3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/lib/audio_buffers.cc b/src/lib/audio_buffers.cc
index 2ab8e187e..546abbb54 100644
--- a/src/lib/audio_buffers.cc
+++ b/src/lib/audio_buffers.cc
@@ -279,9 +279,10 @@ AudioBuffers::accumulate_frames (AudioBuffers const * from, int32_t read_offset,
DCPOMATIC_ASSERT (read_offset >= 0);
DCPOMATIC_ASSERT (write_offset >= 0);
+ float** from_data = from->data ();
for (int i = 0; i < _channels; ++i) {
for (int j = 0; j < frames; ++j) {
- _data[i][j + write_offset] += from->data()[i][j + read_offset];
+ _data[i][j + write_offset] += from_data[i][j + read_offset];
}
}
}
diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc
index e7e88d319..c17b21a7f 100644
--- a/src/lib/dcp_decoder.cc
+++ b/src/lib/dcp_decoder.cc
@@ -116,9 +116,10 @@ DCPDecoder::pass (PassReason reason, bool)
int const channels = _dcp_content->audio->stream()->channels ();
int const frames = sf->size() / (3 * channels);
shared_ptr<AudioBuffers> data (new AudioBuffers (channels, frames));
+ float** data_data = data->data();
for (int i = 0; i < frames; ++i) {
for (int j = 0; j < channels; ++j) {
- data->data()[j][i] = static_cast<int> ((from[0] << 8) | (from[1] << 16) | (from[2] << 24)) / static_cast<float> (INT_MAX - 256);
+ data_data[j][i] = static_cast<int> ((from[0] << 8) | (from[1] << 16) | (from[2] << 24)) / static_cast<float> (INT_MAX - 256);
from += 3;
}
}