<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi Sebastian,<br>
<br>
thanks for this tip, it works like a charm. I wouldn't have figured
out that I can use GstMeta for this.<br>
<br>
One note for others who might try to do something similar: Depending
on the pipeline one has to lower the refcount of the destination
buffer to 1 within the meta transformation function. Otherwise the
buffer cannot be mapped writable and thus the GstMeta fails to be
attached to the buffer. This seems to be an ok workaround though.<br>
<br>
Cheers<br>
Benjamin<br>
<br>
<div class="moz-cite-prefix">On 07.11.2016 01:36, Sebastian Dröge
wrote:<br>
</div>
<blockquote cite="mid:1478511382.2285.150.camel@centricular.com"
type="cite">
<pre wrap="">On Sun, 2016-11-06 at 02:35 +0100, <a class="moz-txt-link-abbreviated" href="mailto:benjamin.hepp@posteo.de">benjamin.hepp@posteo.de</a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Hi everyone,
I'm new to gstreamer (it's great!) so I very much appreciate any help.
I basically have the following setup:
Custom video-source -> appsrc -> encoding -> appsink -> send over
network together with other information that corresponds to each frame
(e.g. GPS).
On the server I receive buffer and associated information -> appsrc ->
decoding -> appsink.
Now in both cases I push a buffer into an appsrc that has some
associated information. Is there any way to link this information again
to a buffer coming out of the appsink?
I now that theoretically there is no guarantee that one buffer out of
the appsink is one frame, but in my case it is. So on the client side I
can just assume that no frame is ever dropped (assuming I never hit any
buffer limit).
However, on the receiving side the decoder sometimes needs to drop some
frame until it can start decoding and I don't know how many it drops. So
I'm in the situation that I cannot link the information to the buffers
coming out of the appsink.
Unfortunately I can't use the buffer offset or PTS information because
this is just reset by the encoder/decoder.
Is there any other way to establish these correspondences?
</pre>
</blockquote>
<pre wrap="">
You could mark buffers with a GstMeta (make sure to use new enough
GStreamer, and a GstMeta that has no tags) or use serialized events
between each buffer as markers (not very efficient).
</pre>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
gstreamer-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
</blockquote>
<br>
</body>
</html>