<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hi *,<br>
<br>
I posted on stack overflow before, but I realized, this might be the
better channel for this question.<br>
<br>
I am trying to get data from a GstSample to process it in my app
sink.
But I cannot find a way to extract the data from a sample.
I have set the callball function "new-sample":<br>
<br>
<pre style="" class="lang-cpp prettyprint prettyprinted"><code><span class="kwd">static</span><span class="pln"> </span><span class="kwd">void</span><span class="pln"> </span><span class="typ">GStPipeline</span><span class="pun">::</span><span class="pln">new_sample </span><span class="pun">(</span><span class="typ">GstAppSink</span><span class="pln"> </span><span class="pun">*</span><span class="pln">sink</span><span class="pun">,</span><span class="pln"> </span><span class="typ">CustomData</span><span class="pln"> </span><span class="pun">*</span><span class="pln">data</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
</span><span class="typ">GstSample</span><span class="pun">*</span><span class="pln"> sample</span><span class="pun">;</span><span class="pln">
sample </span><span class="pun">=</span><span class="pln"> gst_app_sink_pull_sample</span><span class="pun">(</span><span class="pln">data</span><span class="pun">-></span><span class="pln">app_sink</span><span class="pun">);</span><span class="pln">
</span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">sample</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
data</span><span class="pun">-></span><span class="pln">sampleBuffer</span><span class="pun">[</span><span class="pln">data</span><span class="pun">-></span><span class="pln">num_samples</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> sample</span><span class="pun">;</span><span class="pln">
data</span><span class="pun">-></span><span class="pln">num_samples</span><span class="pun">++;</span><span class="pln">
gst_sample_unref</span><span class="pun">(</span><span class="pln">sample</span><span class="pun">);</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
gst_sample_unref</span><span class="pun">(</span><span class="pln">sample</span><span class="pun">);</span><span class="pln">
</span><span class="pun">}</span></code></pre>
<br>
Am I missing some basic concept? Is it true, that since
gstreamer-1.0 I have to provide a callback "new-sample" instead of
"pull-buffer" ? For my understanding, a buffer contains the samples?
<br>
<br>
BR,<br>
Ck<br>
</body>
</html>