static void gst_ks_video_src_init (GstKsVideoSrc * self, GstKsVideoSrcClass * gclass) { GstKsVideoSrcPrivate *priv = GST_KS_VIDEO_SRC_GET_PRIVATE (self); GstBaseSrc *basesrc = GST_BASE_SRC (self); gst_base_src_set_live (basesrc, TRUE); gst_base_src_set_format (basesrc, GST_FORMAT_TIME); gst_ks_video_src_reset (self); priv->device_path = DEFAULT_DEVICE_PATH; priv->device_name = DEFAULT_DEVICE_NAME; priv->device_index = DEFAULT_DEVICE_INDEX; priv->do_stats = DEFAULT_DO_STATS; priv->enable_quirks = DEFAULT_ENABLE_QUIRKS; }
static void gst_ks_video_src_close_device (GstKsVideoSrc * self) { GstKsVideoSrcPrivate *priv = GST_KS_VIDEO_SRC_GET_PRIVATE (self); g_assert (priv->device != NULL); gst_ks_video_device_close (priv->device); g_object_unref (priv->device); priv->device = NULL; if (priv->ksclock != NULL) { gst_ks_clock_close (priv->ksclock); g_object_unref (priv->ksclock); priv->ksclock = NULL; } gst_ks_video_src_reset (self); }