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 void process (const SwsOpExec *exec, const void *priv, const int bx_start, const int y_start, int bx_end, int y_end)
 
static int compile (SwsContext *ctx, SwsOpList *ops, SwsCompiledOp *out)
 

Variables

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

◆ process()

static void process ( const SwsOpExec exec,
const void *  priv,
const int  bx_start,
const int  y_start,
int  bx_end,
int  y_end 
)
static

Definition at line 51 of file ops_backend.c.

Referenced by compile().

◆ compile()

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

Definition at line 72 of file ops_backend.c.

Variable Documentation

◆ backend_c

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

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 106 of file ops_backend.c.

compile
static int compile(SwsContext *ctx, SwsOpList *ops, SwsCompiledOp *out)
Definition: ops_backend.c:72