Skip to content

Instantly share code, notes, and snippets.

@yashi
Created December 28, 2016 07:49
Show Gist options
  • Save yashi/ff7ef477963f78c3f967361d53aa84a1 to your computer and use it in GitHub Desktop.
Save yashi/ff7ef477963f78c3f967361d53aa84a1 to your computer and use it in GitHub Desktop.
GstAdapter example 1
#include <gst/base/gstadapter.h>
int main(int argc, char *argv[])
{
GstAdapter *a;
GstBuffer *b;
gst_init(&argc, &argv);
a = gst_adapter_new();
b = gst_buffer_new_allocate(NULL, 10, NULL);
gst_adapter_push(a, b);
b = gst_buffer_new_allocate(NULL, 5, NULL);
gst_adapter_push(a, b);
g_print("size: %" G_GSIZE_FORMAT "\n", gst_adapter_available(a));
b = gst_adapter_take_buffer(a, 2);
g_print("size: %" G_GSIZE_FORMAT ", buffer: %" G_GSIZE_FORMAT "\n",
gst_adapter_available(a),
gst_buffer_get_size(b));
gst_adapter_flush(a, 3);
g_print("size: %" G_GSIZE_FORMAT "\n", gst_adapter_available(a));
gst_adapter_clear(a);
g_print("size: %" G_GSIZE_FORMAT "\n", gst_adapter_available(a));
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment