Skip to content
  • Jan Schmidt's avatar
    Do some optimisation work in GstAdapter to avoid copies in more cases. · 6f363cd8
    Jan Schmidt authored
    Original commit message from CVS:
    * Makefile.am:
    * configure.ac:
    * libs/gst/base/gstadapter.c: (gst_adapter_clear),
    (gst_adapter_push), (gst_adapter_peek_into), (gst_adapter_peek),
    (gst_adapter_flush), (gst_adapter_take), (gst_adapter_take_buffer):
    * libs/gst/base/gstadapter.h:
    * tests/check/libs/adapter.c: (create_and_fill_adapter),
    (GST_START_TEST), (gst_adapter_suite):
    * tests/examples/Makefile.am:
    Do some optimisation work in GstAdapter to avoid copies in more cases.
    It could still do slightly better by merging buffers when
    gst_buffer_is_span_fast is true, but is already faster.
    Also, avoid traversing a single-linked list to append each incoming
    buffer inside the adapter.
    Add simple test app that times the adapter behaviour in different
    situations, and extend the unit test to check that bytes enter and
    exit the adapter in their original order.
    6f363cd8