After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 738248 - wavparse should read the Broadcast Wave Format (BWF)
wavparse should read the Broadcast Wave Format (BWF)
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-10-09 16:44 UTC by Peter G. Baum
Modified: 2018-11-03 14:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch to read the meta data in bext and convert it to tags (4.76 KB, patch)
2014-10-09 16:44 UTC, Peter G. Baum
none Details | Review
gstwavparse: read broadcast wave (bext) chunk (4.79 KB, patch)
2014-10-09 17:10 UTC, Peter G. Baum
needs-work Details | Review
gstwavparse: read broadcast wave (bext) chunk (4.85 KB, patch)
2014-11-09 13:34 UTC, Peter G. Baum
needs-work Details | Review

Description Peter G. Baum 2014-10-09 16:44:41 UTC
Created attachment 288150 [details] [review]
Patch to read the meta data in bext and convert it to tags

That means in should not skip, but read the bext chunk.

This is necessary to use gstreamer in professional environments, where the data in the bext chunk is used.
Comment 1 Peter G. Baum 2014-10-09 17:10:52 UTC
Created attachment 288152 [details] [review]
gstwavparse: read broadcast wave (bext) chunk

Added missing gst_buffer_unmap()
Comment 2 Peter G. Baum 2014-10-26 04:13:16 UTC
Any comments to the patch?
Comment 3 Sebastian Dröge (slomo) 2014-10-26 11:10:42 UTC
Review of attachment 288152 [details] [review]:

::: gst/wavparse/gstwavparse.c
@@ +220,3 @@
+      "BWF/TimeReference", "Broadcast Wave Format: Time reference", NULL);
+  gst_tag_register (BWF_TAG_VERSION, GST_TAG_FLAG_META, G_TYPE_INT,
+      "BWF/Version", "Broadcast Wave Format: Version", NULL);

Maybe some of the tags can be mapped to already existing tags?

@@ +1098,3 @@
+  gst_buffer_map (buf, &map, GST_MAP_READ);
+
+  memcpy (txt, map.data, 256);

You should check here that actually enough data is available before blindly parsing it.
Comment 4 Peter G. Baum 2014-10-26 15:13:54 UTC
> Maybe some of the tags can be mapped to already existing tags?
Is there an overview of all existing tags available?

>You should check here that actually enough data is available before blindly
parsing it.

Isn't this done with
+        if ((res =
+                gst_pad_pull_range (wav->sinkpad, wav->offset + 8,
+                    size, &buf)) != GST_FLOW_OK)
+          goto header_read_error;
Comment 5 Tim-Philipp Müller 2014-10-26 15:27:27 UTC
pull_range() might give you a short packet at the end of the file.
Comment 6 Peter G. Baum 2014-11-09 13:34:21 UTC
Created attachment 290269 [details] [review]
gstwavparse: read broadcast wave (bext) chunk

Check range before trying to read values.
Comment 7 Stefan Sauer (gstreamer, gtkdoc dev) 2015-01-21 13:15:05 UTC
Review of attachment 290269 [details] [review]:

::: gst/wavparse/gstwavparse.c
@@ +220,3 @@
+      "BWF/TimeReference", "Broadcast Wave Format: Time reference", NULL);
+  gst_tag_register (BWF_TAG_VERSION, GST_TAG_FLAG_META, G_TYPE_INT,
+      "Broadcast Wave Format: Originator reference", NULL);

This still holds. Can we please reuse the existing tags, this ensures that they are mapped correctly when transcoding.
Comment 8 Peter G. Baum 2015-01-21 19:33:30 UTC
This makes absolutely sense, but where do I find a list of existing tags?
Comment 9 Nicolas Dufresne (ndufresne) 2015-01-21 20:58:26 UTC
(In reply to comment #8)
> This makes absolutely sense, but where do I find a list of existing tags?

/usr/include/gstreamer-1.0/gst/gsttaglist.h
https://developer.gnome.org/gstreamer/stable/gstreamer-GstTagList.html

And you will find the same in DevHelp tool.
Comment 10 GStreamer system administrator 2018-11-03 14:54:36 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/132.