* [yavta PATCH 1/1] List supported formats with -f help
@ 2015-09-10 12:19 Sakari Ailus
2015-10-15 23:35 ` Laurent Pinchart
0 siblings, 1 reply; 2+ messages in thread
From: Sakari Ailus @ 2015-09-10 12:19 UTC (permalink / raw)
To: linux-media; +Cc: laurent.pinchart
Passing format "help" to the -f option will list the supported formats and
exit.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
---
yavta.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/yavta.c b/yavta.c
index 7d8ac8e..b627725 100644
--- a/yavta.c
+++ b/yavta.c
@@ -215,6 +215,20 @@ static struct v4l2_format_info {
{ "MPEG", V4L2_PIX_FMT_MPEG, 1 },
};
+static void list_formats(void)
+{
+ unsigned int i;
+
+ for (i = 0; i < ARRAY_SIZE(pixel_formats); i++)
+ printf("%s (\"%c%c%c%c\", %u planes)\n",
+ pixel_formats[i].name,
+ pixel_formats[i].fourcc & 0xff,
+ (pixel_formats[i].fourcc >> 8) & 0xff,
+ (pixel_formats[i].fourcc >> 16) & 0xff,
+ (pixel_formats[i].fourcc >> 24) & 0xff,
+ pixel_formats[i].n_planes);
+}
+
static const struct v4l2_format_info *v4l2_format_by_fourcc(unsigned int fourcc)
{
unsigned int i;
@@ -1734,6 +1748,7 @@ static void usage(const char *argv0)
printf("-C, --check-overrun Verify dequeued frames for buffer overrun\n");
printf("-d, --delay Delay (in ms) before requeuing buffers\n");
printf("-f, --format format Set the video format\n");
+ printf(" use -f help to list the supported formats\n");
printf("-F, --file[=name] Read/write frames from/to disk\n");
printf("\tFor video capture devices, the first '#' character in the file name is\n");
printf("\texpanded to the frame sequence number. The default file name is\n");
@@ -1899,6 +1914,10 @@ int main(int argc, char *argv[])
delay = atoi(optarg);
break;
case 'f':
+ if (!strcmp("help", optarg)) {
+ list_formats();
+ return 0;
+ }
do_set_format = 1;
info = v4l2_format_by_name(optarg);
if (info == NULL) {
--
2.1.0.231.g7484e3b
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [yavta PATCH 1/1] List supported formats with -f help
2015-09-10 12:19 [yavta PATCH 1/1] List supported formats with -f help Sakari Ailus
@ 2015-10-15 23:35 ` Laurent Pinchart
0 siblings, 0 replies; 2+ messages in thread
From: Laurent Pinchart @ 2015-10-15 23:35 UTC (permalink / raw)
To: Sakari Ailus; +Cc: linux-media
Hi Sakari,
On Thursday 10 September 2015 15:19:20 Sakari Ailus wrote:
> Passing format "help" to the -f option will list the supported formats and
> exit.
>
> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Applied, thank you.
> ---
> yavta.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/yavta.c b/yavta.c
> index 7d8ac8e..b627725 100644
> --- a/yavta.c
> +++ b/yavta.c
> @@ -215,6 +215,20 @@ static struct v4l2_format_info {
> { "MPEG", V4L2_PIX_FMT_MPEG, 1 },
> };
>
> +static void list_formats(void)
> +{
> + unsigned int i;
> +
> + for (i = 0; i < ARRAY_SIZE(pixel_formats); i++)
> + printf("%s (\"%c%c%c%c\", %u planes)\n",
> + pixel_formats[i].name,
> + pixel_formats[i].fourcc & 0xff,
> + (pixel_formats[i].fourcc >> 8) & 0xff,
> + (pixel_formats[i].fourcc >> 16) & 0xff,
> + (pixel_formats[i].fourcc >> 24) & 0xff,
> + pixel_formats[i].n_planes);
> +}
> +
> static const struct v4l2_format_info *v4l2_format_by_fourcc(unsigned int
> fourcc) {
> unsigned int i;
> @@ -1734,6 +1748,7 @@ static void usage(const char *argv0)
> printf("-C, --check-overrun Verify dequeued frames for buffer
> overrun\n"); printf("-d, --delay Delay (in ms) before requeuing
> buffers\n"); printf("-f, --format format Set the video format\n");
> + printf(" use -f help to list the supported formats\n");
> printf("-F, --file[=name] Read/write frames from/to disk\n");
> printf("\tFor video capture devices, the first '#' character in the file
> name is\n"); printf("\texpanded to the frame sequence number. The default
> file name is\n"); @@ -1899,6 +1914,10 @@ int main(int argc, char *argv[])
> delay = atoi(optarg);
> break;
> case 'f':
> + if (!strcmp("help", optarg)) {
> + list_formats();
> + return 0;
> + }
> do_set_format = 1;
> info = v4l2_format_by_name(optarg);
> if (info == NULL) {
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-10-15 23:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-10 12:19 [yavta PATCH 1/1] List supported formats with -f help Sakari Ailus
2015-10-15 23:35 ` Laurent Pinchart
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).