http-launch on Android

Lee Matthews lma at spaceapplications.com
Wed May 28 12:37:00 PDT 2014


I was originally trying to build the code using ndk-build and the linker was complaining that it couldn't find a few functions that are in the gio library.

So I added libgio-2.0.a as a prebuilt static library to my Android.mk build script. It then compiled ok, but I'm getting runtime errors.

When I'm in the office tomorrow, I can send a copy of my Android.mk.

Lee



----- Original Message -----
From: "Sebastian Dröge" <sebastian at centricular.com>
To: "Discussion of the development of and with GStreamer" <gstreamer-devel at lists.freedesktop.org>
Sent: Wednesday, 28 May, 2014 9:26:40 PM
Subject: Re: http-launch on Android

On Mi, 2014-05-28 at 17:54 +0200, Lee Matthews wrote:
> Hi,
> 
> I'm trying to do http streaming from an android phone. I'm using the code described here as a reference : https://coaxion.net/blog/2013/10/streaming-gstreamer-pipelines-via-http/
> 
> I compile the code using NDK, but during runtime there are some issues, see below :
> 
> 'pipeline1', GstMessageStateChanged, old-state=(GstState)GST_STATE_NULL, new-state=(GstState)GST_STATE_READY, pending-state=(GstState)GST_STATE_VOID_PENDING;
> D/GStreamer+GST_BUS( 3175): 0:00:00.328679583 0x75a83400 gstbus.c:345:gst_bus_post:<bus3> [msg 0x75c9f018] pushing on async queue
> D/GStreamer+GST_BUS( 3175): 0:00:00.328730417 0x75a83400 gstbus.c:348:gst_bus_post:<bus3> [msg 0x75c9f018] pushed on async queue
> D/GStreamer+GST_STATES( 3175): 0:00:00.328784896 0x75a83400 gstelement.c:2560:gst_element_set_state_func:<pipeline1> returned SUCCESS
> D/VIDEO-SOURCE( 3175): ok3
> W/GLib+GLib-GObject( 3175): cannot register existing type 'GCancellable'
> W/GLib+GLib-GObject( 3175): cannot add private field to invalid (non-instantiatable) type '<invalid>'
> E/GLib+GLib( 3175): g_once_init_leave: assertion 'result != 0' failed
> E/GLib+GLib-GObject( 3175): g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
> D/VIDEO-SOURCE( 3175): ok4
> W/GLib+GLib-GObject( 3175): cannot register existing type 'GSocket'
> W/GLib+GLib-GObject( 3175): cannot add private field to invalid (non-instantiatable) type '<invalid>'
> W/GLib+GLib-GObject( 3175): cannot register existing type 'GInitable'
> E/GLib+GLib-GObject( 3175): g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed
> E/GLib+GLib( 3175): g_once_init_leave: assertion 'result != 0' failed
> E/GLib+GLib-GObject( 3175): g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
> E/GLib+GLib( 3175): g_once_init_leave: assertion 'result != 0' failed

How did you compile the code for Android? The problem here looks like
you have two versions of GIO in the same process.

-- 
Sebastian Dröge, Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source

_______________________________________________
gstreamer-devel mailing list
gstreamer-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


More information about the gstreamer-devel mailing list