projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow separate X and Y scale for subtitles.
[dcpomatic.git]
/
src
/
lib
/
audio_buffers.cc
diff --git
a/src/lib/audio_buffers.cc
b/src/lib/audio_buffers.cc
index e80142b8e518ad2efe66f5f1c1ee4b90f6dcafa6..a1c9b81ac099259bbe86e2f9f8dcea1340bbb9ae 100644
(file)
--- a/
src/lib/audio_buffers.cc
+++ b/
src/lib/audio_buffers.cc
@@
-210,9
+210,11
@@
AudioBuffers::move (int from, int to, int frames)
}
}
}
}
-/** Add data from from `from', `from_channel' to our channel `to_channel' */
+/** Add data from from `from', `from_channel' to our channel `to_channel'.
+ * @param gain Linear gain to apply to the data before it is added.
+ */
void
void
-AudioBuffers::accumulate_channel (AudioBuffers const * from, int from_channel, int to_channel)
+AudioBuffers::accumulate_channel (AudioBuffers const * from, int from_channel, int to_channel
, float gain
)
{
int const N = frames ();
assert (from->frames() == N);
{
int const N = frames ();
assert (from->frames() == N);
@@
-222,7
+224,7
@@
AudioBuffers::accumulate_channel (AudioBuffers const * from, int from_channel, i
float* d = _data[to_channel];
for (int i = 0; i < N; ++i) {
float* d = _data[to_channel];
for (int i = 0; i < N; ++i) {
- *d++ +=
*s++
;
+ *d++ +=
(*s++) * gain
;
}
}
}
}