FFmpeg
Data Fields
SwsOpExec Struct Reference

Copyright (C) 2026 Niklas Haas. More...

#include <ops_dispatch.h>

Data Fields

const uint8_t * in [4]
 
uint8_t * out [4]
 
ptrdiff_t in_stride [4]
 
ptrdiff_t out_stride [4]
 
ptrdiff_t in_bump [4]
 Pointer bump, difference between stride and processed line size. More...
 
ptrdiff_t out_bump [4]
 
int32_t width
 
int32_t height
 
int32_t slice_y
 
int32_t slice_h
 
int32_t block_size_in
 
int32_t block_size_out
 
uint8_t in_sub_y [4]
 
uint8_t out_sub_y [4]
 
uint8_t in_sub_x [4]
 
uint8_t out_sub_x [4]
 
int32_tin_bump_y
 Line bump; determines how many additional lines to advance (after incrementing normally to the next line), for each filtered output line. More...
 
int32_tin_offset_x
 Pixel offset map; for horizontal scaling, in bytes. More...
 

Detailed Description

Copyright (C) 2026 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 Global execution context for all compiled functions.

Note: This struct is hard-coded in assembly, so do not change the layout without updating the corresponding assembly definitions.

Definition at line 35 of file ops_dispatch.h.

Field Documentation

◆ in

const uint8_t* SwsOpExec::in[4]

Definition at line 37 of file ops_dispatch.h.

Referenced by check_ops(), op_pass_setup(), and process().

◆ out

uint8_t* SwsOpExec::out[4]

Definition at line 38 of file ops_dispatch.h.

Referenced by check_ops(), op_pass_setup(), and process().

◆ in_stride

ptrdiff_t SwsOpExec::in_stride[4]

Definition at line 41 of file ops_dispatch.h.

Referenced by check_ops(), DECL_READ(), op_pass_setup(), and process().

◆ out_stride

ptrdiff_t SwsOpExec::out_stride[4]

Definition at line 42 of file ops_dispatch.h.

Referenced by check_ops(), op_pass_setup(), and process().

◆ in_bump

ptrdiff_t SwsOpExec::in_bump[4]

Pointer bump, difference between stride and processed line size.

Assumes that each read kernel increments pointers by the processed block size, except when using horizontal filtering, in which case this is always equal to the input stride.

Definition at line 51 of file ops_dispatch.h.

Referenced by check_ops(), and op_pass_setup().

◆ out_bump

ptrdiff_t SwsOpExec::out_bump[4]

Definition at line 52 of file ops_dispatch.h.

Referenced by check_ops(), and op_pass_setup().

◆ width

int32_t SwsOpExec::width

Definition at line 55 of file ops_dispatch.h.

Referenced by check_ops(), and process().

◆ height

int32_t SwsOpExec::height

Definition at line 55 of file ops_dispatch.h.

Referenced by check_ops().

◆ slice_y

int32_t SwsOpExec::slice_y

Definition at line 56 of file ops_dispatch.h.

◆ slice_h

int32_t SwsOpExec::slice_h

Definition at line 56 of file ops_dispatch.h.

Referenced by check_ops().

◆ block_size_in

int32_t SwsOpExec::block_size_in

Definition at line 57 of file ops_dispatch.h.

Referenced by check_ops(), and op_pass_setup().

◆ block_size_out

int32_t SwsOpExec::block_size_out

Definition at line 58 of file ops_dispatch.h.

Referenced by check_ops(), op_pass_setup(), and process().

◆ in_sub_y

uint8_t SwsOpExec::in_sub_y[4]

Definition at line 61 of file ops_dispatch.h.

Referenced by op_pass_setup().

◆ out_sub_y

uint8_t SwsOpExec::out_sub_y[4]

Definition at line 61 of file ops_dispatch.h.

Referenced by op_pass_setup().

◆ in_sub_x

uint8_t SwsOpExec::in_sub_x[4]

Definition at line 62 of file ops_dispatch.h.

Referenced by op_pass_setup().

◆ out_sub_x

uint8_t SwsOpExec::out_sub_x[4]

Definition at line 62 of file ops_dispatch.h.

Referenced by op_pass_setup().

◆ in_bump_y

int32_t* SwsOpExec::in_bump_y

Line bump; determines how many additional lines to advance (after incrementing normally to the next line), for each filtered output line.

Indexed by the line's true y coordinate. If NULL, then the bumps are effectively all zero. Note that these bumps still need to be multiplied by the corresponding line stride.

Definition at line 72 of file ops_dispatch.h.

Referenced by check_ops().

◆ in_offset_x

int32_t* SwsOpExec::in_offset_x

Pixel offset map; for horizontal scaling, in bytes.

Indexed by the x coordinate of the output pixel. This is always aligned up to a multiple of the block size, so implementations may safely over-read up to the next block boundary.

Definition at line 80 of file ops_dispatch.h.

Referenced by check_ops(), DECL_READ(), and op_pass_setup().


The documentation for this struct was generated from the following file: