missing-plugins: Remove some other fields when cleaning up caps
authorSebastian Dröge <sebastian@centricular.com>
Fri, 8 Jul 2016 12:45:25 +0000 (15:45 +0300)
committerSebastian Dröge <sebastian@centricular.com>
Fri, 8 Jul 2016 13:41:12 +0000 (16:41 +0300)
Caps are cleaned up for missing plugins, and for creating encoding profiles
and caps descriptions.

Fields like streamheader, parsed, framed, stream-format and alignment are not
relevant here. The last ones all because a parser will take care of them.

https://bugzilla.gnome.org/show_bug.cgi?id=768566

gst-libs/gst/pbutils/missing-plugins.c

index 4cf9291..1228896 100644 (file)
@@ -126,6 +126,7 @@ copy_and_clean_caps (const GstCaps * caps)
    * where template caps usually have the standard MIN - MAX range as value) */
   s = gst_caps_get_structure (ret, 0);
   gst_structure_remove_field (s, "codec_data");
+  gst_structure_remove_field (s, "streamheader");
   gst_structure_remove_field (s, "palette_data");
   gst_structure_remove_field (s, "pixel-aspect-ratio");
   gst_structure_remove_field (s, "framerate");
@@ -141,6 +142,12 @@ copy_and_clean_caps (const GstCaps * caps)
   gst_structure_remove_field (s, "height");
   gst_structure_remove_field (s, "channels");
   gst_structure_remove_field (s, "rate");
+  /* parsed, framed, stream-format and alignment are going to be handled by
+   * parsers and not relevant for decoders/encoders usually */
+  gst_structure_remove_field (s, "parsed");
+  gst_structure_remove_field (s, "framed");
+  gst_structure_remove_field (s, "stream-format");
+  gst_structure_remove_field (s, "alignment");
   /* rtp fields */
   gst_structure_remove_field (s, "config");
   gst_structure_remove_field (s, "clock-rate");