summaryrefslogtreecommitdiffstats
path: root/gst/level
diff options
context:
space:
mode:
authorStefan Kost <ensonic@users.sourceforge.net>2007-02-22 14:35:28 +0000
committerStefan Kost <ensonic@users.sourceforge.net>2007-02-22 14:35:28 +0000
commit5c1b116dc898990c72acdaf54ce244cfc73fa7af (patch)
treeb5c09c017ca7781c6652878b15c44c4fab946f2a /gst/level
parent6e44a9c61858764e50a6593f15994fdd5a73c8af (diff)
Fix level for multi-channel case.
Original commit message from CVS: * gst/level/gstlevel.c: (gst_level_set_caps), (gst_level_transform_ip): * sys/v4l2/README: * tests/check/elements/level.c: (GST_START_TEST): Fix level for multi-channel case.
Diffstat (limited to 'gst/level')
-rw-r--r--gst/level/gstlevel.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gst/level/gstlevel.c b/gst/level/gstlevel.c
index bc1c42e1..6ff849fc 100644
--- a/gst/level/gstlevel.c
+++ b/gst/level/gstlevel.c
@@ -514,12 +514,13 @@ gst_level_transform_ip (GstBaseTransform * trans, GstBuffer * in)
for (i = 0; i < filter->channels; ++i) {
CS = 0.0;
- filter->process (in_data + i, num_int_samples, filter->channels, &CS,
+ filter->process (in_data, num_int_samples, filter->channels, &CS,
&filter->peak[i]);
GST_LOG_OBJECT (filter,
"channel %d, cumulative sum %f, peak %f, over %d samples/%d channels",
i, CS, filter->peak[i], num_int_samples, filter->channels);
filter->CS[i] += CS;
+ in_data += (filter->width / 8);
}
filter->num_frames += num_frames;