Custom Bin

Chuck Crisler ccrisler at mutualink.net
Wed Apr 8 07:30:43 PDT 2015


You have made an easy and common mistake. The GStreamer SDK is not
associated with the GStreamer project, despite the name. I have never used
the GStreamer SDK. I really don't know why it was created. You should look
here -> http://gstreamer.freedesktop.org/ for the latest documentation,
source and binaries. And yes, GStreamer 1.0 is *NOT* compatible with
GStreamer SDK. The SDK code is very old.

On Wed, Apr 8, 2015 at 12:39 AM, Sneha Murganoor <sneha.nie at gmail.com>
wrote:

> Hi Sergio,
>
> how to move to gstreamer-1.0? Is there a specific sdk for Gstreamer-1.0?
>
> Right now .. i have followed steps in
> http://docs.gstreamer.com/display/GstSDK/Installing+on+Linux
>
> I tried compiling against gstreamer 1.0.. I didnt work.
>
>  gcc gstinit.c -o gstinit `pkg-config --cflags --libs gstreamer-1.0`
> /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/
> libgstreamer-1.0.so: undefined reference to
> `g_type_class_adjust_private_offset'
> collect2: error: ld returned 1 exit status
>
> Thanks,
> Sneha
>
> On Tue, Apr 7, 2015 at 5:12 PM, <
> gstreamer-devel-request at lists.freedesktop.org> wrote:
>
>> Send gstreamer-devel mailing list submissions to
>>         gstreamer-devel at lists.freedesktop.org
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>>         http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> or, via email, send a message with subject or body 'help' to
>>         gstreamer-devel-request at lists.freedesktop.org
>>
>> You can reach the person managing the list at
>>         gstreamer-devel-owner at lists.freedesktop.org
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of gstreamer-devel digest..."
>>
>>
>> Today's Topics:
>>
>>    1. Re: Custom Bin (Sérgio Agostinho)
>>    2. Re: Calculate timestamp in handoff callback (Mayank Agarwal)
>>
>>
>> ----------------------------------------------------------------------
>>
>> Message: 1
>> Date: Tue, 7 Apr 2015 13:10:01 +0200
>> From: Sérgio Agostinho <sergio.r.agostinho at gmail.com>
>> To: Discussion of the development of and with GStreamer
>>         <gstreamer-devel at lists.freedesktop.org>
>> Subject: Re: Custom Bin
>> Message-ID:
>>         <CALUX5R0E_EhTsLQ7V1Y=
>> DX3MWrrtEvt2s2EHH_2_BnV-GDTJ3Q at mail.gmail.com>
>> Content-Type: text/plain; charset="utf-8"
>>
>> Hi Sneha,
>>
>>
>> 1 - In the code you've mentioned
>> <
>> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-bin-custom.html
>> >,
>> what is happening is that you're trying to create en element instance of
>> the custom 'oggvorbisplayer' plugin. Notice that this 'oggvorbisplayer'
>> plugin is representative of the custom plugin someone has (personally)
>> developed and therefore not part of the generically available plugins. You
>> can find more info on how to write custom plugins in the Plugin Writers
>> Guide
>> <
>> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/pwg/html/index.html
>> >
>> .
>> 2 - If you run gst-inspect without any additional argument it will print
>> the list of available plugins on your system.
>>
>> Side note: You're reading the manual for 1.4.5 and yet you're using 0.1. I
>> would recommend bumping it to the latest version.
>>
>> Cheers
>>
>>
>>
>> 2015-04-07 10:51 GMT+02:00 Sneha Murganoor <sneha.nie at gmail.com>:
>>
>> > Hi all,
>> >
>> > I am new bee to Gstreamer, learning through Gstreamer Application manual
>> > 1.4.5.
>> >
>> > While i compiled the code in
>> >
>> >
>> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-bin-custom.html
>> > I realized that oggvorbisplayer plugin is missing.
>> >
>> > >>gst-inspect-0.10 oggvorbisplayer
>> > No such element or plugin 'oggvorbisplayer'
>> >
>> > >>gcc custom_bin.c -o custom_bin `pkg-config --cflags --libs
>> > gstreamer-0.10`
>> >
>> >
>> > >>./custom_bin
>> >
>> > (custom_bin:7173): GLib-GObject-CRITICAL **: g_object_set: assertion
>> > `G_IS_OBJECT (object)' failed
>> >
>> > 1. How do I fix this??
>> > 2. how to find : Which elements/plugins are placed in gst plugins?
>> >
>> > Thanks,
>> > Sneha
>> >
>> > _______________________________________________
>> > gstreamer-devel mailing list
>> > gstreamer-devel at lists.freedesktop.org
>> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> -------------- next part --------------
>> An HTML attachment was scrubbed...
>> URL: <
>> http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150407/17d2c7af/attachment-0001.html
>> >
>>
>> ------------------------------
>>
>> Message: 2
>> Date: Tue, 7 Apr 2015 17:12:15 +0530
>> From: Mayank Agarwal <mayank77fromindia at gmail.com>
>> To: gstreamer-devel at lists.freedesktop.org
>> Subject: Re: Calculate timestamp in handoff callback
>> Message-ID:
>>         <CAKjpqyJNZkhxSiJOSzYoGq7nOF5CwS+DDqtfCo4kH-2LKk2=
>> kQ at mail.gmail.com>
>> Content-Type: text/plain; charset=UTF-8
>>
>> Hi,
>>
>> I have written another application in which the handoff function is
>> getting called but i am getting timestamp 0.
>>
>> My doubts are:
>>
>> 1.We have to attach handoff signal to sink element,if we can do that
>> to all sink elements or only specific.
>> 2.Apart from sink how can we attach it to identity element.
>> 3.Correct way of calculating framerate from timestamp in handoff signal.
>>
>> #include <gst/gst.h>
>>
>> #include <string.h>
>> #include <stdbool.h>
>>
>>
>>
>>
>> static char *filename;
>> static char *result;
>> static char *result_crop;
>>
>> static GMainLoop *loop;
>> static GstElement *pipeline;
>> static GstElement *src, *demux, *sink;
>>
>>
>>
>> static unsigned buffer_count;
>>
>> static gboolean bus_cb(GstBus *bus, GstMessage *msg, gpointer data)
>> {
>> switch (GST_MESSAGE_TYPE(msg)) {
>> case GST_MESSAGE_EOS:
>> g_main_loop_quit(loop);
>> break;
>> case GST_MESSAGE_ERROR: {
>> gchar *debug;
>> GError *err;
>>
>> gst_message_parse_error(msg, &err, &debug);
>>
>> g_printerr("error: %s: %s\n", err->message, debug);
>> g_error_free(err);
>> g_free(debug);
>>
>> g_main_loop_quit(loop);
>> break;
>> }
>> default:
>> break;
>> }
>>
>> return TRUE;
>> }
>>
>> static void on_pad_added(GstElement *element, GstPad *pad, gpointer data)
>> {
>> GstPad *sinkpad;
>> GstStructure *struc;
>> const gchar *name;
>>
>> sinkpad = gst_element_get_static_pad(sink, "sink");
>> gst_pad_link(pad, sinkpad);
>> gst_object_unref(sinkpad);
>>
>> struc = gst_caps_get_structure(GST_PAD_CAPS(pad), 0);
>>
>> // struc = gst_caps_get_structure(gst_pad_get_current_caps(pad), 0);
>>
>> name = gst_structure_get_name(struc);
>> if (strncmp(name, "video/", 6) != 0)
>> return;
>>
>> }
>>
>> static void handoff(GstElement *object,
>>     GstBuffer *buffer,
>>     GstPad *pad,
>>     gpointer user_data)
>> {
>> GstStructure *struc;
>> const GValue *codec_data;
>> bool r;
>> int bufsamplesize = 0;
>> GstClockTime timestamp;
>>         int framerate = 0;
>> int duration = 0;
>>
>> buffer_count++;
>>
>>
>>         if(GST_BUFFER_TIMESTAMP_IS_VALID(buffer))
>>         g_printf("Timestamp is valid\n");
>>
>>         if(GST_BUFFER_DURATION_IS_VALID(buffer))
>>         g_printf("Duration is valid\n");
>>
>>         bufsamplesize = GST_BUFFER_SIZE(buffer);
>>         g_printf("Buffer sample size = %d\n",bufsamplesize);
>>
>>
>>         timestamp = GST_BUFFER_TIMESTAMP(buffer);
>>         g_print ("Timestamp calculated = : %" GST_TIME_FORMAT "\n",
>>       GST_TIME_ARGS (timestamp));
>>         duration = GST_BUFFER_DURATION(buffer);
>>         g_printf("Duration = %d\n",duration);
>>
>> framerate = 1000000*1/timestamp;
>>         g_print ("Framerate calculated = : %" GST_TIME_FORMAT "\n",
>>       GST_TIME_ARGS (framerate));
>>
>>
>> /*struc = gst_caps_get_structure(GST_BUFFER_CAPS(buffer), 0);
>> codec_data = gst_structure_get_value(struc, "codec_data");
>> if (codec_data) {
>> GstBuffer *tmp;
>> tmp = gst_value_get_buffer(codec_data);
>> printf("Inside codec_data\n");
>> }*/
>>
>>        printf("Inside codec_data\n");
>>
>>
>> }
>>
>> static void init(void)
>> {
>> pipeline = gst_pipeline_new("parse");
>>
>> src = gst_element_factory_make("filesrc", "src");
>> demux = gst_element_factory_make("qtdemux", "demux");
>> sink = gst_element_factory_make("fakesink", "sink");
>>
>> gst_bin_add_many(GST_BIN(pipeline), src, demux, sink, NULL);
>> gst_element_link(src, demux);
>> g_signal_connect(demux, "pad-added", G_CALLBACK(on_pad_added), NULL);
>>
>> GstBus *bus;
>> bus = gst_pipeline_get_bus(GST_PIPELINE(pipeline));
>> gst_bus_add_watch(bus, bus_cb, NULL);
>> gst_object_unref(bus);
>>
>> g_object_set(G_OBJECT(src), "location", filename, NULL);
>>
>> g_object_set(G_OBJECT(sink), "signal-handoffs", TRUE, "num-buffers", 1,
>> NULL);
>> g_signal_connect(sink, "handoff", G_CALLBACK(handoff), NULL);
>>
>> gst_element_set_state(pipeline, GST_STATE_PLAYING);
>> }
>>
>>
>>
>> int main(int argc, char *argv[])
>> {
>> int ret;
>> char *expected;
>> char *expected_crop = NULL;
>>
>> gst_init(&argc, &argv);
>>
>> loop = g_main_loop_new(NULL, FALSE);
>>
>> if (argc < 3)
>> return -1;
>>
>> filename = argv[1];
>> expected = argv[2];
>>
>> if (argc >= 4)
>> expected_crop = argv[3];
>>
>> init();
>>
>> g_main_loop_run(loop);
>>
>> if (result) {
>> g_print("%s %s\n", result, result_crop);
>> } else {
>> if (buffer_count == 0)
>> g_printerr("no data\n");
>> else
>> g_printerr("no result\n");
>> }
>>
>> ret = !!g_strcmp0(expected, result);
>> if (!ret && expected_crop)
>> ret = !!g_strcmp0(expected_crop, result_crop);
>>
>> g_free(result);
>> g_free(result_crop);
>>
>> if (pipeline) {
>> gst_element_set_state(pipeline, GST_STATE_NULL);
>> gst_object_unref(GST_OBJECT(pipeline));
>> }
>>
>>
>> g_main_loop_unref(loop);
>>
>> return -ret;
>> }
>>
>> Regards
>> Mayank
>>
>>
>>
>> On Tue, Apr 7, 2015 at 4:22 PM,
>> <gstreamer-devel-request at lists.freedesktop.org> wrote:
>> > Send gstreamer-devel mailing list submissions to
>> >         gstreamer-devel at lists.freedesktop.org
>> >
>> > To subscribe or unsubscribe via the World Wide Web, visit
>> >         http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> > or, via email, send a message with subject or body 'help' to
>> >         gstreamer-devel-request at lists.freedesktop.org
>> >
>> > You can reach the person managing the list at
>> >         gstreamer-devel-owner at lists.freedesktop.org
>> >
>> > When replying, please edit your Subject line so it is more specific
>> > than "Re: Contents of gstreamer-devel digest..."
>> >
>> >
>> > Today's Topics:
>> >
>> >    1. Custom Bin (Sneha Murganoor)
>> >    2. Re: h264parse has been removed from gstreamer-1.0? (SpicyChicken)
>> >    3. Calculate timestamp in handoff callback (Mayank Agarwal)
>> >    4. Re: starting android development (Sérgio Agostinho)
>> >    5. Re: h264parse has been removed from gstreamer-1.0?
>> >       (Carlos Rafael Giani)
>> >    6. Re: Not able to call handoff callback (Sérgio Agostinho)
>> >
>> >
>> > ----------------------------------------------------------------------
>> >
>> > Message: 1
>> > Date: Tue, 7 Apr 2015 14:21:22 +0530
>> > From: Sneha Murganoor <sneha.nie at gmail.com>
>> > To: gstreamer-devel at lists.freedesktop.org
>> > Subject: Custom Bin
>> > Message-ID:
>> >         <
>> CACP3xLGcZk3uS6WPO587i4DCXBJN2tW-KRZudtved9j2bZZzmA at mail.gmail.com>
>> > Content-Type: text/plain; charset="utf-8"
>> >
>> > Hi all,
>> >
>> > I am new bee to Gstreamer, learning through Gstreamer Application manual
>> > 1.4.5.
>> >
>> > While i compiled the code in
>> >
>> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/section-bin-custom.html
>> > I realized that oggvorbisplayer plugin is missing.
>> >
>> >>>gst-inspect-0.10 oggvorbisplayer
>> > No such element or plugin 'oggvorbisplayer'
>> >
>> >>>gcc custom_bin.c -o custom_bin `pkg-config --cflags --libs
>> gstreamer-0.10`
>> >
>> >
>> >>>./custom_bin
>> >
>> > (custom_bin:7173): GLib-GObject-CRITICAL **: g_object_set: assertion
>> > `G_IS_OBJECT (object)' failed
>> >
>> > 1. How do I fix this??
>> > 2. how to find : Which elements/plugins are placed in gst plugins?
>> >
>> > Thanks,
>> > Sneha
>> > -------------- next part --------------
>> > An HTML attachment was scrubbed...
>> > URL: <
>> http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150407/c1671702/attachment-0001.html
>> >
>> >
>> > ------------------------------
>> >
>> > Message: 2
>> > Date: Tue, 7 Apr 2015 02:03:24 -0700 (PDT)
>> > From: SpicyChicken <xch0929 at 126.com>
>> > To: gstreamer-devel at lists.freedesktop.org
>> > Subject: Re: h264parse has been removed from gstreamer-1.0?
>> > Message-ID: <1428397404820-4671478.post at n4.nabble.com>
>> > Content-Type: text/plain; charset=UTF-8
>> >
>> > Yeah, I see, but actually gst-plugins-bad package are lots of so files.
>> The
>> > element h264parse is built into the library of libgstvideoparsersbad.
>> >
>> >
>> >
>> >
>> >
>> > Carlos Rafael Giani wrote
>> >> It is actually not in the library, but in the gst-plugins-bad package.
>> >>
>> >>
>> >> Am 2015-04-07 um 09:10 schrieb Thornton, Keith:
>> >>> Yes, gst-inspect-1.0 finds it. I am using it for the purpose you also
>> >>> wish to use it for. Have you performed a full install? Can you find
>> >>> libgstvideoparsersbad ?
>> >>>
>> >>> -----Ursprüngliche Nachricht-----
>> >>> Von: gstreamer-devel [mailto:
>> >
>> >> gstreamer-devel-bounces at .freedesktop
>> >
>> >> ] Im Auftrag von SpicyChicken
>> >>> Gesendet: Dienstag, 7. April 2015 08:43
>> >>> An:
>> >
>> >> gstreamer-devel at .freedesktop
>> >
>> >>> Betreff: Re: AW: h264parse has been removed from gstreamer-1.0?
>> >>>
>> >>> Can you find it with gst-inspect-1.0? I can not.
>> >>>
>> >>> Thanks,
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> View this message in context:
>> >>>
>> http://gstreamer-devel.966125.n4.nabble.com/h264parse-has-been-removed-from-gstreamer-1-0-tp4671468p4671470.html
>> >>> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> >>> _______________________________________________
>> >>> gstreamer-devel mailing list
>> >>>
>> >
>> >> gstreamer-devel at .freedesktop
>> >
>> >>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>> _______________________________________________
>> >>> gstreamer-devel mailing list
>> >>>
>> >
>> >> gstreamer-devel at .freedesktop
>> >
>> >>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >
>> >> gstreamer-devel at .freedesktop
>> >
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> >
>> >
>> >
>> > --
>> > View this message in context:
>> http://gstreamer-devel.966125.n4.nabble.com/h264parse-has-been-removed-from-gstreamer-1-0-tp4671468p4671478.html
>> > Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> >
>> >
>> > ------------------------------
>> >
>> > Message: 3
>> > Date: Tue, 7 Apr 2015 15:46:19 +0530
>> > From: Mayank Agarwal <mayank77fromindia at gmail.com>
>> > To: gstreamer-devel at lists.freedesktop.org
>> > Subject: Calculate timestamp in handoff callback
>> > Message-ID:
>> >         <
>> CAKjpqyLwDhWBjZimFh23OD65J5NR7qPah1k5FNzSBQkwwxfmEQ at mail.gmail.com>
>> > Content-Type: text/plain; charset=UTF-8
>> >
>> > Hi,
>> >
>> > I am implementing handoff cb in the following way,but i am getting
>> timestamp
>> > as 0.Duration i am getting right.Please find below the code:
>> >
>> > GstStructure *struc;
>> > const GValue *codec_data;
>> > bool r;
>> > int bufsamplesize = 0;
>> > GstClockTime timestamp;
>> >         int framerate = 0;
>> > int duration = 0;
>> >
>> > buffer_count++;
>> >
>> >
>> >         if(GST_BUFFER_TIMESTAMP_IS_VALID(buffer))
>> >         g_printf("DTS buffer is valid\n");
>> >
>> >         if(GST_BUFFER_DURATION_IS_VALID(buffer))
>> >         g_printf("DTS buffer is valid\n");
>> >
>> >         bufsamplesize = GST_BUFFER_SIZE(buffer);
>> >         g_printf("Buffer sample size = %d\n",bufsamplesize);
>> >
>> >
>> >         timestamp = GST_BUFFER_TIMESTAMP(buffer);
>> >         g_print ("Timestamp calculated = : %" GST_TIME_FORMAT "\n",
>> >       GST_TIME_ARGS (timestamp));
>> >         duration = GST_BUFFER_DURATION(buffer);
>> >         g_printf("Duration = %d\n",duration);
>> >
>> > framerate = 1000000*1/timestamp;
>> >         g_print ("Framerate calculated = : %" GST_TIME_FORMAT "\n",
>> >       GST_TIME_ARGS (framerate));
>> >
>> >
>> > /*struc = gst_caps_get_structure(GST_BUFFER_CAPS(buffer), 0);
>> > codec_data = gst_structure_get_value(struc, "codec_data");
>> > if (codec_data) {
>> > GstBuffer *tmp;
>> > tmp = gst_value_get_buffer(codec_data);
>> > printf("Inside codec_data\n");
>> > }*/
>> >
>> >
>> >
>> > How to correctly calculate the timestamp from buffer,and how to deduce
>> > the frame rate from
>> > that.What other video quality parameters gstreamer support and how can
>> > i retrieve it.
>> >
>> >
>> > Regards
>> > Mayank
>> >
>> >
>> > ------------------------------
>> >
>> > Message: 4
>> > Date: Tue, 7 Apr 2015 12:40:15 +0200
>> > From: Sérgio Agostinho <sergio.r.agostinho at gmail.com>
>> > To: Discussion of the development of and with GStreamer
>> >         <gstreamer-devel at lists.freedesktop.org>
>> > Subject: Re: starting android development
>> > Message-ID:
>> >         <
>> CALUX5R0Ax3L5rO9ZoNZteB6Dqp3Cpznq9yMqTPzg_+dx1fkkgA at mail.gmail.com>
>> > Content-Type: text/plain; charset="utf-8"
>> >
>> > Hi Leonardo,
>> >
>> > So I downloaded your code, created a new project and imported your 'app'
>> > module into it. Then I noticed your Android.mk had these lines
>> >
>> > ifndef GSTREAMER_SDK_ROOT
>> > ifndef GSTREAMER_SDK_ROOT_ANDROID
>> > $(error GSTREAMER_SDK_ROOT_ANDROID is not defined!)
>> > endif
>> > GSTREAMER_SDK_ROOT        := $(GSTREAMER_SDK_ROOT_ANDROID)
>> > endif
>> > GSTREAMER_NDK_BUILD_PATH  :=
>> > $(GSTREAMER_SDK_ROOT)/share/gst-android/ndk-build
>> >
>> > which is strange since the env that 1.4.5 uses is
>> >
>> > GSTREAMER_ROOT
>> >
>> > So I set the env, added
>> >
>> > import org.freedesktop.gstreamer.GStreamer;
>> >
>> > into your main activity and voilá, the file got copied into the right
>> place
>> > and no more complains about the missing Gstreamer class. Then I noticed
>> you
>> > had the following file and folder structure (from a previous build I
>> guess)
>> >
>> > src/main/src/*com/gstreamer/Gstreamer.java*
>> >
>> > My preliminary conclusion is that you are not using 1.4.5 and you're
>> using
>> > the android binaries from gstreamer.com.
>> >
>> > Cheers,
>> > Sérgio
>> >
>> > 2015-04-03 22:45 GMT+02:00 Forzaferrarileo <leonardo.ferroro at gmail.com
>> >:
>> >
>> >> i tried to add GSTREAMER_JAVA_SRC_DIR := java  , but the result is the
>> >> same..
>> >> I can't figure out the problem ( in eclipse everything works fine )
>> >>
>> >> I uploaded the whole code here :
>> >> https://bitbucket.org/Forzaferrarileo/gstreamer-androidstudio
>> >> could you please watch it ?
>> >>
>> >>
>> >> Thank you
>> >> Leonardo
>> >>
>> >>
>> >>
>> >> --
>> >> View this message in context:
>> >>
>> http://gstreamer-devel.966125.n4.nabble.com/starting-android-development-tp4671223p4671448.html
>> >> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >> gstreamer-devel at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>
>> > -------------- next part --------------
>> > An HTML attachment was scrubbed...
>> > URL: <
>> http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150407/d8e96a28/attachment-0001.html
>> >
>> >
>> > ------------------------------
>> >
>> > Message: 5
>> > Date: Tue, 07 Apr 2015 12:49:05 +0200
>> > From: Carlos Rafael Giani <dv at pseudoterminal.org>
>> > To: gstreamer-devel at lists.freedesktop.org
>> > Subject: Re: h264parse has been removed from gstreamer-1.0?
>> > Message-ID: <5523B621.5000106 at pseudoterminal.org>
>> > Content-Type: text/plain; charset=utf-8; format=flowed
>> >
>> > It sounds like you are using the names of Ubuntu/Debian packages. This
>> > might explain the confusion. I was referring to the upstream packages.
>> > Here's h264parse:
>> >
>> http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst/videoparsers
>> >
>> > and it uses functions from:
>> >
>> >
>> http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst-libs/gst/codecparsers
>> >
>> > On 04/07/2015 11:03 AM, SpicyChicken wrote:
>> >> Yeah, I see, but actually gst-plugins-bad package are lots of so
>> files. The
>> >> element h264parse is built into the library of libgstvideoparsersbad.
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> Carlos Rafael Giani wrote
>> >>> It is actually not in the library, but in the gst-plugins-bad package.
>> >>>
>> >>>
>> >>> Am 2015-04-07 um 09:10 schrieb Thornton, Keith:
>> >>>> Yes, gst-inspect-1.0 finds it. I am using it for the purpose you also
>> >>>> wish to use it for. Have you performed a full install? Can you find
>> >>>> libgstvideoparsersbad ?
>> >>>>
>> >>>> -----Ursprüngliche Nachricht-----
>> >>>> Von: gstreamer-devel [mailto:
>> >>> gstreamer-devel-bounces at .freedesktop
>> >>> ] Im Auftrag von SpicyChicken
>> >>>> Gesendet: Dienstag, 7. April 2015 08:43
>> >>>> An:
>> >>> gstreamer-devel at .freedesktop
>> >>>> Betreff: Re: AW: h264parse has been removed from gstreamer-1.0?
>> >>>>
>> >>>> Can you find it with gst-inspect-1.0? I can not.
>> >>>>
>> >>>> Thanks,
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> View this message in context:
>> >>>>
>> http://gstreamer-devel.966125.n4.nabble.com/h264parse-has-been-removed-from-gstreamer-1-0-tp4671468p4671470.html
>> >>>> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> >>>> _______________________________________________
>> >>>> gstreamer-devel mailing list
>> >>>>
>> >>> gstreamer-devel at .freedesktop
>> >>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>>> _______________________________________________
>> >>>> gstreamer-devel mailing list
>> >>>>
>> >>> gstreamer-devel at .freedesktop
>> >>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>> _______________________________________________
>> >>> gstreamer-devel mailing list
>> >>> gstreamer-devel at .freedesktop
>> >>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> View this message in context:
>> http://gstreamer-devel.966125.n4.nabble.com/h264parse-has-been-removed-from-gstreamer-1-0-tp4671468p4671478.html
>> >> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >> gstreamer-devel at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> >
>> > ------------------------------
>> >
>> > Message: 6
>> > Date: Tue, 7 Apr 2015 12:51:50 +0200
>> > From: Sérgio Agostinho <sergio.r.agostinho at gmail.com>
>> > To: Discussion of the development of and with GStreamer
>> >         <gstreamer-devel at lists.freedesktop.org>
>> > Subject: Re: Not able to call handoff callback
>> > Message-ID:
>> >         <CALUX5R3So7TBHwDdSZFCdMEjD9Ky7oLtp2i1d+vrJyb=
>> tdzkqw at mail.gmail.com>
>> > Content-Type: text/plain; charset="utf-8"
>> >
>> > Hey,
>> >
>> > 1 - You are not creating any identity element in your pipeline.
>> > 2 - You're trying to set the handoff cb on your autovideosink, not on
>> your
>> > (yet to be created) identity element.
>> >
>> > Cheers
>> >
>> > 2015-04-07 8:50 GMT+02:00 Mayank Agarwal <mayank77fromindia at gmail.com>:
>> >
>> >> Hi,
>> >>
>> >> I have modified basic tutorial two to include identity element but
>> >> i am not able to get the callback called.
>> >>
>> >> Here is the example
>> >>
>> >> #include <gst/gst.h>
>> >>
>> >> static void
>> >> handoff(GstElement *object,
>> >> GstBuffer *arg0,
>> >> GstPad *arg1,
>> >> gpointer user_data)
>> >> {
>> >>
>> >> printf("comes here");
>> >>
>> >> }
>> >>
>> >>
>> >>
>> >>
>> >> int main(int argc, char *argv[]) {
>> >>   GstElement *pipeline, *source, *sink;
>> >>   GstBus *bus;
>> >>   GstMessage *msg;
>> >>   GstStateChangeReturn ret;
>> >>   GstElement *identity;
>> >>
>> >>   /* Initialize GStreamer */
>> >>   gst_init (&argc, &argv);
>> >>
>> >>   /* Create the elements */
>> >>   source = gst_element_factory_make ("videotestsrc", "source");
>> >>
>> >>   sink = gst_element_factory_make ("autovideosink", "sink");
>> >>
>> >>   /* Create the empty pipeline */
>> >>   pipeline = gst_pipeline_new ("test-pipeline");
>> >>
>> >>   if (!pipeline || !source || !sink) {
>> >>     g_printerr ("Not all elements could be created.\n");
>> >>     return -1;
>> >>   }
>> >>
>> >>   /* Build the pipeline */
>> >>   gst_bin_add_many (GST_BIN (pipeline), source, sink, NULL);
>> >>   if (gst_element_link (source, sink) != TRUE) {
>> >>     g_printerr ("Elements could not be linked.\n");
>> >>     gst_object_unref (pipeline);
>> >>     return -1;
>> >>   }
>> >>
>> >>   /* Modify the source's properties */
>> >>   g_object_set (source, "pattern", 0, NULL);
>> >>   g_object_set(G_OBJECT(sink), "signal-handoffs", TRUE, NULL);
>> >>   g_signal_connect(sink, "handoff",G_CALLBACK(handoff), NULL);
>> >>
>> >>   /* Start playing */
>> >>   ret = gst_element_set_state (pipeline, GST_STATE_PLAYING);
>> >>   if (ret == GST_STATE_CHANGE_FAILURE) {
>> >>     g_printerr ("Unable to set the pipeline to the playing state.\n");
>> >>     gst_object_unref (pipeline);
>> >>     return -1;
>> >>   }
>> >>
>> >>   /* Wait until error or EOS */
>> >>   bus = gst_element_get_bus (pipeline);
>> >>   msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE,
>> >> GST_MESSAGE_ERROR | GST_MESSAGE_EOS);
>> >>
>> >>   /* Parse message */
>> >>   if (msg != NULL) {
>> >>     GError *err;
>> >>     gchar *debug_info;
>> >>
>> >>     switch (GST_MESSAGE_TYPE (msg)) {
>> >>       case GST_MESSAGE_ERROR:
>> >>         gst_message_parse_error (msg, &err, &debug_info);
>> >>         g_printerr ("Error received from element %s: %s\n",
>> >> GST_OBJECT_NAME (msg->src), err->message);
>> >>         g_printerr ("Debugging information: %s\n", debug_info ?
>> >> debug_info : "none");
>> >>         g_clear_error (&err);
>> >>         g_free (debug_info);
>> >>         break;
>> >>       case GST_MESSAGE_EOS:
>> >>         g_print ("End-Of-Stream reached.\n");
>> >>         break;
>> >>       default:
>> >>         /* We should not reach here because we only asked for ERRORs
>> and
>> >> EOS */
>> >>         g_printerr ("Unexpected message received.\n");
>> >>         break;
>> >>     }
>> >>     gst_message_unref (msg);
>> >>   }
>> >>
>> >>   /* Free resources */
>> >>   gst_object_unref (bus);
>> >>   gst_element_set_state (pipeline, GST_STATE_NULL);
>> >>   gst_object_unref (pipeline);
>> >>   return 0;
>> >> }
>> >>
>> >>
>> >> and the errors i am getting are:
>> >>
>> >> (btutorialtwo:3807): GLib-GObject-WARNING **: g_object_set_valist:
>> >> object class 'GstAutoVideoSink' has no property named
>> >> 'signal-handoffs'
>> >>
>> >> (btutorialtwo:3807): GLib-GObject-WARNING **:
>> >> /build/buildd/glib2.0-2.40.2/./gobject/gsignal.c:2462: signal
>> >> 'handoff' is invalid for instance '0x9950018' of type
>> >> 'GstAutoVideoSink'
>> >>
>> >> although videotestsrc is playing fine.
>> >>
>> >> If this is not the correct way of using identity element any
>> >> example/links of using identity element using which
>> >> i can be able to calculate video frame rate.
>> >>
>> >>
>> >> Regards
>> >> Mayank
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >> gstreamer-devel at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >>
>> > -------------- next part --------------
>> > An HTML attachment was scrubbed...
>> > URL: <
>> http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150407/4ecc8381/attachment.html
>> >
>> >
>> > ------------------------------
>> >
>> > Subject: Digest Footer
>> >
>> > _______________________________________________
>> > gstreamer-devel mailing list
>> > gstreamer-devel at lists.freedesktop.org
>> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> > ------------------------------
>> >
>> > End of gstreamer-devel Digest, Vol 51, Issue 15
>> > ***********************************************
>>
>>
>> ------------------------------
>>
>> Subject: Digest Footer
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>> ------------------------------
>>
>> End of gstreamer-devel Digest, Vol 51, Issue 16
>> ***********************************************
>>
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>


-- 
___________________________________________________
Name
*Chuck Crisler*

Mutualink, Inc.
3 Lan Dr.
Westford, MA  01886

Direct: (978) 490-3006 <%28866%29%20957-5465> Ext: 118

E-Mail: ccrisler at mutualink.net <employeer at mutualink.net>

Web: www.mutualink.net


The information in this email, and subsequent attachments, may contain
confidential information that is
intended solely for the attention and use of the named addressee(s). This
message or any part thereof
must not be disclosed, copied, distributed or retained by any person
without authorization from the addressee.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150408/c1f6ad1b/attachment-0001.html>


More information about the gstreamer-devel mailing list