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 680767 - [appsrc] rework as GstBuffer's don't have caps anymore
[appsrc] rework as GstBuffer's don't have caps anymore
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other All
: Normal enhancement
: 0.11.x
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-07-29 04:58 UTC by Thiago Sousa Santos
Modified: 2012-08-02 22:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Trivial solution (1.88 KB, patch)
2012-07-29 05:01 UTC, Thiago Sousa Santos
needs-work Details | Review

Description Thiago Sousa Santos 2012-07-29 04:58:54 UTC
appsrc sometimes rely on the buffer's caps being set on the pads (from the 0.10 times). Now GstBuffers don't have the caps and some rewriting should be done to make sure that the caps set at the property is negotiated with downstream elements.
Comment 1 Thiago Sousa Santos 2012-07-29 05:01:44 UTC
Created attachment 219810 [details] [review]
Trivial solution

Store a flag to indicate when appsrc should set a new caps before pushing buffers. This solves my problems with camerabin tests. Some more code might be improved.
Comment 2 Sebastian Dröge (slomo) 2012-07-29 12:38:51 UTC
Review of attachment 219810 [details] [review]:

Looks good except

::: gst-libs/gst/app/gstappsrc.c
@@ +938,1 @@
   GST_OBJECT_UNLOCK (appsrc);

Here you're using the object lock instead of priv->mutex to protect the new_caps field
Comment 3 Thiago Sousa Santos 2012-08-02 22:02:59 UTC
commit 6d4f94f45e4412528112aea4c066b5bd747a8c61 pushed