audioconvert: Use new gst_caps_is_subset_structure() API
This prevents one copy of every structure and creating a new caps instance.
This commit is contained in:
parent
125f6a2fdf
commit
4fcd621101
@ -579,17 +579,12 @@ gst_audio_convert_transform_caps (GstBaseTransform * base,
|
|||||||
structure = gst_caps_get_structure (caps, j);
|
structure = gst_caps_get_structure (caps, j);
|
||||||
|
|
||||||
if (j > 0) {
|
if (j > 0) {
|
||||||
GstCaps *tmp = gst_caps_new_full (gst_structure_copy (structure), NULL);
|
|
||||||
|
|
||||||
/* If the new structure is a subset of the already existing transformed
|
/* If the new structure is a subset of the already existing transformed
|
||||||
* caps we can safely skip it because we would transform it to the
|
* caps we can safely skip it because we would transform it to the
|
||||||
* same caps again.
|
* same caps again.
|
||||||
*/
|
*/
|
||||||
if (gst_caps_is_subset (tmp, ret)) {
|
if (gst_caps_is_subset_structure (ret, structure))
|
||||||
gst_caps_unref (tmp);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
|
||||||
gst_caps_unref (tmp);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
structure_name = gst_structure_get_name (structure);
|
structure_name = gst_structure_get_name (structure);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user