scaletempo: Ensure to reinit buffers whenever they were not allocated yet

That is, whenever we go through start/stop we have to ensure that on the
next opportunity the buffers are reallocated again. Otherwise the
buffers might be NULL because the element was reused with the same
configuration as before (i.e. set_caps() wouldn't have reinited the
buffers).

https://bugzilla.gnome.org/show_bug.cgi?id=775898
This commit is contained in:
Sebastian Dröge 2016-12-11 13:27:27 +02:00
parent 866fefbf5a
commit fe2ae2c0f7

View file

@ -699,6 +699,7 @@ gst_scaletempo_start (GstBaseTransform * trans)
gst_segment_init (&scaletempo->in_segment, GST_FORMAT_UNDEFINED);
gst_segment_init (&scaletempo->out_segment, GST_FORMAT_UNDEFINED);
scaletempo->reinit_buffers = TRUE;
return TRUE;
}
@ -718,6 +719,7 @@ gst_scaletempo_stop (GstBaseTransform * trans)
scaletempo->buf_pre_corr = NULL;
g_free (scaletempo->table_window);
scaletempo->table_window = NULL;
scaletempo->reinit_buffers = TRUE;
return TRUE;
}