FFmpeg
stack_internal.h
Go to the documentation of this file.
1 /*
2  * This file is part of FFmpeg.
3  *
4  * FFmpeg is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * FFmpeg is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with FFmpeg; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18 
19 #ifndef AVFILTER_STACK_INTERNAL_H
20 #define AVFILTER_STACK_INTERNAL_H
21 
22 enum {
23  STACK_H = 0,
24  STACK_V = 1,
25  STACK_X = 2
26 };
27 
28 typedef struct StackItemRegion {
29  int x;
30  int y;
31  int width;
32  int height;
34 
35 typedef struct StackBaseContext {
36  HWContext hwctx; /**< must be the first field */
37 
39  int mode;
40  uint8_t fillcolor[4];
43 
44  /* Options */
45  int nb_inputs;
46  int shortest;
51  char *layout;
54 
55 static int config_comm_output(AVFilterLink *outlink);
56 static int stack_init(AVFilterContext *avctx);
57 static av_cold void stack_uninit(AVFilterContext *avctx);
58 static int stack_activate(AVFilterContext *avctx);
59 
60 #endif /* AVFILTER_STACK_INTERNAL_H */
STACK_V
@ STACK_V
Definition: stack_internal.h:24
StackItemRegion::x
int x
Definition: stack_internal.h:29
stack_activate
static int stack_activate(AVFilterContext *avctx)
stack_init
static int stack_init(AVFilterContext *avctx)
StackItemRegion::y
int y
Definition: stack_internal.h:30
StackBaseContext::fillcolor_str
char * fillcolor_str
Definition: stack_internal.h:52
FFFrameSync
Frame sync structure.
Definition: framesync.h:168
StackBaseContext::tile_width
int tile_width
Definition: stack_internal.h:47
StackItemRegion::height
int height
Definition: stack_internal.h:32
StackBaseContext::fs
FFFrameSync fs
Definition: stack_internal.h:38
StackBaseContext::nb_grid_rows
int nb_grid_rows
Definition: stack_internal.h:50
StackBaseContext::layout
char * layout
Definition: stack_internal.h:51
StackItemRegion::width
int width
Definition: stack_internal.h:31
HWContext
#define HWContext
Definition: vf_stack_qsv.c:48
av_cold
#define av_cold
Definition: attributes.h:90
STACK_X
@ STACK_X
Definition: stack_internal.h:25
STACK_H
@ STACK_H
Definition: stack_internal.h:23
StackBaseContext::fillcolor
uint8_t fillcolor[4]
Definition: stack_internal.h:40
StackBaseContext::tile_height
int tile_height
Definition: stack_internal.h:48
StackItemRegion
Definition: stack_internal.h:28
StackBaseContext::nb_grid_columns
int nb_grid_columns
Definition: stack_internal.h:49
stack_uninit
static av_cold void stack_uninit(AVFilterContext *avctx)
StackBaseContext::fillcolor_enable
int fillcolor_enable
Definition: stack_internal.h:41
StackBaseContext
Definition: stack_internal.h:35
StackBaseContext::nb_inputs
int nb_inputs
Definition: stack_internal.h:45
StackBaseContext::regions
StackItemRegion * regions
Definition: stack_internal.h:42
AVFilterContext
An instance of a filter.
Definition: avfilter.h:407
StackBaseContext::hwctx
HWContext hwctx
must be the first field
Definition: stack_internal.h:36
StackBaseContext::shortest
int shortest
Definition: stack_internal.h:46
StackBaseContext::mode
int mode
Definition: stack_internal.h:39
config_comm_output
static int config_comm_output(AVFilterLink *outlink)