libavfilter/avf_concat.c File Reference

concat audio-video filter More...

#include "libavutil/audioconvert.h"
#include "libavutil/avassert.h"
#include "libavutil/opt.h"
#include "avfilter.h"
#include "bufferqueue.h"
#include "internal.h"
#include "video.h"
#include "audio.h"

Go to the source code of this file.

Data Structures

struct  ConcatContext
struct  ConcatContext::ConcatContext::concat_in

Defines

#define FF_BUFQUEUE_SIZE   256
#define TYPE_ALL   2
#define OFFSET(x)   offsetof(ConcatContext, x)
#define A   AV_OPT_FLAG_AUDIO_PARAM
#define F   AV_OPT_FLAG_FILTERING_PARAM
#define V   AV_OPT_FLAG_VIDEO_PARAM

Functions

 AVFILTER_DEFINE_CLASS (concat)
static int query_formats (AVFilterContext *ctx)
static int config_output (AVFilterLink *outlink)
static void push_frame (AVFilterContext *ctx, unsigned in_no, AVFilterBufferRef *buf)
static void process_frame (AVFilterLink *inlink, AVFilterBufferRef *buf)
static AVFilterBufferRefget_video_buffer (AVFilterLink *inlink, int perms, int w, int h)
static AVFilterBufferRefget_audio_buffer (AVFilterLink *inlink, int perms, int nb_samples)
static int start_frame (AVFilterLink *inlink, AVFilterBufferRef *buf)
static int draw_slice (AVFilterLink *inlink, int y, int h, int dir)
static int end_frame (AVFilterLink *inlink)
static int filter_samples (AVFilterLink *inlink, AVFilterBufferRef *buf)
static void close_input (AVFilterContext *ctx, unsigned in_no)
static void find_next_delta_ts (AVFilterContext *ctx)
static void send_silence (AVFilterContext *ctx, unsigned in_no, unsigned out_no)
static void flush_segment (AVFilterContext *ctx)
static int request_frame (AVFilterLink *outlink)
static av_cold int init (AVFilterContext *ctx, const char *args)
static av_cold void uninit (AVFilterContext *ctx)

Variables

static const AVOption concat_options []
AVFilter avfilter_avf_concat


Detailed Description

concat audio-video filter

Definition in file avf_concat.c.


Define Documentation

#define A   AV_OPT_FLAG_AUDIO_PARAM

Definition at line 54 of file avf_concat.c.

#define F   AV_OPT_FLAG_FILTERING_PARAM

Definition at line 55 of file avf_concat.c.

#define FF_BUFQUEUE_SIZE   256

Definition at line 30 of file avf_concat.c.

Referenced by ff_bufqueue_add(), and ff_bufqueue_get().

#define OFFSET (  )     offsetof(ConcatContext, x)

Definition at line 53 of file avf_concat.c.

#define TYPE_ALL   2

Definition at line 36 of file avf_concat.c.

Referenced by init(), and query_formats().

#define V   AV_OPT_FLAG_VIDEO_PARAM

Definition at line 56 of file avf_concat.c.


Function Documentation

AVFILTER_DEFINE_CLASS ( concat   ) 

static void close_input ( AVFilterContext ctx,
unsigned  in_no 
) [static]

Definition at line 248 of file avf_concat.c.

Referenced by request_frame().

static int config_output ( AVFilterLink outlink  )  [static]

Definition at line 116 of file avf_concat.c.

static int draw_slice ( AVFilterLink inlink,
int  y,
int  h,
int  dir 
) [static]

Definition at line 230 of file avf_concat.c.

Referenced by ff_draw_slice(), and init().

static int end_frame ( AVFilterLink inlink  )  [static]

Definition at line 235 of file avf_concat.c.

static int filter_samples ( AVFilterLink inlink,
AVFilterBufferRef buf 
) [static]

Definition at line 242 of file avf_concat.c.

static void find_next_delta_ts ( AVFilterContext ctx  )  [static]

Definition at line 258 of file avf_concat.c.

Referenced by flush_segment().

static void flush_segment ( AVFilterContext ctx  )  [static]

Definition at line 301 of file avf_concat.c.

Referenced by request_frame().

static AVFilterBufferRef* get_audio_buffer ( AVFilterLink inlink,
int  perms,
int  nb_samples 
) [static]

Definition at line 215 of file avf_concat.c.

Referenced by init().

static AVFilterBufferRef* get_video_buffer ( AVFilterLink inlink,
int  perms,
int  w,
int  h 
) [static]

Definition at line 205 of file avf_concat.c.

Referenced by ff_get_video_buffer(), and init().

static av_cold int init ( AVFilterContext ctx,
const char *  args 
) [static]

Definition at line 363 of file avf_concat.c.

static void process_frame ( AVFilterLink inlink,
AVFilterBufferRef buf 
) [static]

Definition at line 188 of file avf_concat.c.

static void push_frame ( AVFilterContext ctx,
unsigned  in_no,
AVFilterBufferRef buf 
) [static]

static int query_formats ( AVFilterContext ctx  )  [static]

Definition at line 72 of file avf_concat.c.

static int request_frame ( AVFilterLink outlink  )  [static]

Definition at line 327 of file avf_concat.c.

static void send_silence ( AVFilterContext ctx,
unsigned  in_no,
unsigned  out_no 
) [static]

Definition at line 271 of file avf_concat.c.

Referenced by flush_segment().

static int start_frame ( AVFilterLink inlink,
AVFilterBufferRef buf 
) [static]

Definition at line 225 of file avf_concat.c.

static av_cold void uninit ( AVFilterContext ctx  )  [static]

Definition at line 422 of file avf_concat.c.


Variable Documentation

Initial value:

 {
    .name          = "concat",
    .description   = NULL_IF_CONFIG_SMALL("Concatenate audio and video streams."),
    .init          = init,
    .uninit        = uninit,
    .query_formats = query_formats,
    .priv_size     = sizeof(ConcatContext),
    .inputs        = (const AVFilterPad[]) { { .name = NULL } },
    .outputs       = (const AVFilterPad[]) { { .name = NULL } },
    .priv_class    = &concat_class,
}

Definition at line 436 of file avf_concat.c.

const AVOption concat_options[] [static]

Initial value:

 {
    { "n", "specify the number of segments", OFFSET(nb_segments),
      AV_OPT_TYPE_INT, { .i64 = 2 }, 2, INT_MAX, V|A|F},
    { "v", "specify the number of video streams",
      OFFSET(nb_streams[AVMEDIA_TYPE_VIDEO]),
      AV_OPT_TYPE_INT, { .i64 = 1 }, 0, INT_MAX, V|F },
    { "a", "specify the number of audio streams",
      OFFSET(nb_streams[AVMEDIA_TYPE_AUDIO]),
      AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, A|F},
    { 0 }
}

Definition at line 58 of file avf_concat.c.


Generated on Fri Oct 26 02:50:09 2012 for FFmpeg by  doxygen 1.5.8