libavfilter/af_join.c File Reference
Audio join filter.
More...
#include "libavutil/audioconvert.h"
#include "libavutil/avassert.h"
#include "libavutil/common.h"
#include "libavutil/opt.h"
#include "audio.h"
#include "avfilter.h"
#include "formats.h"
#include "internal.h"
Go to the source code of this file.
|
Data Structures |
struct | ChannelMap |
struct | JoinContext |
struct | JoinBufferPriv |
| To avoid copying the data from input buffers, this filter creates a custom output buffer that stores references to all inputs and unrefs them on free. More...
|
Defines |
#define | OFFSET(x) offsetof(JoinContext, x) |
#define | A AV_OPT_FLAG_AUDIO_PARAM |
#define | F AV_OPT_FLAG_FILTERING_PARAM |
#define | PARSE_CHANNEL(str, var, inout) |
Functions |
static int | filter_samples (AVFilterLink *link, AVFilterBufferRef *buf) |
static int | parse_maps (AVFilterContext *ctx) |
static int | join_init (AVFilterContext *ctx, const char *args) |
static void | join_uninit (AVFilterContext *ctx) |
static int | join_query_formats (AVFilterContext *ctx) |
static void | guess_map_matching (AVFilterContext *ctx, ChannelMap *ch, uint64_t *inputs) |
static void | guess_map_any (AVFilterContext *ctx, ChannelMap *ch, uint64_t *inputs) |
static int | join_config_output (AVFilterLink *outlink) |
static void | join_free_buffer (AVFilterBuffer *buf) |
static int | join_request_frame (AVFilterLink *outlink) |
Variables |
static const AVOption | join_options [] |
static const AVClass | join_class |
AVFilter | avfilter_af_join |
Detailed Description
Audio join filter.
Join multiple audio inputs as different channels in a single output
Definition in file af_join.c.
Define Documentation
#define A AV_OPT_FLAG_AUDIO_PARAM |
#define F AV_OPT_FLAG_FILTERING_PARAM |
#define PARSE_CHANNEL |
( |
str, |
|
|
var, |
|
|
inout |
|
) |
|
Function Documentation
Variable Documentation
Initial value:
{
.name = "join",
.description = NULL_IF_CONFIG_SMALL("Join multiple audio streams into "
"multi-channel output"),
.priv_size = sizeof(JoinContext),
.init = join_init,
.uninit = join_uninit,
.query_formats = join_query_formats,
.inputs = NULL,
.outputs = (const AVFilterPad[]){{ .name = "default",
.type = AVMEDIA_TYPE_AUDIO,
.config_props = join_config_output,
.request_frame = join_request_frame, },
{ NULL }},
.priv_class = &join_class,
}
Definition at line 487 of file af_join.c.
Initial value:
Definition at line 90 of file af_join.c.
Initial value:
{
{ "inputs", "Number of input streams.", OFFSET(inputs), AV_OPT_TYPE_INT, { .i64 = 2 }, 1, INT_MAX, A|F },
{ "channel_layout", "Channel layout of the "
"output stream.", OFFSET(channel_layout_str), AV_OPT_TYPE_STRING, {.str = "stereo"}, 0, 0, A|F },
{ "map", "A comma-separated list of channels maps in the format "
"'input_stream.input_channel-output_channel.",
OFFSET(map), AV_OPT_TYPE_STRING, .flags = A|F },
{ NULL },
}
Definition at line 80 of file af_join.c.