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