From d5e0f9b31e8a5da5b25a01bb1955314859c62760 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Wed, 5 Oct 2011 16:02:16 +0200 Subject: live: Make the number of video buffers configurable The -b argument can be used to set the number of video display buffers. Signed-off-by: Laurent Pinchart --- live.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'live.c') diff --git a/live.c b/live.c index 52c8cfd..90e0ab6 100644 --- a/live.c +++ b/live.c @@ -370,6 +370,7 @@ static void usage(const char *argv0) { printf("Usage: %s [options]\n", argv0); printf("Supported options:\n"); + printf("-b, --buffers n Use n display buffers\n"); printf("-h, --help Show this help screen\n"); printf("-s, --skip n Skip display of n frames out of n+1\n"); } @@ -385,6 +386,7 @@ int main(int argc __attribute__((__unused__)), char *argv[] __attribute__((__unu struct v4l2_mbus_framefmt view_format; struct v4l2_buffers_pool *pool = NULL; struct timespec start, end; + unsigned int buffers = 3; struct v4l2_rect rect; int exit_code = EXIT_FAILURE; const char *vo_devname; @@ -392,8 +394,11 @@ int main(int argc __attribute__((__unused__)), char *argv[] __attribute__((__unu int ret; int c; - while ((c = getopt_long(argc, argv, "hs:", opts, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "b:hs:", opts, NULL)) != -1) { switch (c) { + case 'b': + buffers = atoi(optarg); + break; case 'h': usage(argv[0]); return 0; @@ -450,7 +455,7 @@ int main(int argc __attribute__((__unused__)), char *argv[] __attribute__((__unu goto cleanup; } - vo = vo_init(vo_devname, &vo_ops, rect.width, rect.height); + vo = vo_init(vo_devname, &vo_ops, buffers, rect.width, rect.height); if (vo == NULL) { printf("error: unable to initialize video output\n"); goto cleanup; -- cgit v1.2.3