mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-29 20:35:40 +00:00
fix for caps api changes
This commit is contained in:
parent
857a9564f1
commit
77299ba6ae
12 changed files with 41 additions and 34 deletions
|
@ -430,27 +430,29 @@ gst_ass_render_getcaps (GstPad * pad, GstCaps * filter)
|
|||
GstAssRender *render = GST_ASS_RENDER (gst_pad_get_parent (pad));
|
||||
GstPad *otherpad;
|
||||
GstCaps *caps;
|
||||
GstCaps *templ;
|
||||
|
||||
if (pad == render->srcpad)
|
||||
otherpad = render->video_sinkpad;
|
||||
else
|
||||
otherpad = render->srcpad;
|
||||
|
||||
templ = gst_pad_get_pad_template_caps (otherpad);
|
||||
|
||||
/* we can do what the peer can */
|
||||
caps = gst_pad_peer_query_caps (otherpad, filter);
|
||||
if (caps) {
|
||||
GstCaps *temp;
|
||||
const GstCaps *templ;
|
||||
|
||||
/* filtered against our padtemplate */
|
||||
templ = gst_pad_get_pad_template_caps (otherpad);
|
||||
temp = gst_caps_intersect (caps, templ);
|
||||
gst_caps_unref (caps);
|
||||
gst_caps_unref (templ);
|
||||
/* this is what we can do */
|
||||
caps = temp;
|
||||
} else {
|
||||
/* no peer, our padtemplate is enough then */
|
||||
caps = gst_caps_copy (gst_pad_get_pad_template_caps (pad));
|
||||
caps = templ;
|
||||
}
|
||||
|
||||
gst_object_unref (render);
|
||||
|
|
|
@ -474,7 +474,7 @@ gst_modplug_load_song (GstModPlug * modplug)
|
|||
|
||||
GST_DEBUG_OBJECT (modplug, "normalized caps %"GST_PTR_FORMAT, newcaps);
|
||||
|
||||
gst_caps_fixate (newcaps);
|
||||
newcaps = gst_caps_fixate (newcaps);
|
||||
|
||||
GST_DEBUG_OBJECT (modplug, "fixated caps %"GST_PTR_FORMAT, newcaps);
|
||||
|
||||
|
|
|
@ -384,7 +384,7 @@ static GstCaps *
|
|||
gst_base_video_encoder_sink_getcaps (GstPad * pad, GstCaps * filter)
|
||||
{
|
||||
GstBaseVideoEncoder *base_video_encoder;
|
||||
const GstCaps *templ_caps;
|
||||
GstCaps *templ_caps;
|
||||
GstCaps *allowed;
|
||||
GstCaps *fcaps, *filter_caps;
|
||||
gint i, j;
|
||||
|
@ -403,7 +403,7 @@ gst_base_video_encoder_sink_getcaps (GstPad * pad, GstCaps * filter)
|
|||
gst_pad_get_allowed_caps (GST_BASE_VIDEO_CODEC_SRC_PAD
|
||||
(base_video_encoder));
|
||||
if (!allowed || gst_caps_is_empty (allowed) || gst_caps_is_any (allowed)) {
|
||||
fcaps = gst_caps_copy (templ_caps);
|
||||
fcaps = templ_caps;
|
||||
goto done;
|
||||
}
|
||||
|
||||
|
@ -432,7 +432,7 @@ gst_base_video_encoder_sink_getcaps (GstPad * pad, GstCaps * filter)
|
|||
if ((val = gst_structure_get_value (allowed_s, "pixel-aspect-ratio")))
|
||||
gst_structure_set_value (s, "pixel-aspect-ratio", val);
|
||||
|
||||
gst_caps_merge_structure (filter_caps, s);
|
||||
filter_caps = gst_caps_merge_structure (filter_caps, s);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -440,6 +440,7 @@ gst_base_video_encoder_sink_getcaps (GstPad * pad, GstCaps * filter)
|
|||
filter_caps);
|
||||
|
||||
fcaps = gst_caps_intersect (filter_caps, templ_caps);
|
||||
gst_caps_unref (templ_caps);
|
||||
gst_caps_unref (filter_caps);
|
||||
|
||||
if (filter) {
|
||||
|
|
|
@ -685,11 +685,12 @@ gst_base_audio_visualizer_src_negotiate (GstBaseAudioVisualizer * scope)
|
|||
if (gst_caps_is_empty (target))
|
||||
goto no_format;
|
||||
|
||||
gst_caps_truncate (target);
|
||||
target = gst_caps_truncate (target);
|
||||
} else {
|
||||
target = gst_caps_ref ((GstCaps *) templ);
|
||||
target = templ;
|
||||
}
|
||||
|
||||
target = gst_caps_make_writable (target);
|
||||
structure = gst_caps_get_structure (target, 0);
|
||||
gst_structure_fixate_field_nearest_int (structure, "width", scope->width);
|
||||
gst_structure_fixate_field_nearest_int (structure, "height", scope->height);
|
||||
|
|
|
@ -1147,7 +1147,7 @@ gst_auto_convert_getcaps (GstAutoConvert * autoconvert, GstCaps * filter,
|
|||
if (element_caps) {
|
||||
if (!gst_caps_is_any (element_caps) &&
|
||||
!gst_caps_is_empty (element_caps)) {
|
||||
gst_caps_merge (caps, element_caps);
|
||||
caps = gst_caps_merge (caps, element_caps);
|
||||
} else {
|
||||
gst_caps_unref (element_caps);
|
||||
}
|
||||
|
@ -1166,7 +1166,7 @@ gst_auto_convert_getcaps (GstAutoConvert * autoconvert, GstCaps * filter,
|
|||
|
||||
if (static_caps && !gst_caps_is_any (static_caps) &&
|
||||
!gst_caps_is_empty (static_caps)) {
|
||||
gst_caps_merge (caps, static_caps);
|
||||
caps = gst_caps_merge (caps, static_caps);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -852,14 +852,16 @@ gst_dtmf_src_negotiate (GstBaseSrc * basesrc)
|
|||
caps = gst_pad_get_allowed_caps (GST_BASE_SRC_PAD (basesrc));
|
||||
|
||||
if (!caps)
|
||||
caps =
|
||||
gst_caps_copy (gst_pad_get_pad_template_caps (GST_BASE_SRC_PAD
|
||||
(basesrc)));
|
||||
caps = gst_pad_get_pad_template_caps (GST_BASE_SRC_PAD (basesrc));
|
||||
|
||||
if (gst_caps_is_empty (caps))
|
||||
if (gst_caps_is_empty (caps)) {
|
||||
gst_caps_unref (caps);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
gst_caps_truncate (caps);
|
||||
caps = gst_caps_truncate (caps);
|
||||
|
||||
caps = gst_caps_make_writable (caps);
|
||||
s = gst_caps_get_structure (caps, 0);
|
||||
|
||||
gst_structure_fixate_field_nearest_int (s, "rate", DEFAULT_SAMPLE_RATE);
|
||||
|
|
|
@ -904,7 +904,8 @@ gst_rtp_dtmf_src_negotiate (GstBaseSrc * basesrc)
|
|||
}
|
||||
|
||||
/* now fixate, start by taking the first caps */
|
||||
gst_caps_truncate (temp);
|
||||
temp = gst_caps_truncate (temp);
|
||||
temp = gst_caps_make_writable (temp);
|
||||
srccaps = temp;
|
||||
|
||||
/* get first structure */
|
||||
|
|
|
@ -401,28 +401,29 @@ gst_dvbsub_overlay_getcaps (GstPad * pad, GstCaps * filter)
|
|||
{
|
||||
GstDVBSubOverlay *render = GST_DVBSUB_OVERLAY (gst_pad_get_parent (pad));
|
||||
GstPad *otherpad;
|
||||
GstCaps *caps;
|
||||
GstCaps *caps, *templ;
|
||||
|
||||
if (pad == render->srcpad)
|
||||
otherpad = render->video_sinkpad;
|
||||
else
|
||||
otherpad = render->srcpad;
|
||||
|
||||
templ = gst_pad_get_pad_template_caps (otherpad);
|
||||
|
||||
/* we can do what the peer can */
|
||||
caps = gst_pad_peer_query_caps (otherpad, filter);
|
||||
if (caps) {
|
||||
GstCaps *temp;
|
||||
const GstCaps *templ;
|
||||
|
||||
/* filtered against our padtemplate */
|
||||
templ = gst_pad_get_pad_template_caps (otherpad);
|
||||
temp = gst_caps_intersect (caps, templ);
|
||||
gst_caps_unref (templ);
|
||||
gst_caps_unref (caps);
|
||||
/* this is what we can do */
|
||||
caps = temp;
|
||||
} else {
|
||||
/* no peer, our padtemplate is enough then */
|
||||
caps = gst_caps_copy (gst_pad_get_pad_template_caps (pad));
|
||||
caps = templ;
|
||||
}
|
||||
|
||||
gst_object_unref (render);
|
||||
|
|
|
@ -363,15 +363,15 @@ gst_dvd_spu_video_proxy_getcaps (GstPad * pad, GstCaps * filter)
|
|||
|
||||
caps = gst_pad_peer_query_caps (otherpad, filter);
|
||||
if (caps) {
|
||||
GstCaps *temp;
|
||||
const GstCaps *templ;
|
||||
GstCaps *temp, *templ;
|
||||
|
||||
templ = gst_pad_get_pad_template_caps (otherpad);
|
||||
temp = gst_caps_intersect (caps, templ);
|
||||
gst_caps_unref (templ);
|
||||
gst_caps_unref (caps);
|
||||
caps = temp;
|
||||
} else {
|
||||
caps = gst_caps_copy (gst_pad_get_pad_template_caps (pad));
|
||||
caps = gst_pad_get_pad_template_caps (pad);
|
||||
}
|
||||
|
||||
gst_object_unref (dvdspu);
|
||||
|
|
|
@ -591,15 +591,14 @@ same_clock_rate_fold (const GValue * item, GValue * ret, gpointer user_data)
|
|||
GstPad *mypad = user_data;
|
||||
GstPad *pad = g_value_get_object (item);
|
||||
GstCaps *peercaps;
|
||||
const GstCaps *accumcaps;
|
||||
GstCaps *accumcaps;
|
||||
GstCaps *intersect;
|
||||
|
||||
if (pad == mypad) {
|
||||
if (pad == mypad)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
accumcaps = gst_value_get_caps (ret);
|
||||
peercaps = gst_pad_peer_query_caps (pad, (GstCaps *) accumcaps);
|
||||
accumcaps = g_value_get_boxed (ret);
|
||||
peercaps = gst_pad_peer_query_caps (pad, accumcaps);
|
||||
if (!peercaps) {
|
||||
g_warning ("no peercaps");
|
||||
return TRUE;
|
||||
|
|
|
@ -328,8 +328,7 @@ gst_h264_parse_negotiate (GstH264Parse * h264parse, gint in_format,
|
|||
/* concentrate on leading structure, since decodebin2 parser
|
||||
* capsfilter always includes parser template caps */
|
||||
if (caps) {
|
||||
caps = gst_caps_make_writable (caps);
|
||||
gst_caps_truncate (caps);
|
||||
caps = gst_caps_truncate (caps);
|
||||
GST_DEBUG_OBJECT (h264parse, "negotiating with caps: %" GST_PTR_FORMAT,
|
||||
caps);
|
||||
}
|
||||
|
@ -345,7 +344,7 @@ gst_h264_parse_negotiate (GstH264Parse * h264parse, gint in_format,
|
|||
|
||||
if (caps) {
|
||||
/* fixate to avoid ambiguity with lists when parsing */
|
||||
gst_caps_fixate (caps);
|
||||
caps = gst_caps_fixate (caps);
|
||||
gst_h264_parse_format_from_caps (caps, &format, &align);
|
||||
gst_caps_unref (caps);
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ colorspace_compare (gint width, gint height, gboolean comp)
|
|||
GstElement *pipeline, *src, *filter1, *filter2, *csp, *fcsp, *fakesink;
|
||||
GstElement *queue1, *queue2, *tee, *compare;
|
||||
GstCaps *caps, *tcaps, *rcaps, *fcaps;
|
||||
const GstCaps *ccaps;
|
||||
GstCaps *ccaps;
|
||||
GstPad *pad;
|
||||
|
||||
gint i, j;
|
||||
|
@ -122,7 +122,7 @@ colorspace_compare (gint width, gint height, gboolean comp)
|
|||
fail_unless (pad != NULL);
|
||||
ccaps = gst_pad_get_pad_template_caps (pad);
|
||||
fail_unless (ccaps != NULL);
|
||||
fcaps = gst_caps_copy (ccaps);
|
||||
fcaps = ccaps;
|
||||
gst_object_unref (pad);
|
||||
} else {
|
||||
fcaps = gst_caps_new_any ();
|
||||
|
@ -163,6 +163,7 @@ colorspace_compare (gint width, gint height, gboolean comp)
|
|||
|
||||
tcaps = gst_caps_intersect (fcaps, ccaps);
|
||||
gst_caps_unref (fcaps);
|
||||
gst_caps_unref (ccaps);
|
||||
caps = gst_caps_intersect (tcaps, caps);
|
||||
gst_caps_unref (tcaps);
|
||||
tcaps = caps;
|
||||
|
|
Loading…
Reference in a new issue