/** * gst_vaapi_surface_proxy_unref: * @proxy: a #GstVaapiSurfaceProxy * * Atomically decreases the reference count of the @proxy by one. If * the reference count reaches zero, the object will be free'd. */ void gst_vaapi_surface_proxy_unref (GstVaapiSurfaceProxy * proxy) { g_return_if_fail (proxy != NULL); gst_vaapi_mini_object_unref (GST_VAAPI_MINI_OBJECT (proxy)); }
/** * gst_vaapi_coded_buffer_proxy_unref: * @proxy: a #GstVaapiCodedBufferProxy * * Atomically decreases the reference count of the @proxy by one. If * the reference count reaches zero, the object will be free'd. */ void gst_vaapi_coded_buffer_proxy_unref (GstVaapiCodedBufferProxy * proxy) { g_return_if_fail (proxy != NULL); gst_vaapi_mini_object_unref (GST_VAAPI_MINI_OBJECT (proxy)); }
static GstVaapiDecoderStatus decode_slice (GstVaapiDecoderVp8 * decoder, GstVaapiPicture * picture, const guchar * buf, guint buf_size) { GstVaapiSlice *slice; slice = GST_VAAPI_SLICE_NEW (VP8, decoder, buf, buf_size); if (!slice) { GST_ERROR ("failed to allocate slice"); return GST_VAAPI_DECODER_STATUS_ERROR_ALLOCATION_FAILED; } if (!fill_slice (decoder, slice)) { gst_vaapi_mini_object_unref (GST_VAAPI_MINI_OBJECT (slice)); return GST_VAAPI_DECODER_STATUS_ERROR_UNKNOWN; } gst_vaapi_picture_add_slice (GST_VAAPI_PICTURE_CAST (picture), slice); return GST_VAAPI_DECODER_STATUS_SUCCESS; }
/** * gst_vaapi_object_unref: * @object: a #GstVaapiObject * * Atomically decreases the reference count of the @object by one. If * the reference count reaches zero, the object will be free'd. */ void gst_vaapi_object_unref (gpointer object) { gst_vaapi_mini_object_unref (object); }