FFmpeg
Data Structures | Macros | Functions
dnn_backend_native_layer_conv2d.c File Reference
#include "libavutil/avassert.h"
#include "libavutil/thread.h"
#include "libavutil/cpu.h"
#include "dnn_backend_native_layer_conv2d.h"

Go to the source code of this file.

Data Structures

struct  ThreadCommonParam
 
struct  ThreadParam
 

Macros

#define CLAMP_TO_EDGE(x, w)   ((x) < 0 ? 0 : ((x) >= (w) ? (w - 1) : (x)))
 

Functions

int ff_dnn_load_layer_conv2d (Layer *layer, AVIOContext *model_file_context, int file_size, int operands_num)
 Load the 2D Convolution Layer. More...
 
static void * dnn_execute_layer_conv2d_thread (void *threadarg)
 
int ff_dnn_execute_layer_conv2d (DnnOperand *operands, const int32_t *input_operand_indexes, int32_t output_operand_index, const void *parameters, NativeContext *ctx)
 Execute the 2D Convolution Layer. More...
 

Macro Definition Documentation

◆ CLAMP_TO_EDGE

#define CLAMP_TO_EDGE (   x,
  w 
)    ((x) < 0 ? 0 : ((x) >= (w) ? (w - 1) : (x)))

Definition at line 26 of file dnn_backend_native_layer_conv2d.c.

Function Documentation

◆ ff_dnn_load_layer_conv2d()

int ff_dnn_load_layer_conv2d ( Layer layer,
AVIOContext model_file_context,
int  file_size,
int  operands_num 
)

Load the 2D Convolution Layer.

It assigns the 2D convolution layer with ConvolutionalParams after parsing from the model file context.

Parameters
layerpointer to the DNN layer instance
model_file_contextpointer to model file context
file_sizemodel file size to check if data is read correctly from the model file
operands_numoperand count of the whole model to check if data is read correctly from the model file
Returns
number of bytes read from the model file
Return values
0if out of memory or an error occurs

Definition at line 46 of file dnn_backend_native_layer_conv2d.c.

◆ dnn_execute_layer_conv2d_thread()

static void* dnn_execute_layer_conv2d_thread ( void *  threadarg)
static

Definition at line 111 of file dnn_backend_native_layer_conv2d.c.

Referenced by ff_dnn_execute_layer_conv2d().

◆ ff_dnn_execute_layer_conv2d()

int ff_dnn_execute_layer_conv2d ( DnnOperand operands,
const int32_t input_operand_indexes,
int32_t  output_operand_index,
const void *  parameters,
NativeContext ctx 
)

Execute the 2D Convolution Layer.

Parameters
operandsall operands for the model
input_operand_indexesinput operand indexes for this layer
output_operand_indexoutput operand index for this layer
parametersconvolution parameters
ctxpointer to Native model context for logging
Return values
0if the execution succeeds
AVERROR(ENOMEM)if memory allocation fails
AVERROR(EINVAL)for invalid arguments

Definition at line 187 of file dnn_backend_native_layer_conv2d.c.

Referenced by test_with_same_dilate(), and test_with_valid().