static gboolean gst_smokeenc_resync (GstSmokeEnc * smokeenc) { int ret; GST_DEBUG ("resync: %dx%d@%d/%dfps", smokeenc->width, smokeenc->height, smokeenc->fps_num, smokeenc->fps_denom); if (smokeenc->info) smokecodec_info_free (smokeenc->info); ret = smokecodec_encode_new (&smokeenc->info, smokeenc->width, smokeenc->height, smokeenc->fps_num, smokeenc->fps_denom); if (ret != SMOKECODEC_OK) goto init_failed; smokecodec_set_quality (smokeenc->info, smokeenc->min_quality, smokeenc->max_quality); GST_DEBUG ("resync done"); return TRUE; /* ERRORS */ init_failed: { GST_WARNING_OBJECT (smokeenc, "smokecodec_encode_new() failed: %d", ret); return FALSE; } }
static void gst_smokedec_finalize (GObject * object) { GstSmokeDec *dec = GST_SMOKEDEC (object); smokecodec_info_free (dec->info); G_OBJECT_CLASS (parent_class)->finalize (object); }
static void gst_smokeenc_finalize (GObject * object) { GstSmokeEnc *enc = GST_SMOKEENC (object); if (enc->info) smokecodec_info_free (enc->info); G_OBJECT_CLASS (parent_class)->finalize (object); }