Revert "pbutils: allow describing unfixed caps if they share the same media type"
This reverts commit 065f1603b0f1d2adc8477bf1f3ebe2b154885d89. This is not considered the correct solution, see: https://bugzilla.gnome.org/show_bug.cgi?id=703378
This commit is contained in:
parent
e8e8fa22f3
commit
1c4af723a3
@ -840,7 +840,7 @@ gst_pb_utils_get_decoder_description (const GstCaps * caps)
|
|||||||
|
|
||||||
tmp = copy_and_clean_caps (caps);
|
tmp = copy_and_clean_caps (caps);
|
||||||
|
|
||||||
g_return_val_if_fail (has_single_media_type (tmp), NULL);
|
g_return_val_if_fail (gst_caps_is_fixed (tmp), NULL);
|
||||||
|
|
||||||
/* special-case RTP caps */
|
/* special-case RTP caps */
|
||||||
if (caps_are_rtp_caps (tmp, "video", &str)) {
|
if (caps_are_rtp_caps (tmp, "video", &str)) {
|
||||||
@ -891,7 +891,7 @@ gst_pb_utils_get_encoder_description (const GstCaps * caps)
|
|||||||
g_return_val_if_fail (caps != NULL, NULL);
|
g_return_val_if_fail (caps != NULL, NULL);
|
||||||
g_return_val_if_fail (GST_IS_CAPS (caps), NULL);
|
g_return_val_if_fail (GST_IS_CAPS (caps), NULL);
|
||||||
tmp = copy_and_clean_caps (caps);
|
tmp = copy_and_clean_caps (caps);
|
||||||
g_return_val_if_fail (has_single_media_type (tmp), NULL);
|
g_return_val_if_fail (gst_caps_is_fixed (tmp), NULL);
|
||||||
|
|
||||||
/* special-case RTP caps */
|
/* special-case RTP caps */
|
||||||
if (caps_are_rtp_caps (tmp, "video", &str)) {
|
if (caps_are_rtp_caps (tmp, "video", &str)) {
|
||||||
@ -1022,7 +1022,7 @@ gst_pb_utils_get_codec_description (const GstCaps * caps)
|
|||||||
g_return_val_if_fail (caps != NULL, NULL);
|
g_return_val_if_fail (caps != NULL, NULL);
|
||||||
g_return_val_if_fail (GST_IS_CAPS (caps), NULL);
|
g_return_val_if_fail (GST_IS_CAPS (caps), NULL);
|
||||||
tmp = copy_and_clean_caps (caps);
|
tmp = copy_and_clean_caps (caps);
|
||||||
g_return_val_if_fail (has_single_media_type (tmp), NULL);
|
g_return_val_if_fail (gst_caps_is_fixed (tmp), NULL);
|
||||||
|
|
||||||
info = find_format_info (tmp);
|
info = find_format_info (tmp);
|
||||||
|
|
||||||
|
@ -156,25 +156,6 @@ copy_and_clean_caps (const GstCaps * caps)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
gboolean
|
|
||||||
has_single_media_type (const GstCaps * caps)
|
|
||||||
{
|
|
||||||
guint n, ns;
|
|
||||||
const char *name0, *namen;
|
|
||||||
|
|
||||||
g_return_val_if_fail (GST_IS_CAPS (caps), FALSE);
|
|
||||||
|
|
||||||
name0 = gst_structure_get_name (gst_caps_get_structure (caps, 0));
|
|
||||||
ns = gst_caps_get_size (caps);
|
|
||||||
for (n = 1; n < ns; ++n) {
|
|
||||||
namen = gst_structure_get_name (gst_caps_get_structure (caps, n));
|
|
||||||
if (strcmp (name0, namen)) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* gst_missing_uri_source_message_new:
|
* gst_missing_uri_source_message_new:
|
||||||
* @element: the #GstElement posting the message
|
* @element: the #GstElement posting the message
|
||||||
@ -338,7 +319,7 @@ gst_missing_encoder_message_new (GstElement * element,
|
|||||||
g_return_val_if_fail (GST_IS_CAPS (encode_caps), NULL);
|
g_return_val_if_fail (GST_IS_CAPS (encode_caps), NULL);
|
||||||
g_return_val_if_fail (!gst_caps_is_any (encode_caps), NULL);
|
g_return_val_if_fail (!gst_caps_is_any (encode_caps), NULL);
|
||||||
g_return_val_if_fail (!gst_caps_is_empty (encode_caps), NULL);
|
g_return_val_if_fail (!gst_caps_is_empty (encode_caps), NULL);
|
||||||
g_return_val_if_fail (has_single_media_type (encode_caps), NULL);
|
g_return_val_if_fail (gst_caps_is_fixed (encode_caps), NULL);
|
||||||
|
|
||||||
description = gst_pb_utils_get_encoder_description (encode_caps);
|
description = gst_pb_utils_get_encoder_description (encode_caps);
|
||||||
caps = copy_and_clean_caps (encode_caps);
|
caps = copy_and_clean_caps (encode_caps);
|
||||||
|
@ -107,4 +107,3 @@ struct _GstDiscovererInfo {
|
|||||||
/* missing-plugins.c */
|
/* missing-plugins.c */
|
||||||
|
|
||||||
GstCaps *copy_and_clean_caps (const GstCaps * caps);
|
GstCaps *copy_and_clean_caps (const GstCaps * caps);
|
||||||
gboolean has_single_media_type (const GstCaps * caps);
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user