FFmpeg
Macros | Typedefs | Functions | Variables
ops_backend.c File Reference
#include "ops_backend.h"
#include "ops_tmpl_int.c"
#include "ops_tmpl_float.c"

Go to the source code of this file.

Macros

#define SWS_BLOCK_SIZE   32
 Copyright (C) 2025 Niklas Haas. More...
 
#define BIT_DEPTH   8
 
#define BIT_DEPTH   16
 
#define BIT_DEPTH   32
 

Typedefs

typedef uint8_t u8block_t[SWS_BLOCK_SIZE]
 
typedef uint16_t u16block_t[SWS_BLOCK_SIZE]
 
typedef uint32_t u32block_t[SWS_BLOCK_SIZE]
 
typedef float f32block_t[SWS_BLOCK_SIZE]
 

Functions

static int compile (SwsContext *ctx, SwsOpList *ops, SwsCompiledOp *out)
 

Variables

static const SwsOpTable *const tables []
 
const SwsOpBackend backend_c
 Copyright (C) 2025 Niklas Haas. More...
 

Macro Definition Documentation

◆ SWS_BLOCK_SIZE

#define SWS_BLOCK_SIZE   32

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

Definition at line 30 of file ops_backend.c.

◆ BIT_DEPTH [1/3]

#define BIT_DEPTH   8

Definition at line 46 of file ops_backend.c.

◆ BIT_DEPTH [2/3]

#define BIT_DEPTH   16

Definition at line 46 of file ops_backend.c.

◆ BIT_DEPTH [3/3]

#define BIT_DEPTH   32

Definition at line 46 of file ops_backend.c.

Typedef Documentation

◆ u8block_t

typedef uint8_t u8block_t[SWS_BLOCK_SIZE]

Definition at line 33 of file ops_backend.c.

◆ u16block_t

typedef uint16_t u16block_t[SWS_BLOCK_SIZE]

Definition at line 34 of file ops_backend.c.

◆ u32block_t

typedef uint32_t u32block_t[SWS_BLOCK_SIZE]

Definition at line 35 of file ops_backend.c.

◆ f32block_t

typedef float f32block_t[SWS_BLOCK_SIZE]

Definition at line 36 of file ops_backend.c.

Function Documentation

◆ compile()

static int compile ( SwsContext ctx,
SwsOpList ops,
SwsCompiledOp out 
)
static

Definition at line 58 of file ops_backend.c.

Variable Documentation

◆ tables

const SwsOpTable* const tables[]
static
Initial value:
= {
&bitfn(op_table_int, u8),
&bitfn(op_table_int, u16),
&bitfn(op_table_int, u32),
&bitfn(op_table_float, f32),
}

Definition at line 51 of file ops_backend.c.

Referenced by compile().

◆ backend_c

const SwsOpBackend backend_c
Initial value:
= {
.name = "c",
.compile = compile,
.hw_format = AV_PIX_FMT_NONE,
}

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

Definition at line 104 of file ops_backend.c.

compile
static int compile(SwsContext *ctx, SwsOpList *ops, SwsCompiledOp *out)
Definition: ops_backend.c:58
bitfn
#define bitfn(name, ext)
Definition: ops_backend.h:65
AV_PIX_FMT_NONE
@ AV_PIX_FMT_NONE
Definition: pixfmt.h:72