Browse Source

Merge commit '7cdd737ba81b5c2c9521c4509edf0ac315fabc65'

* commit '7cdd737ba81b5c2c9521c4509edf0ac315fabc65':
  lavfi: mark filters with dynamic number of inputs or outputs with special flags

Merged-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.0
Michael Niedermayer 13 years ago
parent
commit
16fc24b240
6 changed files with 29 additions and 0 deletions
  1. +1
    -0
      doc/APIchanges
  2. +2
    -0
      libavfilter/af_amix.c
  3. +2
    -0
      libavfilter/af_channelsplit.c
  4. +2
    -0
      libavfilter/af_join.c
  5. +18
    -0
      libavfilter/avfilter.h
  6. +4
    -0
      libavfilter/split.c

+ 1
- 0
doc/APIchanges View File

@@ -169,6 +169,7 @@ API changes, most recent first:
filter.
Add avfilter_init_str(), deprecate avfilter_init_filter().
Add avfilter_init_dict().
Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.

2013-xx-xx - lavfi 3.7.0 - avfilter.h
Add AVFilter.priv_class for exporting filter options through the AVOptions API


+ 2
- 0
libavfilter/af_amix.c View File

@@ -557,4 +557,6 @@ AVFilter avfilter_af_amix = {

.inputs = NULL,
.outputs = avfilter_af_amix_outputs,

.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

+ 2
- 0
libavfilter/af_channelsplit.c View File

@@ -146,4 +146,6 @@ AVFilter avfilter_af_channelsplit = {

.inputs = avfilter_af_channelsplit_inputs,
.outputs = NULL,

.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
};

+ 2
- 0
libavfilter/af_join.c View File

@@ -525,4 +525,6 @@ AVFilter avfilter_af_join = {

.inputs = NULL,
.outputs = avfilter_af_join_outputs,

.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

+ 18
- 0
libavfilter/avfilter.h View File

@@ -410,6 +410,19 @@ const char *avfilter_pad_get_name(const AVFilterPad *pads, int pad_idx);
*/
enum AVMediaType avfilter_pad_get_type(const AVFilterPad *pads, int pad_idx);

/**
* The number of the filter inputs is not determined just by AVFilter.inputs.
* The filter might add additional inputs during initialization depending on the
* options supplied to it.
*/
#define AVFILTER_FLAG_DYNAMIC_INPUTS (1 << 0)
/**
* The number of the filter outputs is not determined just by AVFilter.outputs.
* The filter might add additional outputs during initialization depending on
* the options supplied to it.
*/
#define AVFILTER_FLAG_DYNAMIC_OUTPUTS (1 << 1)

/**
* Filter definition. This defines the pads a filter contains, and all the
* callback functions used to interact with the filter.
@@ -432,6 +445,11 @@ typedef struct AVFilter {
*/
const AVClass *priv_class;

/**
* A combination of AVFILTER_FLAG_*
*/
int flags;

/*****************************************************************
* All fields below this line are not part of the public API. They
* may not be used outside of libavfilter and can be changed and


+ 4
- 0
libavfilter/split.c View File

@@ -133,6 +133,8 @@ AVFilter avfilter_vf_split = {

.inputs = avfilter_vf_split_inputs,
.outputs = NULL,

.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
};

static const AVFilterPad avfilter_af_asplit_inputs[] = {
@@ -157,4 +159,6 @@ AVFilter avfilter_af_asplit = {

.inputs = avfilter_af_asplit_inputs,
.outputs = NULL,

.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
};

Loading…
Cancel
Save