diff --git a/omx/gstomxh265enc.c b/omx/gstomxh265enc.c index 2aebd84bba..a57112a635 100644 --- a/omx/gstomxh265enc.c +++ b/omx/gstomxh265enc.c @@ -447,10 +447,6 @@ gst_omx_h265_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, OMX_VIDEO_PARAM_PROFILELEVELTYPE param; const gchar *profile, *level, *tier; - caps = gst_caps_new_simple ("video/x-h265", - "stream-format", G_TYPE_STRING, "byte-stream", - "alignment", G_TYPE_STRING, "au", NULL); - GST_OMX_INIT_STRUCT (¶m); param.nPortIndex = GST_OMX_VIDEO_ENC (self)->enc_out_port->index; @@ -460,6 +456,10 @@ gst_omx_h265_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, if (err != OMX_ErrorNone && err != OMX_ErrorUnsupportedIndex) return NULL; + caps = gst_caps_new_simple ("video/x-h265", + "stream-format", G_TYPE_STRING, "byte-stream", + "alignment", G_TYPE_STRING, "au", NULL); + if (err == OMX_ErrorNone) { switch (param.eProfile) { case OMX_VIDEO_HEVCProfileMain: @@ -481,6 +481,7 @@ gst_omx_h265_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, #endif default: g_assert_not_reached (); + gst_caps_unref (caps); return NULL; } @@ -571,6 +572,7 @@ gst_omx_h265_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, break; default: g_assert_not_reached (); + gst_caps_unref (caps); return NULL; }