48 #define OFFSET(x) offsetof(AFormatContext, x) 49 #define A AV_OPT_FLAG_AUDIO_PARAM 50 #define F AV_OPT_FLAG_FILTERING_PARAM 60 #define PARSE_FORMATS(str, type, list, add_to_list, unref_fn, get_fmt, none, desc) \ 62 char *next, *cur = str, sep; \ 65 if (str && strchr(str, ',')) { \ 66 av_log(ctx, AV_LOG_WARNING, "This syntax is deprecated, use '|' to "\ 67 "separate %s.\n", desc); \ 74 next = strchr(cur, sep); \ 78 if ((fmt = get_fmt(cur)) == none) { \ 79 av_log(ctx, AV_LOG_ERROR, "Error parsing " desc ": %s.\n", cur);\ 80 return AVERROR(EINVAL); \ 82 if ((ret = add_to_list(&list, fmt)) < 0) { \ 93 int ret = strtol(samplerate,
NULL, 0);
147 .description =
NULL_IF_CONFIG_SMALL(
"Convert the input audio to one of the specified formats."),
151 .priv_class = &aformat_class,
152 .
inputs = avfilter_af_aformat_inputs,
153 .
outputs = avfilter_af_aformat_outputs,
Main libavfilter public API header.
AVFilterFormats * sample_rates
const char * name
Pad name.
uint64_t av_get_channel_layout(const char *name)
Return a channel layout id that matches name, or 0 if no match is found.
A filter pad used for either input or output.
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
void * priv
private data for use by the filter
AVFilterFormats * formats
audio channel layout utility functions
static const AVFilterPad inputs[]
static const AVFilterPad outputs[]
A list of supported channel layouts.
AVSampleFormat
Audio sample formats.
Describe the class of an AVClass context structure.
enum AVSampleFormat av_get_sample_fmt(const char *name)
Return a sample format corresponding to name, or AV_SAMPLE_FMT_NONE on error.
const char * name
Filter name.
char * channel_layouts_str
common internal and external API header
AVFilterChannelLayouts * channel_layouts