|
FFmpeg
|
Go to the source code of this file.
Data Structures | |
| union | SwsConst |
| struct | SwsComps |
| struct | SwsReadWriteOp |
| struct | SwsPackOp |
| struct | SwsSwizzleOp |
| struct | SwsConvertOp |
| struct | SwsDitherOp |
| struct | SwsLinearOp |
| struct | SwsOp |
| struct | SwsOpList |
| Helper struct for representing a list of operations. More... | |
Macros | |
| #define | SWS_SWIZZLE(X, Y, Z, W) ((SwsSwizzleOp) { .in = {X, Y, Z, W} }) |
| #define | SWS_MASK(I, J) (1 << (5 * (I) + (J))) |
| #define | SWS_MASK_OFF(I) SWS_MASK(I, 4) |
| #define | SWS_MASK_ROW(I) (0x1F << (5 * (I))) |
| #define | SWS_MASK_COL(J) (0x8421 << J) |
Functions | |
| const char * | ff_sws_pixel_type_name (SwsPixelType type) |
| int | ff_sws_pixel_type_size (SwsPixelType type) av_const |
| bool | ff_sws_pixel_type_is_int (SwsPixelType type) av_const |
| uint32_t | ff_sws_linear_mask (SwsLinearOp) |
| void | ff_sws_op_uninit (SwsOp *op) |
| Frees any allocations associated with an SwsOp and sets it to {0}. More... | |
| void | ff_sws_apply_op_q (const SwsOp *op, AVRational x[4]) |
| Apply an operation to an AVRational. More... | |
| SwsOpList * | ff_sws_op_list_alloc (void) |
| void | ff_sws_op_list_free (SwsOpList **ops) |
| SwsOpList * | ff_sws_op_list_duplicate (const SwsOpList *ops) |
Returns a duplicate of ops, or NULL on OOM. More... | |
| int | ff_sws_op_list_max_size (const SwsOpList *ops) |
Returns the size of the largest pixel type used in ops. More... | |
| int | ff_sws_op_list_append (SwsOpList *ops, SwsOp *op) |
These will take over ownership of op and set it to {0}, even on failure. More... | |
| int | ff_sws_op_list_insert_at (SwsOpList *ops, int index, SwsOp *op) |
| void | ff_sws_op_list_remove_at (SwsOpList *ops, int index, int count) |
| void | ff_sws_op_list_print (void *log_ctx, int log_level, const SwsOpList *ops) |
| Print out the contents of an operation list. More... | |
| void | ff_sws_op_list_update_comps (SwsOpList *ops) |
| Infer + propagate known information about components. More... | |
| int | ff_sws_op_list_optimize (SwsOpList *ops) |
| Fuse compatible and eliminate redundant operations, as well as replacing some operations with more efficient alternatives. More... | |
| int | ff_sws_compile_pass (SwsGraph *graph, SwsOpList *ops, int flags, SwsFormat dst, SwsPass *input, SwsPass **output) |
| Resolves an operation list to a graph pass. More... | |
| enum SwsPixelType |
Copyright (C) 2025 Niklas Haas.
This file is part of FFmpeg.
FFmpeg is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
FFmpeg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
| Enumerator | |
|---|---|
| SWS_PIXEL_NONE | |
| SWS_PIXEL_U8 | |
| SWS_PIXEL_U16 | |
| SWS_PIXEL_U32 | |
| SWS_PIXEL_F32 | |
| SWS_PIXEL_TYPE_NB | |
| enum SwsOpType |
| enum SwsCompFlags |
| anonymous enum |
| enum SwsOpCompileFlags |
| const char* ff_sws_pixel_type_name | ( | SwsPixelType | type | ) |
Definition at line 49 of file ops.c.
Referenced by check_clear(), check_convert(), check_dither(), check_linear(), check_min_max(), check_read_write(), check_scale(), check_shift(), check_swizzle(), and ff_sws_op_list_print().
| int ff_sws_pixel_type_size | ( | SwsPixelType | type | ) | const |
Definition at line 64 of file ops.c.
Referenced by check_clear(), check_convert(), check_scale(), compile(), ff_sws_apply_op_q(), ff_sws_op_list_max_size(), ff_sws_op_list_update_comps(), ff_sws_pack_op_decode(), ff_sws_pixel_expand(), ff_sws_solve_shuffle(), normalize_clear(), op_match(), rndq(), rw_pixel_bits(), and setup_swap_bytes().
| bool ff_sws_pixel_type_is_int | ( | SwsPixelType | type | ) | const |
Definition at line 79 of file ops.c.
Referenced by check_clear(), check_convert(), check_dither(), check_linear(), check_scale(), check_shift(), ff_sws_apply_op_q(), ff_sws_op_list_optimize(), ff_sws_op_list_update_comps(), and rndq().
| uint32_t ff_sws_linear_mask | ( | SwsLinearOp | ) |
Definition at line 313 of file ops.c.
Referenced by extract_swizzle(), and ff_sws_op_list_optimize().
| void ff_sws_op_uninit | ( | SwsOp * | op | ) |
Frees any allocations associated with an SwsOp and sets it to {0}.
| void ff_sws_apply_op_q | ( | const SwsOp * | op, |
| AVRational | x[4] | ||
| ) |
Apply an operation to an AVRational.
No-op for read/write operations.
Definition at line 107 of file ops.c.
Referenced by ff_sws_op_list_optimize(), and ff_sws_op_list_update_comps().
| int ff_sws_op_list_max_size | ( | const SwsOpList * | ops | ) |
Definition at line 283 of file ops.c.
Referenced by ff_sws_op_list_append(), and ff_sws_op_list_optimize().
| void ff_sws_op_list_remove_at | ( | SwsOpList * | ops, |
| int | index, | ||
| int | count | ||
| ) |
Definition at line 273 of file ops.c.
Referenced by ff_sws_op_list_optimize().
| void ff_sws_op_list_print | ( | void * | log_ctx, |
| int | log_level, | ||
| const SwsOpList * | ops | ||
| ) |
| void ff_sws_op_list_update_comps | ( | SwsOpList * | ops | ) |
Infer + propagate known information about components.
Called automatically when needed by the optimizer and compiler.
Definition at line 75 of file ops_optimizer.c.
Referenced by ff_sws_op_list_optimize().
| int ff_sws_op_list_optimize | ( | SwsOpList * | ops | ) |
Fuse compatible and eliminate redundant operations, as well as replacing some operations with more efficient alternatives.
Definition at line 412 of file ops_optimizer.c.
| int ff_sws_compile_pass | ( | SwsGraph * | graph, |
| SwsOpList * | ops, | ||
| int | flags, | ||
| SwsFormat | dst, | ||
| SwsPass * | input, | ||
| SwsPass ** | output | ||
| ) |
Resolves an operation list to a graph pass.
The first and last operations must be a read/write respectively. flags is a list of SwsOpCompileFlags.
Note: ops may be modified by this function.
1.8.17