FFmpeg
Loading...
Searching...
No Matches
Data Structures | Typedefs | Enumerations | Functions
format.h File Reference
#include <stdbool.h>
#include "libavutil/csp.h"
#include "libavutil/pixdesc.h"
#include "swscale.h"

Go to the source code of this file.

Data Structures

struct   SwsColor
 
struct   SwsFormat
 
struct   SwsFrame
  Represents a view into a single field of frame data. More...
 

Typedefs

typedef enum SwsPixelType  SwsPixelType
 

Enumerations

enum   { FIELD_TOP , FIELD_BOTTOM }
 

Functions

static int  ff_q_isnan (const AVRational a)
 
static int  ff_q_equal (const AVRational a, const AVRational b)
 
static int  ff_cie_xy_equal (const AVCIExy a, const AVCIExy b)
 
 
static void  ff_color_update_dynamic (SwsColor *dst, const SwsColor *src)
 
static void  ff_fmt_clear (SwsFormat *fmt)
 
SwsFormat  ff_fmt_from_frame (const AVFrame *frame, int field)
  This function also sanitizes and strips the input data, removing irrelevant fields for certain formats.
 
  Subset of ff_fmt_from_frame() that sets default metadata for the format.
 
static int  ff_color_equal (const SwsColor *c1, const SwsColor *c2)
 
static int  ff_fmt_equal (const SwsFormat *fmt1, const SwsFormat *fmt2)
 
static int  ff_fmt_align (enum AVPixelFormat fmt)
 
int  ff_sws_test_pixfmt_backend (const SwsBackend backends, enum AVPixelFormat format, int output)
 
int  ff_test_fmt (SwsBackend backends, const SwsFormat *fmt, int output)
  Statically test if a given format is supported by the given set of backends.
 
 
void  ff_sws_chroma_pos (const SwsFormat *fmt, bool *incomplete, int *out_xpos, int *out_ypos)
  Wrapper around av_chroma_location_enum_to_pos() that accounts for the per-field offset introduced by interlacing.
 
int  ff_sws_decode_pixfmt (SwsOpList *ops, const SwsFormat *fmt)
  Append a set of operations for decoding/encoding raw pixels.
 
int  ff_sws_encode_pixfmt (SwsOpList *ops, const SwsFormat *fmt)
 
int  ff_sws_decode_colors (SwsContext *ctx, SwsPixelType type, SwsOpList *ops, const SwsFormat *fmt, bool *incomplete)
  Append a set of operations for transforming decoded pixel values to/from normalized RGB in the specified gamut and pixel type.
 
int  ff_sws_encode_colors (SwsContext *ctx, SwsPixelType type, SwsOpList *ops, const SwsFormat *src, const SwsFormat *dst, bool *incomplete)
 
  Append a set of operations for scaling pixels to a different resolution.
 
 
int  ff_sws_op_list_generate (SwsContext *ctx, const SwsFormat *src, const SwsFormat *dst, const SwsLut3D *lut3d, SwsOpList **out_ops, bool *incomplete)
  Generate an SwsOpList defining a conversion from src to dst, with an optional 3DLUT for converting between gamuts.
 
  Initialize a SwsFrame from an AVFrame.
 

Typedef Documentation

◆  SwsPixelType

typedef enum SwsPixelType SwsPixelType

Definition at line 172 of file format.h.

Enumeration Type Documentation

◆  anonymous enum

anonymous enum
Enumerator
FIELD_TOP 
FIELD_BOTTOM 

Definition at line 55 of file format.h.

Function Documentation

◆  ff_q_isnan()

static int ff_q_isnan ( const AVRational a )
inlinestatic

Definition at line 31 of file format.h.

Referenced by ff_q_equal().

◆  ff_q_equal()

static int ff_q_equal ( const AVRational a,
const AVRational b )
inlinestatic

Definition at line 37 of file format.h.

Referenced by ff_cie_xy_equal(), and ff_color_equal().

◆  ff_cie_xy_equal()

static int ff_cie_xy_equal ( const AVCIExy a,
const AVCIExy b )
inlinestatic

Definition at line 42 of file format.h.

Referenced by apply_chromatic_adaptation(), and ff_prim_equal().

◆  ff_prim_equal()

static int ff_prim_equal ( const AVPrimaryCoefficients * a,
const AVPrimaryCoefficients * b )
inlinestatic

Definition at line 47 of file format.h.

Referenced by ff_color_equal(), and ff_sws_color_map_noop().

◆  ff_color_update_dynamic()

static void ff_color_update_dynamic ( SwsColor * dst,
const SwsColor * src )
inlinestatic

Definition at line 70 of file format.h.

Referenced by ff_sws_graph_update_metadata().

◆  ff_fmt_clear()

static void ff_fmt_clear ( SwsFormat * fmt )
inlinestatic

Definition at line 90 of file format.h.

Referenced by ff_fmt_from_pixfmt(), and ff_sws_op_list_alloc().

◆  ff_fmt_from_frame()

SwsFormat ff_fmt_from_frame ( const AVFrame * frame,
int field )

This function also sanitizes and strips the input data, removing irrelevant fields for certain formats.

Calculate largest value from histogram to use as fallback for clips with missing MaxSCL information. Note that this may end up picking the "reserved" value at the 5% percentile, which in practice appears to track the brightest pixel in the scene.

Definition at line 345 of file format.c.

Referenced by sws_frame_setup(), sws_is_noop(), and sws_test_frame().

◆  ff_fmt_from_pixfmt()

void ff_fmt_from_pixfmt ( enum AVPixelFormat pixfmt,
SwsFormat * fmt )

Subset of ff_fmt_from_frame() that sets default metadata for the format.

Definition at line 480 of file format.c.

Referenced by enum_ops_fmt().

◆  ff_color_equal()

static int ff_color_equal ( const SwsColor * c1,
const SwsColor * c2 )
inlinestatic

Definition at line 115 of file format.h.

Referenced by ff_fmt_equal().

◆  ff_fmt_equal()

static int ff_fmt_equal ( const SwsFormat * fmt1,
const SwsFormat * fmt2 )
inlinestatic

Definition at line 125 of file format.h.

Referenced by ff_sws_graph_reinit(), init_passes(), sws_frame_setup(), and sws_is_noop().

◆  ff_fmt_align()

static int ff_fmt_align ( enum AVPixelFormat fmt )
inlinestatic

Definition at line 138 of file format.h.

◆  ff_sws_test_pixfmt_backend()

int ff_sws_test_pixfmt_backend ( const SwsBackend backends,
enum AVPixelFormat format,
int output )

Definition at line 602 of file format.c.

Referenced by ff_test_fmt(), sws_test_format(), and test_formats().

◆  ff_test_fmt()

int ff_test_fmt ( SwsBackend backends,
const SwsFormat * fmt,
int output )

Statically test if a given format is supported by the given set of backends.

This is a heuristic, which may have false positives if a specific backend does not actually implement all operations that would be required to support the format.

Definition at line 668 of file format.c.

Referenced by sws_frame_setup(), and sws_test_frame().

◆  ff_infer_colors()

bool ff_infer_colors ( SwsColor * src,
SwsColor * dst )

Definition at line 537 of file format.c.

Referenced by enum_ops_fmt(), and generate_3dlut().

◆  ff_sws_chroma_pos()

void ff_sws_chroma_pos ( const SwsFormat * fmt,
bool * incomplete,
int * out_xpos,
int * out_ypos )

Wrapper around av_chroma_location_enum_to_pos() that accounts for the per-field offset introduced by interlacing.

Definition at line 554 of file format.c.

Referenced by add_legacy_sws_pass().

◆  ff_sws_decode_pixfmt()

int ff_sws_decode_pixfmt ( SwsOpList * ops,
const SwsFormat * fmt )

Append a set of operations for decoding/encoding raw pixels.

This will handle input read/write, swizzling, shifting and byte swapping.

Returns 0 on success, or a negative error code on failure.

◆  ff_sws_encode_pixfmt()

int ff_sws_encode_pixfmt ( SwsOpList * ops,
const SwsFormat * fmt )

◆  ff_sws_decode_colors()

int ff_sws_decode_colors ( SwsContext * ctx,
SwsPixelType type,
SwsOpList * ops,
const SwsFormat * fmt,
bool * incomplete )

Append a set of operations for transforming decoded pixel values to/from normalized RGB in the specified gamut and pixel type.

Returns 0 on success, or a negative error code on failure.

◆  ff_sws_encode_colors()

int ff_sws_encode_colors ( SwsContext * ctx,
SwsPixelType type,
SwsOpList * ops,
const SwsFormat * src,
const SwsFormat * dst,
bool * incomplete )

◆  ff_sws_add_filters()

int ff_sws_add_filters ( SwsContext * ctx,
SwsPixelType type,
SwsOpList * ops,
const SwsFormat * src,
const SwsFormat * dst )

Append a set of operations for scaling pixels to a different resolution.

Returns 0 on success, or a negative error code on failure.

◆  ff_sws_apply_lut3d()

int ff_sws_apply_lut3d ( SwsContext * ctx,
SwsPixelType type,
SwsOpList * ops,
const SwsLut3D * lut3d )

◆  ff_sws_op_list_generate()

int ff_sws_op_list_generate ( SwsContext * ctx,
const SwsFormat * src,
const SwsFormat * dst,
const SwsLut3D * lut3d,
SwsOpList ** out_ops,
bool * incomplete )

Generate an SwsOpList defining a conversion from src to dst, with an optional 3DLUT for converting between gamuts.

Returns 0 on success, or a negative error code on failure.

Referenced by add_ops_convert_pass(), and enum_ops_fmt().

◆  ff_sws_frame_from_avframe()

void ff_sws_frame_from_avframe ( SwsFrame * dst,
const AVFrame * src )

Initialize a SwsFrame from an AVFrame.

Definition at line 707 of file format.c.

Referenced by get_field(), and pass_alloc_output().


Generated on Sun Sep 6 2026 19:21:22 for FFmpeg by doxygen 1.13.2

AltStyle によって変換されたページ (->オリジナル) /