Command line pipeline works fine, however have problem with android code

kiran kiran at algorythma.com
Mon Apr 16 11:03:13 UTC 2018


Hi.,


I am trying to build this pipeline in android, however it works fine in
commandline.
gst-launch-1.0 rtmpsrc location="rtmp://192.168.9.212/live/livestream
live=true" ! decodebin  ! queue ! autovideosink

and my android piece of code is as follows

static void on_pad_added (GstElement *element, GstPad *pad, gpointer data)
{
    gchar *name;
    GstElement *other = data;
    gst_element_link(element, other);

}


int main(){
 RTMPplayer *data = (RTMPplayer *) userdata;
 data->context = g_main_context_new();
    g_main_context_push_thread_default(data->context);

 data->pipeline = gst_pipeline_new("test-pipeline");
    data->video_queue = gst_element_factory_make("queue", "video_queue");
    data->video_decode = gst_element_factory_make("decodebin",
"video_decode");
    data->video_sink = gst_element_factory_make("autovideosink",
"video_sink");
 data->rtmp_source = gst_element_factory_make("rtmpsrc", "rtmp_source");


 g_object_set(G_OBJECT(data->rtmp_source), "location",
                 "rtmp://192.168.9.212/live/livestream live=1",
                 NULL);
  create_bin();
if ( gst_element_link_many( data->rtmp_source,  data->video_decode, NULL) !=
TRUE ||
            gst_element_link_many( data->video_queue, data->video_sink,
NULL) != TRUE){
        g_printerr("Element1 could not be linked.\n");
        gst_object_unref(data->pipeline);
        return NULL;
    }

 data->video_overlay = gst_bin_get_by_interface(GST_BIN(data->pipeline),
GST_TYPE_VIDEO_OVERLAY);
 data->main_loop = g_main_loop_new (NULL, FALSE);
g_main_loop_run (data->main_loop);
return NULL;

}

It throws error message, and i am bit clueless on how to proceed further.


04-16 15:21:32.657 32743   319 I ACodec  : [OMX.Exynos.avc.dec] Now Loaded
04-16 15:21:32.659 32743   317 E GStreamer+amcvideodec: 0:00:00.580122154
0xccbef4f0
gstamcvideodec.c:1987:gst_amc_video_dec_set_format:<amcvideodec-omxexynosavcdec0>
Codec only supports GL output but downstream does not
04-16 15:21:32.659 32743   317 W GStreamer+videodecoder: 0:00:00.580180730
0xccbef4f0
gstvideodecoder.c:732:gst_video_decoder_setcaps:<amcvideodec-omxexynosavcdec0>
Subclass refused caps
04-16 15:21:32.659 32743   317 W GStreamer+decodebin: 0:00:00.580209269
0xccbef4f0 gstdecodebin2.c:2514:connect_pad:<video_decode> Couldn't set
amcvideodec-omxexynosavcdec0 to PAUSED
04-16 15:21:32.660 32743   319 I ACodec  :  [OMX.Exynos.avc.dec] Now
uninitialized
04-16 15:21:32.660 32743   319 I ACodec  :  [] Now kWhatShutdownCompleted
event : 8362
04-16 15:21:32.660 32743   318 I MediaCodec: Codec shutdown complete
04-16 15:21:32.743  3738  4040 D MdnieScenarioControlService:  packageName :
org.freedesktop.gstreamer.tutorials.tutorial_3    className :
org.freedesktop.gstreamer.tutorials.tutorial_3.Tutorial3
04-16 15:21:32.752 32743   311 I GLib+stdout: A new pad src_0 was created
for video_decode
04-16 15:21:32.752 32743   311 I GLib+stdout: element video_decode will be
linked to filter
04-16 15:21:32.763 32743   309 D libGLESv2: STS_GLApi : DTS is not allowed
for Package : org.freedesktop.gstreamer.tutorials.tutorial_3
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.688617192
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:1, Error:glBeginQueryEXT::failed to allocate CPU memory
04-16 15:21:32.768 32743   309 W         : GLES OOM error: failed to
allocate CPU memory (gles2_queryp_begin_query_internal at
hardware/samsung_slsi/MaliT880_r12p1_02dev0_JF_N/product/gles/src/query/mali_gles2_query_api.c:289)
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.688800115
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:148, Error:glEndQueryEXT::query name is 0
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.689043115
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:1, Error:glBeginQueryEXT::failed to allocate CPU memory
04-16 15:21:32.768 32743   309 W         : GLES OOM error: failed to
allocate CPU memory (gles2_queryp_begin_query_internal at
hardware/samsung_slsi/MaliT880_r12p1_02dev0_JF_N/product/gles/src/query/mali_gles2_query_api.c:289)
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.689142153
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:148, Error:glEndQueryEXT::query name is 0
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.689288077
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:1, Error:glBeginQueryEXT::failed to allocate CPU memory
04-16 15:21:32.768 32743   309 W         : GLES OOM error: failed to
allocate CPU memory (gles2_queryp_begin_query_internal at
hardware/samsung_slsi/MaliT880_r12p1_02dev0_JF_N/product/gles/src/query/mali_gles2_query_api.c:289)
04-16 15:21:32.768 32743   309 E GStreamer+gldebug: 0:00:00.689373230
0xcca76950 gstgldebug.c:307:_gst_gl_debug_callback:<glcontextegl1> high: GL
error from API id:148, Error:glEndQueryEXT::query name is 0


Any inputs to solve this will be of great help.

Thank you




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list