[Bug 794901] Closed Caption and Ancillary data support

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Apr 3 07:56:32 UTC 2018


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

Sebastian Dröge (slomo) <slomo at coaxion.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #370441|none                        |needs-work
             status|                            |

--- Comment #6 from Sebastian Dröge (slomo) <slomo at coaxion.net> ---
Review of attachment 370441:
 --> (https://bugzilla.gnome.org/review?bug=794901&attachment=370441)

::: gst-libs/gst/video/video-anc.c
@@ +205,3 @@
+ * gst_video_vbi_parser_get_ancillary:
+ * @parser: a #GstVideoVBIParser
+ * @anc: (out): a #GstVideoAncillary to start the eventual ancillary data

This seems more like a case of (out caller-allocates)

Also this is not very bindings-friendly (or rather GI-friendly). There would be
no automatic memory management of the data in the VANC struct (another reason
to make it a fixed 255 byte array).

@@ +411,3 @@
+      break;
+    default:
+      GST_ERROR ("UNSUPPORTED FORMAT !");

g_assert_not_reached() or not?

@@ +449,3 @@
+      return FALSE;
+  } else {
+    /* return FALSE, if transform type is not supported */

AFAIU this meta could be copied over always. It's like a separate stream, it
does not depend on anything inside the buffer

@@ +461,3 @@
+  GstVideoCaptionMeta *emeta = (GstVideoCaptionMeta *) meta;
+
+  emeta->caption_type = GST_VIDEO_CAPTION_TYPE_UNKNOWN;

You need to set all things to 0 if needed, metas are not initialized by default

@@ +471,3 @@
+  GstVideoCaptionMeta *emeta = (GstVideoCaptionMeta *) meta;
+
+  g_free (emeta->data);

... otherwise you might free a random pointer here

::: gst-libs/gst/video/video-anc.h
@@ +49,3 @@
+  guint8 SDID_block_number;
+  guint8 data_count;
+  guint8 *data;

Maybe this should just be a fixed 255 byte array?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list