Commit 996f9f0c authored by Anton Khirnov's avatar Anton Khirnov

avfiltergraph: add an AVClass to AVFilterGraph on next major bump.

It will be used for logging, possibly also AVOptions.
parent ddb44312
......@@ -27,9 +27,23 @@
#include "avfiltergraph.h"
#include "internal.h"
#include "libavutil/log.h"
static const AVClass filtergraph_class = {
.class_name = "AVFilterGraph",
.item_name = av_default_item_name,
.version = LIBAVUTIL_VERSION_INT,
};
AVFilterGraph *avfilter_graph_alloc(void)
{
return av_mallocz(sizeof(AVFilterGraph));
AVFilterGraph *ret = av_mallocz(sizeof(AVFilterGraph));
if (!ret)
return NULL;
#if FF_API_GRAPH_AVCLASS
ret->av_class = &filtergraph_class;
#endif
return ret;
}
void avfilter_graph_free(AVFilterGraph **graph)
......
......@@ -23,8 +23,12 @@
#define AVFILTER_AVFILTERGRAPH_H
#include "avfilter.h"
#include "libavutil/log.h"
typedef struct AVFilterGraph {
#if FF_API_GRAPH_AVCLASS
const AVClass *av_class;
#endif
unsigned filter_count;
AVFilterContext **filters;
......
......@@ -40,4 +40,12 @@
LIBAVFILTER_VERSION_MICRO)
#define LIBAVFILTER_BUILD LIBAVFILTER_VERSION_INT
/**
* Those FF_API_* defines are not part of public API.
* They may change, break or disappear at any time.
*/
#ifndef FF_API_GRAPH_AVCLASS
#define FF_API_GRAPH_AVCLASS (LIBAVFILTER_VERSION_MAJOR > 2)
#endif
#endif // AVFILTER_VERSION_H
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment