[Bug 739334] GstGLVideoMixer input caps can not be dynamically changed
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Oct 29 18:39:58 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=739334
GStreamer | gst-plugins-bad | git
--- Comment #2 from comicfans44 <comicfans44 at gmail.com> 2014-10-30 01:39:56 UTC ---
(In reply to comment #1)
> Isn't this fixed by
> 9ac74f62267e65c58a11e7f923b9659bc9f67c49
> glmixer: override the caps query in order to 'convert' capsfeatures ?
sorry ,the version I trace didn't include this commit . but the problem still
exists.
seems gst_gl_mixer_pad_sink_getcaps use gst_pad_get_current_caps to do
intersection, after first negotiation, this is a fixate caps
as
"video/x-raw, format=(string)I420, width=(int)320, height=(int)240,
framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
interlace-mode=(string)progressive"
but caps query passed a new filter with different height, leads empty result.
>
> If not, a simple test program would be helpful :)
#include <gst/gst.h>
int height=240;
GstElement *capsfilter;
static gboolean
timeout_cb (gpointer user_data)
{
height+=20;
GstCaps *newCaps=gst_caps_new_simple("video/x-raw",
"width",G_TYPE_INT,320,
"height",G_TYPE_INT,height,NULL);
g_object_set(G_OBJECT(capsfilter),"caps",newCaps,NULL);
return TRUE;
}
int main(int argc, char *argv[])
{
gst_init(NULL,NULL);
GstElement* pipeline=gst_parse_launch("videotestsrc ! capsfilter
name=capsfilter ! glvideomixer ! glimagesink ",NULL);
capsfilter=gst_bin_get_by_name(GST_BIN(pipeline),"capsfilter");
GMainLoop *loop=g_main_loop_new(NULL,FALSE);
g_timeout_add(1000, timeout_cb, NULL);
gst_element_set_state(pipeline,GST_STATE_PLAYING);
g_main_loop_run(loop);
}
for compare, pipeline as
videotestsrc ! capsfilter ! glfilterblur ! glimagesink
videotestsrc ! capsfilter ! glimagesink
are working as expected .
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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