]> git.sesse.net Git - ffmpeg/blobdiff - tests/videogen.c
Rewrite main resampling loop (common and linear).
[ffmpeg] / tests / videogen.c
index 94e6e7759830c270841bf10264168c96421459e1..91da8b540c13d025f8e4659e62f3d1b91b9ed17a 100644 (file)
@@ -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;