upipe/ubuf_pic_mem.h header reference

Upipe ubuf manager for picture formats with umem storage More

Header inclusion  

Members  

Type  

Functions  

  • int ubuf_pic_mem_get_shared(struct ubuf *ubuf, const char *chroma, struct ubuf_mem_shared **shared_p, size_t *offset_p, size_t *size_p)
  • int ubuf_pic_mem_mgr_add_plane(struct ubuf_mgr *mgr, const char *chroma, uint8_t hsub, uint8_t vsub, uint8_t macropixel_size)
  • struct ubuf_mgr * ubuf_pic_mem_mgr_alloc(uint16_t ubuf_pool_depth, uint16_t shared_pool_depth, struct umem_mgr *umem_mgr, uint8_t macropixel, int hprepend, int happend, int vprepend, int vappend, int align, int align_hmoffset)
  • struct ubuf_mgr * ubuf_pic_mem_mgr_alloc_fourcc(uint16_t ubuf_pool_depth, uint16_t shared_pool_depth, struct umem_mgr *umem_mgr, const char *fcc, int hmprepend, int hmappend, int vprepend, int vappend, int align, int align_hmoffset)

Macro  

Description  

Upipe ubuf manager for picture formats with umem storage

Members detail  

#define UBUF_PIC_MEM_SIGNATURE  

This macro is declared in upipe/ubuf_pic_mem.h source file, line 45.

This macro is a simple signature to make sure the ubuf_control internal API is used properly.

#define _UPIPE_UBUF_PIC_MEM_H_  

This macro is declared in upipe/ubuf_pic_mem.h source file, line 31.

enum ubuf_pic_mem_command  

This enum is declared in upipe/ubuf_pic_mem.h source file, line 54.

This enum extends ubuf_command with specific commands for pic mem manager.

IdentifierValueDescription
UBUF_PIC_MEM_SENTINELUBUF_CONTROL_LOCAL
UBUF_PIC_MEM_GET_SHAREDunknownreturns the shared substructure (const char *, struct ubuf_mem_shared **, size_t *, size_t *)

int ubuf_pic_mem_get_shared(struct ubuf *ubuf, const char *chroma, struct ubuf_mem_shared **shared_p, size_t *offset_p, size_t *size_p)  

This function is declared in upipe/ubuf_pic_mem.h source file, line 75.

This function returns the underlying shared buffer. The reference counter is not incremented.

Parameter list:

  • ubuf: pointer to ubuf
  • chroma: chroma type (see chroma reference)
  • shared_p: filled in with a pointer to the underlying shared buffer
  • offset_p: filled in with the offset in the shared buffer for the plane
  • size_p: filled in with the size of the plane

The return value is an error code

int ubuf_pic_mem_mgr_add_plane(struct ubuf_mgr *mgr, const char *chroma, uint8_t hsub, uint8_t vsub, uint8_t macropixel_size)  

This function is declared in upipe/ubuf_pic_mem.h source file, line 123.

This function adds a new plane to a ubuf manager for picture formats using umem. It may only be called on initializing the manager, before any ubuf is allocated.

Parameter list:

  • mgr: pointer to a ubuf_mgr structure
  • chroma: chroma type (see chroma reference)
  • hsub: horizontal subsamping
  • vsub: vertical subsamping
  • macropixel_size: size of a macropixel in octets

The return value is an error code

struct ubuf_mgr * ubuf_pic_mem_mgr_alloc(uint16_t ubuf_pool_depth, uint16_t shared_pool_depth, struct umem_mgr *umem_mgr, uint8_t macropixel, int hprepend, int happend, int vprepend, int vappend, int align, int align_hmoffset)  

This function is declared in upipe/ubuf_pic_mem.h source file, line 108.

This function allocates a new instance of the ubuf manager for picture formats using umem.

Parameter list:

  • ubuf_pool_depth: maximum number of ubuf structures in the pool
  • shared_pool_depth: maximum number of shared structures in the pool
  • umem_mgr: memory allocator to use for buffers
  • macropixel: number of pixels in a macropixel (typically 1)
  • hprepend: extra pixels added before each line (if set to -1, a default sensible value is used)
  • happend: extra pixels added after each line (if set to -1, a default sensible value is used)
  • vprepend: extra lines added before buffer (if set to -1, a default sensible value is used)
  • vappend: extra lines added after buffer (if set to -1, a default sensible value is used)
  • align: alignment in octets (if set to 0, no line will be voluntarily aligned)
  • align_hmoffset: horizontal offset of the aligned macropixel in a line (may be negative)

The return value is pointer to manager, or NULL in case of error

struct ubuf_mgr * ubuf_pic_mem_mgr_alloc_fourcc(uint16_t ubuf_pool_depth, uint16_t shared_pool_depth, struct umem_mgr *umem_mgr, const char *fcc, int hmprepend, int hmappend, int vprepend, int vappend, int align, int align_hmoffset)  

This function is declared in upipe/ubuf_pic_mem.h source file, line 152.

This function allocates a new instance of the ubuf manager for picture formats using umem, from a fourcc image format.

Parameter list:

  • ubuf_pool_depth: maximum number of ubuf structures in the pool
  • shared_pool_depth: maximum number of shared structures in the pool
  • umem_mgr: memory allocator to use for buffers
  • fcc: fourcc to use to create the manager
  • hmprepend: extra macropixels added before each line (if set to -1, a default sensible value is used)
  • hmappend: extra macropixels added after each line (if set to -1, a default sensible value is used)
  • vprepend: extra lines added before buffer (if set to -1, a default sensible value is used)
  • vappend: extra lines added after buffer (if set to -1, a default sensible value is used)
  • align: alignment in octets (if set to 0, no line will be voluntarily aligned)
  • align_hmoffset: horizontal offset of the aligned macropixel in a line (may be negative)

The return value is pointer to manager, or NULL in case of error

Valid XHTML 1.0 StrictGenerated by cmassiot on Fri Feb 2 23:57:19 2018 using MkDoc