FFmpeg
Functions
hwcontext_videotoolbox.h File Reference
#include <stdint.h>
#include <VideoToolbox/VideoToolbox.h>
#include "frame.h"
#include "pixfmt.h"

Go to the source code of this file.

Functions

enum AVPixelFormat av_map_videotoolbox_format_to_pixfmt (uint32_t cv_fmt)
 Convert a VideoToolbox (actually CoreVideo) format to AVPixelFormat. More...
 
uint32_t av_map_videotoolbox_format_from_pixfmt (enum AVPixelFormat pix_fmt)
 Convert an AVPixelFormat to a VideoToolbox (actually CoreVideo) format. More...
 
uint32_t av_map_videotoolbox_format_from_pixfmt2 (enum AVPixelFormat pix_fmt, bool full_range)
 Same as av_map_videotoolbox_format_from_pixfmt function, but can map and return full range pixel formats via a flag. More...
 
CFStringRef av_map_videotoolbox_chroma_loc_from_av (enum AVChromaLocation loc)
 Convert an AVChromaLocation to a VideoToolbox/CoreVideo chroma location string. More...
 
CFStringRef av_map_videotoolbox_color_matrix_from_av (enum AVColorSpace space)
 Convert an AVColorSpace to a VideoToolbox/CoreVideo color matrix string. More...
 
CFStringRef av_map_videotoolbox_color_primaries_from_av (enum AVColorPrimaries pri)
 Convert an AVColorPrimaries to a VideoToolbox/CoreVideo color primaries string. More...
 
CFStringRef av_map_videotoolbox_color_trc_from_av (enum AVColorTransferCharacteristic trc)
 Convert an AVColorTransferCharacteristic to a VideoToolbox/CoreVideo color transfer function string. More...
 
int av_vt_pixbuf_set_attachments (void *log_ctx, CVPixelBufferRef pixbuf, const struct AVFrame *src)
 Update a CVPixelBufferRef's metadata to based on an AVFrame. More...
 

Detailed Description

An API-specific header for AV_HWDEVICE_TYPE_VIDEOTOOLBOX.

This API supports frame allocation using a native CVPixelBufferPool instead of an AVBufferPool.

If the API user sets a custom pool, AVHWFramesContext.pool must return AVBufferRefs whose data pointer is a CVImageBufferRef or CVPixelBufferRef. Note that the underlying CVPixelBuffer could be retained by OS frameworks depending on application usage, so it is preferable to let CoreVideo manage the pool using the default implementation.

Currently AVHWDeviceContext.hwctx and AVHWFramesContext.hwctx are always NULL.

Definition in file hwcontext_videotoolbox.h.

Function Documentation

◆ av_map_videotoolbox_format_to_pixfmt()

enum AVPixelFormat av_map_videotoolbox_format_to_pixfmt ( uint32_t  cv_fmt)

Convert a VideoToolbox (actually CoreVideo) format to AVPixelFormat.

Returns AV_PIX_FMT_NONE if no known equivalent was found.

Definition at line 137 of file hwcontext_videotoolbox.c.

Referenced by vt_map_frame().

◆ av_map_videotoolbox_format_from_pixfmt()

uint32_t av_map_videotoolbox_format_from_pixfmt ( enum AVPixelFormat  pix_fmt)

Convert an AVPixelFormat to a VideoToolbox (actually CoreVideo) format.

Returns 0 if no known equivalent was found.

Definition at line 147 of file hwcontext_videotoolbox.c.

Referenced by vt_pool_alloc().

◆ av_map_videotoolbox_format_from_pixfmt2()

uint32_t av_map_videotoolbox_format_from_pixfmt2 ( enum AVPixelFormat  pix_fmt,
bool  full_range 
)

Same as av_map_videotoolbox_format_from_pixfmt function, but can map and return full range pixel formats via a flag.

Definition at line 152 of file hwcontext_videotoolbox.c.

Referenced by av_map_videotoolbox_format_from_pixfmt(), and get_cv_pixel_format().

◆ av_map_videotoolbox_chroma_loc_from_av()

CFStringRef av_map_videotoolbox_chroma_loc_from_av ( enum AVChromaLocation  loc)

Convert an AVChromaLocation to a VideoToolbox/CoreVideo chroma location string.

Returns 0 if no known equivalent was found.

Definition at line 375 of file hwcontext_videotoolbox.c.

Referenced by vt_pixbuf_set_chromaloc().

◆ av_map_videotoolbox_color_matrix_from_av()

CFStringRef av_map_videotoolbox_color_matrix_from_av ( enum AVColorSpace  space)

Convert an AVColorSpace to a VideoToolbox/CoreVideo color matrix string.

Returns 0 if no known equivalent was found.

Definition at line 411 of file hwcontext_videotoolbox.c.

Referenced by scale_vt_init(), vt_pixbuf_set_colorspace(), and vtenc_configure_encoder().

◆ av_map_videotoolbox_color_primaries_from_av()

CFStringRef av_map_videotoolbox_color_primaries_from_av ( enum AVColorPrimaries  pri)

Convert an AVColorPrimaries to a VideoToolbox/CoreVideo color primaries string.

Returns 0 if no known equivalent was found.

Definition at line 438 of file hwcontext_videotoolbox.c.

Referenced by scale_vt_init(), vt_pixbuf_set_colorspace(), and vtenc_configure_encoder().

◆ av_map_videotoolbox_color_trc_from_av()

CFStringRef av_map_videotoolbox_color_trc_from_av ( enum AVColorTransferCharacteristic  trc)

Convert an AVColorTransferCharacteristic to a VideoToolbox/CoreVideo color transfer function string.

Returns 0 if no known equivalent was found.

Definition at line 463 of file hwcontext_videotoolbox.c.

Referenced by scale_vt_init(), vt_pixbuf_set_colorspace(), and vtenc_configure_encoder().

◆ av_vt_pixbuf_set_attachments()

int av_vt_pixbuf_set_attachments ( void *  log_ctx,
CVPixelBufferRef  pixbuf,
const struct AVFrame src 
)

Update a CVPixelBufferRef's metadata to based on an AVFrame.

Returns 0 if no known equivalent was found.