| GStreamer Base Plugins 1.0 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
#include <gst/allocators/gstfdmemory.h> enum GstFdMemoryFlags; GstMemory * gst_fd_allocator_alloc (GstAllocator *allocator,gint fd,gsize size,GstFdMemoryFlags flags); GType gst_fd_allocator_get_type (void); GstAllocator * gst_fd_allocator_new (void); gint gst_fd_memory_get_fd (GstMemory *mem); gboolean gst_is_fd_memory (GstMemory *mem);
typedef enum {
GST_FD_MEMORY_FLAG_NONE = 0,
GST_FD_MEMORY_FLAG_KEEP_MAPPED = (1 << 0),
GST_FD_MEMORY_FLAG_MAP_PRIVATE = (1 << 1),
GST_FD_MEMORY_FLAG_DONT_CLOSE = (1 << 2),
} GstFdMemoryFlags;
Various flags to control the operation of the fd backed memory.
| no flag | |
| once the memory is mapped, keep it mapped until the memory is destroyed. | |
| do a private mapping instead of the default shared mapping. | |
| don't close the file descriptor when the memory is freed. Since: 1.10. |
Since 1.6
GstMemory * gst_fd_allocator_alloc (GstAllocator *allocator,gint fd,gsize size,GstFdMemoryFlags flags);
Return a GstMemory that wraps a generic file descriptor.
|
allocator to be used for this memory |
|
file descriptor |
|
memory size |
|
extra GstFdMemoryFlags |
Returns : |
a GstMemory based on allocator.
When the buffer will be released the allocator will close the fd unless
the GST_FD_MEMORY_FLAG_DONT_CLOSE flag is specified.
The memory is only mmapped on gst_buffer_mmap() request. [transfer full]
|
Since 1.6
GstAllocator * gst_fd_allocator_new (void);
Return a new fd allocator.
Returns : |
a new fd allocator, or NULL if the allocator
isn't available. Use gst_object_unref() to release the allocator after
usage. [transfer full]
|
Since 1.6
gint gst_fd_memory_get_fd (GstMemory *mem);
Get the fd from mem. Call gst_is_fd_memory() to check if mem has
an fd.
|
GstMemory |
Returns : |
the fd of mem or -1 when there is no fd on mem
|
Since 1.6
gboolean gst_is_fd_memory (GstMemory *mem);
Check if mem is memory backed by an fd
|
GstMemory |
Returns : |
TRUE when mem has an fd that can be retrieved with
gst_fd_memory_get_fd(). |
Since 1.6