<div dir="ltr">Ok, thanks for the clarification. I've just been reading up on appsrc, but I can't find any reference to a "push-sample"...every documentation source I can find (appsrc plugin docs, appsrc docs in base plugins library reference, and tutorials at <a href="http://gstreamer.com">gstreamer.com</a>) say "push-buffer", and push sample gives me "unknown signal name: push-sample". Is this a mistake or am I missing something?</div>

<div class="gmail_extra"><br><br><div class="gmail_quote">On 19 December 2012 13:01, Tim-Philipp Müller <span dir="ltr"><<a href="mailto:t.i.m@zen.co.uk" target="_blank">t.i.m@zen.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im">On Wed, 2012-12-19 at 12:46 +0000, Nox Deleo wrote:<br>
<br>
Hi,<br>
<br>
</div><div class="im">> Thanks for the reply. I got the gist of the bug report, but am a<br>
> little confused on finer details. Is it saying that for now (without<br>
> any patches), I would be able to get a copy of the byte array from<br>
> mapinfo to work with in Python? I only need to read the data, after<br>
> which I'll store it elsewhere (GstDiscoverer info -> MongoDB and<br>
> GridFS for the cover art if I can get it). If so, are there any<br>
> reasons not to (like ending up with alot of these just sat in memory)?<br>
<br>
</div>No, there is no easy way to get to the data at all at the moment, copy<br>
or not.<br>
<br>
I'll add a function for that.<br>
<div class="im"><br>
>  I already tried the serialize to string approach (ugh is right, but I<br>
> was desperate), but it ended up causing segfaults down the line when<br>
> pushed into GObject attributes on Clutter/Mx components. I stopped<br>
> there with that approach since it was horrible anyway. As for the<br>
> appsrc, I was doing an emit('push-buffer', buffer) on it, since I<br>
> wasn't even aware of the other approach. If I end up having to use<br>
> that, I'll have a read up on using appsrc first since the segfault is<br>
> probably my fault anyway. I think Ubuntu 12.10 is still sat on<br>
> GStreamer 1.0.1, so I probably need to use the GStreamer PPA or stop<br>
> being lazy and compile the source :).<br>
<br>
</div>Note that in 1.x it's push_sample / push-sample, you have to create a<br>
GstSample with the buffer, you can't just push the buffer directly.<br>
<br>
Cheers<br>
<span class="HOEnZb"><font color="#888888"> -Tim<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
> Thanks again.<br>
><br>
><br>
> On 18 December 2012 23:15, Tim-Philipp Müller <<a href="mailto:t.i.m@zen.co.uk">t.i.m@zen.co.uk</a>> wrote:<br>
>         On Tue, 2012-12-18 at 18:53 +0000, Nox Deleo wrote:<br>
><br>
>         Hi,<br>
><br>
>         > I'm trying to pull the image tag data from an audio file. I<br>
>         can pull a<br>
>         > GstSample from the TagList, and a GstBuffer from that, but I<br>
>         don't<br>
>         > know how to get the data out of that into something I can<br>
>         use in<br>
>         > Python. I found an example (in the comments)<br>
>         > here:<br>
>         <a href="http://www.jezra.net/blog/use_python_and_gstreamer_to_get_the_tags_of_an_audio_file" target="_blank">http://www.jezra.net/blog/use_python_and_gstreamer_to_get_the_tags_of_an_audio_file</a>, but I'm guessing it's for an older version of GStreamer since GstBuffer doesn't seem to have a 'data' attribute in GStreamer 1.0.<br>


><br>
><br>
>         Yes, that's currently a bit of a problem, due to some missing<br>
>         bits in<br>
>         gobject-introspection, which doesn't allow bindings to access<br>
>         byte<br>
>         arrays in structures (you would get at the data in C by<br>
>         'mapping' the<br>
>         buffer and then accessing mapinfo.data and mapinfo.size). See<br>
><br>
>         <a href="https://bugzilla.gnome.org/show_bug.cgi?id=678663" target="_blank">https://bugzilla.gnome.org/show_bug.cgi?id=678663</a><br>
><br>
>         for the whole story.<br>
><br>
>         It looks like we'll have to add a utility function to get the<br>
>         data from<br>
>         bindings until this is fixed on the g-i/bindings side. Someone<br>
>         remind me<br>
>         if I forget.<br>
><br>
>         I don't know if there's a clever way to get at the data some<br>
>         other way,<br>
>         other than what you're trying to do, or serialising it to a<br>
>         strings and<br>
>         parsing the hex values. (ugh)<br>
><br>
><br>
>         > I tried briefly to push the buffer into an<br>
>         appsrc->encoder->filesink<br>
>         > pipeline, but this segfaulted on me (I haven't read up on<br>
>         using<br>
>         > appsrc, so that's no surprise, but I'm hoping there's an<br>
>         easier way of<br>
><br>
>         > doing this).<br>
><br>
>         Sounds like you might be running into an annotation/bindings<br>
>         bug we've<br>
>         just fixed in the 1.0.4 release that's just come out (should<br>
>         hopefully<br>
>         land in your distro soon). A workaround for that was to not<br>
>         use the<br>
>         explicit push_sample API on appsrc, but pass the sample with<br>
>         the buffer<br>
>         using the signal_emit_by_name API (not sure about exact py-gi<br>
>         syntax).<br>
><br>
>         Cheers<br>
>          -Tim<br>
><br>
><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>
><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>
<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>
</div></div></blockquote></div><br></div>