playbin compatibility with tcpserversink

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

playbin compatibility with tcpserversink

kroketor
This post was updated on .
I'm still trying to create one pipeline with rtspsrc source and tcpserversink in order to transmit video form a ipcam to a html video tag (http://gstreamer-devel.966125.n4.nabble.com/rtsprc-tcpserversink-pipeline-freezes-continuosly-td4680988.html#a4680999).

Now i'm using a basic example of playbin, i tried to use tcpserversink as videosink but i saw that the pipeline ignores this and keep using autovideosink. Then i changed the rank of tcpserversink but it doesn't change anything  and keeps using autovidesink besides the primary rank of tcpserversink. There is some type of incompatibility between playbin and tcpserversink?

gst_init(&argc, &argv);

GstRegistry* reg = gst_registry_get();

GstPluginFeature* tcpsrc = gst_registry_lookup_feature(reg, "tcpserversink");

if (tcpsrc == NULL) {
        return -1;
}
guint after = gst_plugin_feature_get_rank(tcpsrc);
printf("After: %d\n", after);
gst_plugin_feature_set_rank(tcpsrc, GST_RANK_PRIMARY);
int before = gst_plugin_feature_get_rank(tcpsrc);
printf("Before: %d\n", before);
gst_object_unref(tcpsrc);

/* Build the pipeline */
pipeline = gst_parse_launch("playbin uri=rtsp://xxxxxx:xxxx@192.168.1.191/12:554/ch1-s1?tcp videosink=\"tcpserversink host = 192.168.1.200 port = 7009\"", NULL);

/* Start playing */
gst_element_set_state(pipeline, GST_STATE_PLAYING);