Go to the documentation of this file.
26 #include "../dnn_interface.h"
37 #define OFFSET(x) offsetof(DnnContext, x)
38 #define FLAGS AV_OPT_FLAG_FILTERING_PARAM
40 {
"model",
"path to model file",
42 {
"input",
"input name of the model",
44 {
"output",
"output name of the model",
46 {
"backend_configs",
"backend configs (deprecated)",
48 {
"options",
"backend configs (deprecated)",
50 {
"nireq",
"number of request",
52 {
"async",
"use DNN async inference",
54 {
"device",
"device to run model",
70 {0, .
class = &dnn_base_class},
72 #if CONFIG_LIBTENSORFLOW
75 #if CONFIG_LIBOPENVINO
91 "Module backend_type %d is not supported or enabled.\n",
112 pre_offset = (
char *)prev - (
char *)obj;
130 if (!(module->
type & backend_mask))
134 *iter = (
void *)(
i + 1);
const DNNModule ff_dnn_backend_openvino
static const AVOption dnn_base_options[]
static const DnnBackendInfo dnn_backend_info_list[]
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
#define FF_ARRAY_ELEMS(a)
#define av_assert0(cond)
assert() equivalent, that is always enabled.
void ff_dnn_init_child_class(DnnContext *ctx)
AVFILTER_DEFINE_CLASS(dnn_base)
Describe the class of an AVClass context structure.
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf offset
const DNNModule * ff_get_dnn_module(DNNBackendType backend_type, void *log_ctx)
const DNNModule ff_dnn_backend_tf
void * ff_dnn_child_next(DnnContext *obj, void *prev)
#define AV_OPT_FLAG_DEPRECATED
Set if option is deprecated, users should refer to AVOption.help text for more information.
#define i(width, name, range_min, range_max)
const AVClass * ff_dnn_child_class_iterate_with_mask(void **iter, uint32_t backend_mask)
const DNNModule ff_dnn_backend_torch
@ AV_OPT_TYPE_INT
Underlying C type is int.
@ AV_OPT_TYPE_BOOL
Underlying C type is int.
@ AV_OPT_TYPE_STRING
Underlying C type is a uint8_t* that is either NULL or points to a C string allocated with the av_mal...