static gboolean gst_inter_sub_src_stop (GstBaseSrc * src) { GstInterSubSrc *intersubsrc = GST_INTER_SUB_SRC (src); GST_DEBUG_OBJECT (intersubsrc, "stop"); gst_inter_surface_unref (intersubsrc->surface); intersubsrc->surface = NULL; return TRUE; }
static gboolean gst_inter_video_src_stop (GstBaseSrc * src) { GstInterVideoSrc *intervideosrc = GST_INTER_VIDEO_SRC (src); GST_DEBUG_OBJECT (intervideosrc, "stop"); gst_inter_surface_unref (intervideosrc->surface); intervideosrc->surface = NULL; return TRUE; }
static gboolean gst_inter_audio_src_stop (GstBaseSrc * src) { GstInterAudioSrc *interaudiosrc = GST_INTER_AUDIO_SRC (src); GST_DEBUG_OBJECT (interaudiosrc, "stop"); gst_inter_surface_unref (interaudiosrc->surface); interaudiosrc->surface = NULL; return TRUE; }
static gboolean gst_inter_video_sink_stop (GstBaseSink * sink) { GstInterVideoSink *intervideosink = GST_INTER_VIDEO_SINK (sink); g_mutex_lock (intervideosink->surface->mutex); if (intervideosink->surface->video_buffer) { gst_buffer_unref (intervideosink->surface->video_buffer); } intervideosink->surface->video_buffer = NULL; g_mutex_unlock (intervideosink->surface->mutex); gst_inter_surface_unref (intervideosink->surface); intervideosink->surface = NULL; return TRUE; }
static gboolean gst_inter_sub_sink_stop (GstBaseSink * sink) { GstInterSubSink *intersubsink = GST_INTER_SUB_SINK (sink); g_mutex_lock (&intersubsink->surface->mutex); if (intersubsink->surface->sub_buffer) { gst_buffer_unref (intersubsink->surface->sub_buffer); } intersubsink->surface->sub_buffer = NULL; g_mutex_unlock (&intersubsink->surface->mutex); gst_inter_surface_unref (intersubsink->surface); intersubsink->surface = NULL; return TRUE; }
static gboolean gst_inter_audio_sink_stop (GstBaseSink * sink) { GstInterAudioSink *interaudiosink = GST_INTER_AUDIO_SINK (sink); GST_DEBUG_OBJECT (interaudiosink, "stop"); g_mutex_lock (&interaudiosink->surface->mutex); gst_adapter_clear (interaudiosink->surface->audio_adapter); memset (&interaudiosink->surface->audio_info, 0, sizeof (GstAudioInfo)); g_mutex_unlock (&interaudiosink->surface->mutex); gst_inter_surface_unref (interaudiosink->surface); interaudiosink->surface = NULL; gst_adapter_clear (interaudiosink->input_adapter); return TRUE; }