GstFdAllocator

GstFdAllocator — Memory wrapper for fd backed memory

Functions

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstAllocator
                ╰── GstFdAllocator
                    ╰── GstDmaBufAllocator

Includes

#include <gst/allocators/allocators.h>

Description

Functions

gst_fd_allocator_alloc ()

GstMemory *
gst_fd_allocator_alloc (GstAllocator *allocator,
                        gint fd,
                        gsize size,
                        GstFdMemoryFlags flags);

Return a GstMemory that wraps a generic file descriptor.

Parameters

allocator

allocator to be used for this memory

 

fd

file descriptor

 

size

memory size

 

flags

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_map() request.

[transfer full]

Since: 1.6


gst_fd_allocator_new ()

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


gst_fd_memory_get_fd ()

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.

Parameters

mem

GstMemory

 

Returns

the fd of mem or -1 when there is no fd on mem

Since: 1.6


gst_is_fd_memory ()

gboolean
gst_is_fd_memory (GstMemory *mem);

Check if mem is memory backed by an fd

Parameters

mem

GstMemory

 

Returns

TRUE when mem has an fd that can be retrieved with gst_fd_memory_get_fd().

Since: 1.6

Types and Values

enum GstFdMemoryFlags

Various flags to control the operation of the fd backed memory.

Members

GST_FD_MEMORY_FLAG_NONE

no flag

 

GST_FD_MEMORY_FLAG_KEEP_MAPPED

once the memory is mapped, keep it mapped until the memory is destroyed.

 

GST_FD_MEMORY_FLAG_MAP_PRIVATE

do a private mapping instead of the default shared mapping.

 

GST_FD_MEMORY_FLAG_DONT_CLOSE

don't close the file descriptor when the memory is freed. Since: 1.10

 

Since: 1.6

See Also

GstMemory