diff options
Diffstat (limited to 'gst/audiobuffersplit/gstaudiobuffersplit.c')
-rw-r--r-- | gst/audiobuffersplit/gstaudiobuffersplit.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gst/audiobuffersplit/gstaudiobuffersplit.c b/gst/audiobuffersplit/gstaudiobuffersplit.c index bd66e9e1f..7d2738add 100644 --- a/gst/audiobuffersplit/gstaudiobuffersplit.c +++ b/gst/audiobuffersplit/gstaudiobuffersplit.c @@ -379,10 +379,15 @@ gst_audio_buffer_split_output (GstAudioBufferSplit * self, gboolean force, size = MIN (size, avail); buffer = gst_adapter_take_buffer (self->adapter, size); + buffer = gst_buffer_make_writable (buffer); /* After a reset we have to set the discont flag */ if (self->current_offset == 0) - GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT); + GST_BUFFER_FLAG_SET (buffer, + GST_BUFFER_FLAG_DISCONT | GST_BUFFER_FLAG_RESYNC); + else + GST_BUFFER_FLAG_UNSET (buffer, + GST_BUFFER_FLAG_DISCONT | GST_BUFFER_FLAG_RESYNC); resync_time_diff = gst_util_uint64_scale (self->current_offset, GST_SECOND, rate); |