Misc test sources. More...
#include <float.h>#include "libavutil/mathematics.h"#include "libavutil/opt.h"#include "libavutil/intreadwrite.h"#include "libavutil/parseutils.h"#include "avfilter.h"Go to the source code of this file.
Data Structures | |
| struct | TestSourceContext |
Defines | |
| #define | OFFSET(x) offsetof(TestSourceContext, x) |
| #define | TOP_HBAR 1 |
| #define | MID_HBAR 2 |
| #define | BOT_HBAR 4 |
| #define | LEFT_TOP_VBAR 8 |
| #define | LEFT_BOT_VBAR 16 |
| #define | RIGHT_TOP_VBAR 32 |
| #define | RIGHT_BOT_VBAR 64 |
| #define | GRADIENT_SIZE (6 * 256) |
| #define | R 0 |
| #define | G 1 |
| #define | B 2 |
| #define | A 3 |
Functions | |
| static av_cold int | init_common (AVFilterContext *ctx, const char *args, void *opaque) |
| static int | config_props (AVFilterLink *outlink) |
| static int | request_frame (AVFilterLink *outlink) |
| static const char * | testsrc_get_name (void *ctx) |
| static void | draw_rectangle (unsigned val, uint8_t *dst, int dst_linesize, unsigned segment_width, unsigned x, unsigned y, unsigned w, unsigned h) |
| Fill a rectangle with value val. | |
| static void | draw_digit (int digit, uint8_t *dst, unsigned dst_linesize, unsigned segment_width) |
| static void | test_fill_picture (AVFilterContext *ctx, AVFilterBufferRef *picref) |
| static av_cold int | test_init (AVFilterContext *ctx, const char *args, void *opaque) |
| static int | test_query_formats (AVFilterContext *ctx) |
| static const char * | rgbtestsrc_get_name (void *ctx) |
| static void | rgbtest_put_pixel (uint8_t *dst, int dst_linesize, int x, int y, int r, int g, int b, enum PixelFormat fmt, int rgba_map[4]) |
| static void | rgbtest_fill_picture (AVFilterContext *ctx, AVFilterBufferRef *picref) |
| static av_cold int | rgbtest_init (AVFilterContext *ctx, const char *args, void *opaque) |
| static int | rgbtest_query_formats (AVFilterContext *ctx) |
| static int | rgbtest_config_props (AVFilterLink *outlink) |
Variables | |
| static const AVOption | testsrc_options [] |
| static const AVClass | testsrc_class |
| AVFilter | avfilter_vsrc_testsrc |
| static const AVClass | rgbtestsrc_class |
| AVFilter | avfilter_vsrc_rgbtestsrc |
Misc test sources.
testsrc is based on the test pattern generator demuxer by Nicolas George: http://lists.ffmpeg.org/pipermail/ffmpeg-devel/2007-October/037845.html
rgbtestsrc is ported from MPlayer libmpcodecs/vf_rgbtest.c by Michael Niedermayer.
Definition in file vsrc_testsrc.c.
| #define A 3 |
Definition at line 390 of file vsrc_testsrc.c.
| #define B 2 |
Definition at line 389 of file vsrc_testsrc.c.
| #define BOT_HBAR 4 |
Referenced by draw_digit().
| #define G 1 |
Definition at line 388 of file vsrc_testsrc.c.
| #define GRADIENT_SIZE (6 * 256) |
Definition at line 235 of file vsrc_testsrc.c.
Referenced by test_fill_picture().
| #define LEFT_BOT_VBAR 16 |
Referenced by draw_digit().
| #define LEFT_TOP_VBAR 8 |
Referenced by draw_digit().
| #define MID_HBAR 2 |
Referenced by draw_digit().
| #define OFFSET | ( | x | ) | offsetof(TestSourceContext, x) |
Definition at line 58 of file vsrc_testsrc.c.
| #define R 0 |
Definition at line 387 of file vsrc_testsrc.c.
| #define RIGHT_BOT_VBAR 64 |
| #define RIGHT_TOP_VBAR 32 |
Referenced by draw_digit().
| #define TOP_HBAR 1 |
Referenced by draw_digit().
| static int config_props | ( | AVFilterLink * | outlink | ) | [static] |
Definition at line 114 of file vsrc_testsrc.c.
Referenced by rgbtest_config_props().
| static void draw_digit | ( | int | digit, | |
| uint8_t * | dst, | |||
| unsigned | dst_linesize, | |||
| unsigned | segment_width | |||
| ) | [static] |
Definition at line 192 of file vsrc_testsrc.c.
Referenced by test_fill_picture().
| static void draw_rectangle | ( | unsigned | val, | |
| uint8_t * | dst, | |||
| int | dst_linesize, | |||
| unsigned | segment_width, | |||
| unsigned | x, | |||
| unsigned | y, | |||
| unsigned | w, | |||
| unsigned | h | |||
| ) | [static] |
Fill a rectangle with value val.
| val | the RGB value to set | |
| dst | pointer to the destination buffer to fill | |
| dst_linesize | linesize of destination | |
| segment_width | width of the segment | |
| x | horizontal coordinate where to draw the rectangle in the destination buffer | |
| y | horizontal coordinate where to draw the rectangle in the destination buffer | |
| w | width of the rectangle to draw, expressed as a number of segment_width units | |
| h | height of the rectangle to draw, expressed as a number of segment_width units |
Definition at line 177 of file vsrc_testsrc.c.
Referenced by draw_digit().
| static av_cold int init_common | ( | AVFilterContext * | ctx, | |
| const char * | args, | |||
| void * | opaque | |||
| ) | [static] |
Definition at line 70 of file vsrc_testsrc.c.
Referenced by rgbtest_init(), and test_init().
| static int request_frame | ( | AVFilterLink * | outlink | ) | [static] |
Definition at line 126 of file vsrc_testsrc.c.
| static int rgbtest_config_props | ( | AVFilterLink * | outlink | ) | [static] |
Definition at line 466 of file vsrc_testsrc.c.
| static void rgbtest_fill_picture | ( | AVFilterContext * | ctx, | |
| AVFilterBufferRef * | picref | |||
| ) | [static] |
Definition at line 423 of file vsrc_testsrc.c.
| static av_cold int rgbtest_init | ( | AVFilterContext * | ctx, | |
| const char * | args, | |||
| void * | opaque | |||
| ) | [static] |
Definition at line 443 of file vsrc_testsrc.c.
| static void rgbtest_put_pixel | ( | uint8_t * | dst, | |
| int | dst_linesize, | |||
| int | x, | |||
| int | y, | |||
| int | r, | |||
| int | g, | |||
| int | b, | |||
| enum PixelFormat | fmt, | |||
| int | rgba_map[4] | |||
| ) | [static] |
Definition at line 392 of file vsrc_testsrc.c.
Referenced by rgbtest_fill_picture().
| static int rgbtest_query_formats | ( | AVFilterContext * | ctx | ) | [static] |
Definition at line 452 of file vsrc_testsrc.c.
| static const char* rgbtestsrc_get_name | ( | void * | ctx | ) | [static] |
Definition at line 376 of file vsrc_testsrc.c.
| static void test_fill_picture | ( | AVFilterContext * | ctx, | |
| AVFilterBufferRef * | picref | |||
| ) | [static] |
Definition at line 237 of file vsrc_testsrc.c.
| static av_cold int test_init | ( | AVFilterContext * | ctx, | |
| const char * | args, | |||
| void * | opaque | |||
| ) | [static] |
Definition at line 337 of file vsrc_testsrc.c.
| static int test_query_formats | ( | AVFilterContext * | ctx | ) | [static] |
Definition at line 346 of file vsrc_testsrc.c.
| static const char* testsrc_get_name | ( | void * | ctx | ) | [static] |
Definition at line 154 of file vsrc_testsrc.c.
{
.name = "rgbtestsrc",
.description = NULL_IF_CONFIG_SMALL("Generate RGB test pattern."),
.priv_size = sizeof(TestSourceContext),
.init = rgbtest_init,
.query_formats = rgbtest_query_formats,
.inputs = (AVFilterPad[]) {{ .name = NULL}},
.outputs = (AVFilterPad[]) {{ .name = "default",
.type = AVMEDIA_TYPE_VIDEO,
.request_frame = request_frame,
.config_props = rgbtest_config_props, },
{ .name = NULL }},
}
Definition at line 482 of file vsrc_testsrc.c.
{
.name = "testsrc",
.description = NULL_IF_CONFIG_SMALL("Generate test pattern."),
.priv_size = sizeof(TestSourceContext),
.init = test_init,
.query_formats = test_query_formats,
.inputs = (AVFilterPad[]) {{ .name = NULL}},
.outputs = (AVFilterPad[]) {{ .name = "default",
.type = AVMEDIA_TYPE_VIDEO,
.request_frame = request_frame,
.config_props = config_props, },
{ .name = NULL }},
}
Definition at line 355 of file vsrc_testsrc.c.
const AVClass rgbtestsrc_class [static] |
{
.class_name = "RGBTestSourceContext",
.item_name = rgbtestsrc_get_name,
.option = testsrc_options,
}
Definition at line 381 of file vsrc_testsrc.c.
const AVClass testsrc_class [static] |
{
.class_name = "TestSourceContext",
.item_name = testsrc_get_name,
.option = testsrc_options,
}
Definition at line 159 of file vsrc_testsrc.c.
const AVOption testsrc_options[] [static] |
{
{ "size", "set video size", OFFSET(size), FF_OPT_TYPE_STRING, {.str = "320x240"}},
{ "s", "set video size", OFFSET(size), FF_OPT_TYPE_STRING, {.str = "320x240"}},
{ "rate", "set video rate", OFFSET(rate), FF_OPT_TYPE_STRING, {.str = "25"}, },
{ "r", "set video rate", OFFSET(rate), FF_OPT_TYPE_STRING, {.str = "25"}, },
{ "duration", "set video duration", OFFSET(duration), FF_OPT_TYPE_STRING, {.str = NULL}, },
{ "sar", "set video sample aspect ratio", OFFSET(sar), FF_OPT_TYPE_RATIONAL, {1}, 0, INT_MAX },
{ NULL },
}
Definition at line 60 of file vsrc_testsrc.c.