66 "See also capture filter " TBOLD(
"ratelimit")
".\n\n");
68 printf(
"\tevery:numerator[/denominator]\n\n");
69 printf(
"Example: every:2 - every second frame will be dropped\n");
70 printf(
"The special case every:0 can be used to discard all frames\n");
79 if (strlen(cfg) == 0) {
83 if(strcasecmp(cfg,
"help") == 0) {
88 if(strchr(cfg,
'/')) {
89 denom = atoi(strchr(cfg,
'/') + 1);
91 if (denom > n && n != 0) {
93 "(or equal, which, however, has a little use) than denominator.\n");
struct video_frame * frame
void vf_free(struct video_frame *buf)
Frees video_frame structure.
struct video_desc video_desc_from_frame(const struct video_frame *frame)
Returns struct video_desc from video frame.
struct video_frame * vf_alloc_desc(struct video_desc desc)
Allocates video frame accordig given desc.
#define CAPTURE_FILTER_ABI_VERSION
int color_printf(const char *format,...)
void log_msg(int level, const char *format,...)
#define LOG_LEVEL_ERROR
general errors
static struct video_frame * filter(void *state, struct video_frame *in)
static const struct capture_filter_info capture_filter_every
static void done(void *state)
static void dispose_frame(struct video_frame *f)
static int init(struct module *parent, const char *cfg, void **state)
@ LIBRARY_CLASS_CAPTURE_FILTER
#define REGISTER_MODULE(name, info, lclass, abi)
Registers module to global modules' registry.
Struct tile is an area of video_frame.
void(* dispose)(struct video_frame *)
Struct video_frame represents a video frame and contains video description.
struct tile tiles[FLEXIBLE_ARRAY_MEMBER]
struct video_frame_callbacks callbacks
This is an umbrella header for video functions.
#define VIDEO_FRAME_DISPOSE(frame)