From bf7e9cc82a8482ae2811bfb86408026967acecdb Mon Sep 17 00:00:00 2001 From: Christophe Gisquet Date: Thu, 29 May 2014 18:48:39 +0200 Subject: tests: allow passing dimensions to videogen Signed-off-by: Michael Niedermayer --- tests/videogen.c | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/videogen.c b/tests/videogen.c index 94e6e77598..91da8b540c 100644 --- a/tests/videogen.c +++ b/tests/videogen.c @@ -141,23 +141,37 @@ static void gen_image(int num, int w, int h) } } +void print_help(const char* name) +{ + printf("usage: %s file|dir [w=%i] [h=%i]\n" + "generate a test video stream\n", + name, DEFAULT_WIDTH, DEFAULT_HEIGHT); + exit(1); +} + int main(int argc, char **argv) { int w, h, i; char buf[1024]; int isdir = 0; - if (argc != 2) { - printf("usage: %s file|dir\n" - "generate a test video stream\n", argv[0]); - exit(1); + if (argc < 2 || argc > 4) { + print_help(argv[0]); } if (!freopen(argv[1], "wb", stdout)) isdir = 1; w = DEFAULT_WIDTH; + if(argc > 2) { + w = atoi(argv[2]); + if (w < 1) print_help(argv[0]); + } h = DEFAULT_HEIGHT; + if(argc > 3) { + h = atoi(argv[3]); + if (h < 1) print_help(argv[0]); + } rgb_tab = malloc(w * h * 3); wrap = w * 3; -- cgit v1.2.3