mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 17:20:36 +00:00
camerabin2: Stop the audio source between captures
Move the audio source setting of state to NULL to _stop_capture () to avoid the audio source running between captures.
This commit is contained in:
parent
fc2434fd97
commit
f4e744ff49
1 changed files with 8 additions and 5 deletions
|
@ -380,11 +380,6 @@ gst_camera_bin_start_capture (GstCameraBin2 * camerabin)
|
|||
if (camerabin->audio_src) {
|
||||
GstClock *clock = gst_pipeline_get_clock (GST_PIPELINE_CAST (camerabin));
|
||||
|
||||
/* FIXME We need to set audiosrc to null to make it resync the ringbuffer
|
||||
* while bug https://bugzilla.gnome.org/show_bug.cgi?id=648359 isn't
|
||||
* fixed */
|
||||
gst_element_set_state (camerabin->audio_src, GST_STATE_NULL);
|
||||
|
||||
/* need to reset eos status (pads could be flushing) */
|
||||
gst_element_set_state (camerabin->audio_capsfilter, GST_STATE_READY);
|
||||
gst_element_set_state (camerabin->audio_volume, GST_STATE_READY);
|
||||
|
@ -452,6 +447,14 @@ gst_camera_bin_stop_capture (GstCameraBin2 * camerabin)
|
|||
if (camerabin->mode == MODE_VIDEO && camerabin->audio_src) {
|
||||
camerabin->audio_drop_eos = FALSE;
|
||||
gst_element_send_event (camerabin->audio_src, gst_event_new_eos ());
|
||||
|
||||
/* FIXME We need to set audiosrc to null to make it resync the ringbuffer
|
||||
* while bug https://bugzilla.gnome.org/show_bug.cgi?id=648359 isn't
|
||||
* fixed.
|
||||
*
|
||||
* Also, we set to NULL here to stop capturing audio through to the next
|
||||
* video mode start capture. */
|
||||
gst_element_set_state (camerabin->audio_src, GST_STATE_NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue