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 776238 - dvbsuboverlay: don't composite if cannot map frame
dvbsuboverlay: don't composite if cannot map frame
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
unspecified
Other All
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-12-18 14:27 UTC by Víctor Manuel Jáquez Leal
Modified: 2018-11-03 14:02 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
dvbsuboverlay: don't composite if cannot map frame (1.68 KB, patch)
2016-12-18 14:27 UTC, Víctor Manuel Jáquez Leal
none Details | Review
dvbsuboverlay: don't composite if cannot map frame (1.67 KB, patch)
2017-05-02 16:31 UTC, Víctor Manuel Jáquez Leal
needs-work Details | Review
dvbsuboverlay: fail if frame cannot be mapped (1.68 KB, patch)
2017-05-02 17:17 UTC, Víctor Manuel Jáquez Leal
none Details | Review

Description Víctor Manuel Jáquez Leal 2016-12-18 14:27:52 UTC
If the frame to composite cannot be mapped, the frame is passed as
is, wihtout blending the image, logging an info message.
Comment 1 Víctor Manuel Jáquez Leal 2016-12-18 14:27:58 UTC
Created attachment 342170 [details] [review]
dvbsuboverlay: don't composite if cannot map frame
Comment 2 Sebastian Dröge (slomo) 2016-12-18 14:53:43 UTC
Review of attachment 342170 [details] [review]:

::: gst/dvbsuboverlay/gstdvbsuboverlay.c
@@ +1135,3 @@
+      } else {
+        GST_INFO_OBJECT (overlay, "could not map buffer to blend %"
+            GST_PTR_FORMAT, buffer);

This should probably be an GST_ERROR_OBJECT()? Or even a real error message plus returning GST_FLOW_ERROR?
Comment 3 Tim-Philipp Müller 2016-12-18 15:25:19 UTC
I don't think it should error out in this case, this is recoverable, it should just continue without blending the subs then imho.
Comment 4 Víctor Manuel Jáquez Leal 2016-12-18 16:11:10 UTC
(In reply to Tim-Philipp Müller from comment #3)
> I don't think it should error out in this case, this is recoverable, it
> should just continue without blending the subs then imho.

I agree. And that's what the patch does: keeps working without subs while the frame cannot be mapped.
Comment 5 Víctor Manuel Jáquez Leal 2017-04-28 16:50:40 UTC
ping?

@slomo, another reason to not raise an error is with non-mappable dmabuf-based buffers.

Can we assume that all the buffers are non-mappable after the first tried and enable a passthrough mechanism?
Comment 6 Tim-Philipp Müller 2017-04-28 18:51:08 UTC
I think this should be at least a GST_WARNING log message - this is not really ever expected under normal circumstances, is it?

I don't think you can really make any assumptions about the next buffer based on a given buffer.
Comment 7 Nicolas Dufresne (ndufresne) 2017-04-29 14:44:52 UTC
In normal circonstances, non-mappable dmaubuf will be delivered with the dmabuf caps feature. In that case, if downstream does not have composition meta, overlays should fail negotiation (an error).

My opinion here is to return an error, since the resulting output will be incorrect. In practice, a warning will flood, since map failures in video is generally common to all buffers from the same pool / allocation.
Comment 8 Víctor Manuel Jáquez Leal 2017-05-02 16:31:47 UTC
Created attachment 350896 [details] [review]
dvbsuboverlay: don't composite if cannot map frame

If the frame to composite cannot be mapped, the frame is passed as
is, wihtout blending the image, logging an info message.
Comment 9 Nicolas Dufresne (ndufresne) 2017-05-02 16:57:42 UTC
Review of attachment 350896 [details] [review]:

The commit message is out-dated now.
Comment 10 Víctor Manuel Jáquez Leal 2017-05-02 17:17:08 UTC
Created attachment 350900 [details] [review]
dvbsuboverlay: fail if frame cannot be mapped

If the frame to composite cannot be mapped, the elements
post a error message in the bus and returns GST_FLOW_ERROR,
stopping the pipeline.
Comment 11 GStreamer system administrator 2018-11-03 14:02:08 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-bad/issues/498.