From: Wim Taymans Date: Sat, 27 Apr 2013 18:33:06 +0000 (+0200) Subject: pwg: improve allocation docs X-Git-Tag: 1.1.1~78 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=25fc832d49f14ee63742b83e63d1e81109ba2d59;p=platform%2Fupstream%2Fgstreamer.git pwg: improve allocation docs --- diff --git a/docs/pwg/advanced-allocation.xml b/docs/pwg/advanced-allocation.xml index 625e76e..aedf10a 100644 --- a/docs/pwg/advanced-allocation.xml +++ b/docs/pwg/advanced-allocation.xml @@ -41,12 +41,22 @@ never be changed after the object is created, however, the offset and size can be changed. - - GstMemory objects are created by a - GstAllocator object. To implement support - for a new kind of memory type, you must implement a new allocator - object. - + + GstAllocator + + GstMemory objects are created by a + GstAllocator object. Most allocators implement the + default gst_allocator_alloc() method but some allocator + might implement a different method, for example when additional parameters + are needed to allocate the specific memory. + + + Different allocators exist for, for example, system memory, shared memory + and memory backed by a DMAbuf file descriptor. To implement support for a + new kind of memory type, you must implement a new allocator object as shown + below. + + GstMemory API example @@ -88,7 +98,7 @@ - + Implementing a GstAllocator WRITEME @@ -209,15 +219,10 @@ GstMeta With the GstMeta system you can add arbitrary - structures of on buffers. These structures describe extra properties + structures on buffers. These structures describe extra properties of the buffer such as cropping, stride, region of interest etc. - Metadata is also used to store, for example, the X image that is - backing up the memory of the buffer. This makes it easier for elements - to locate the X image from the buffer. - - The metadata system separates API specification (what the metadata and its API look like) and the implementation (how it works). This makes it possible to make different implementations of the same API,