diff --git a/ext/pulse/pulsesink.c b/ext/pulse/pulsesink.c index 8f8805f6e2..23b69be6f1 100644 --- a/ext/pulse/pulsesink.c +++ b/ext/pulse/pulsesink.c @@ -999,7 +999,8 @@ gst_pulseringbuffer_commit (GstRingBuffer * buf, guint64 * sample, else offset = 0; } - offset = *sample * bps; + /* offset is in bytes */ + offset *= bps; while (*toprocess > 0) { size_t avail; @@ -1088,7 +1089,7 @@ gst_pulseringbuffer_commit (GstRingBuffer * buf, guint64 * sample, avail = towrite / bps; } *sample += avail; - offset = *sample * bps; + offset += avail * bps; /* check if we need to uncork after writing the samples */ if (pbuf->corked) {