|
From: libvidcap c. m. <lib...@li...> - 2007-09-26 13:55:16
|
Revision: 32
http://libvidcap.svn.sourceforge.net/libvidcap/?rev=32&view=rev
Author: bcholew
Date: 2007-09-26 06:54:23 -0700 (Wed, 26 Sep 2007)
Log Message:
-----------
Give each conversion function a descriptive name. Add function to retrieve name. Log the conversion name at bind time.
Modified Paths:
--------------
trunk/src/conv.c
trunk/src/conv.h
trunk/src/vidcap.c
Modified: trunk/src/conv.c
===================================================================
--- trunk/src/conv.c 2007-09-26 13:50:10 UTC (rev 31)
+++ trunk/src/conv.c 2007-09-26 13:54:23 UTC (rev 32)
@@ -36,23 +36,35 @@
int src_fourcc;
int dst_fourcc;
conv_func func;
+ const char *name;
};
static const struct conv_info conv_list[] =
{
- { VIDCAP_FOURCC_I420, VIDCAP_FOURCC_RGB32, vidcap_i420_to_rgb32 },
- { VIDCAP_FOURCC_YUY2, VIDCAP_FOURCC_RGB32, vidcap_yuy2_to_rgb32 },
- { VIDCAP_FOURCC_RGB32, VIDCAP_FOURCC_I420, vidcap_rgb32_to_i420 },
- { VIDCAP_FOURCC_YUY2, VIDCAP_FOURCC_I420, vidcap_yuy2_to_i420 },
- { VIDCAP_FOURCC_I420, VIDCAP_FOURCC_YUY2, vidcap_i420_to_yuy2 },
- { VIDCAP_FOURCC_RGB32, VIDCAP_FOURCC_YUY2, vidcap_rgb32_to_yuy2 },
+ { VIDCAP_FOURCC_I420, VIDCAP_FOURCC_RGB32, vidcap_i420_to_rgb32,
+ "i420->rgb32" },
+ { VIDCAP_FOURCC_YUY2, VIDCAP_FOURCC_RGB32, vidcap_yuy2_to_rgb32,
+ "yuy2->rgb32" },
+ { VIDCAP_FOURCC_RGB32, VIDCAP_FOURCC_I420, vidcap_rgb32_to_i420,
+ "rgb32->i420" },
+ { VIDCAP_FOURCC_YUY2, VIDCAP_FOURCC_I420, vidcap_yuy2_to_i420,
+ "yuy2->i420" },
+ { VIDCAP_FOURCC_I420, VIDCAP_FOURCC_YUY2, vidcap_i420_to_yuy2,
+ "i420->yuy2" },
+ { VIDCAP_FOURCC_RGB32, VIDCAP_FOURCC_YUY2, vidcap_rgb32_to_yuy2,
+ "rgb32->yuy2 (not implemented!)" },
- { VIDCAP_FOURCC_2VUY, VIDCAP_FOURCC_YUY2, conv_2vuy_to_yuy2 },
- { VIDCAP_FOURCC_2VUY, VIDCAP_FOURCC_I420, conv_2vuy_to_i420 },
- { VIDCAP_FOURCC_RGB24, VIDCAP_FOURCC_RGB32, conv_rgb24_to_rgb32 },
- { VIDCAP_FOURCC_BOTTOM_UP_RGB24, VIDCAP_FOURCC_RGB32, conv_bottom_up_rgb24_to_rgb32 },
+ { VIDCAP_FOURCC_2VUY, VIDCAP_FOURCC_YUY2, conv_2vuy_to_yuy2,
+ "2vuy->yuy2" },
+ { VIDCAP_FOURCC_2VUY, VIDCAP_FOURCC_I420, conv_2vuy_to_i420,
+ "2vuy->i420" },
+ { VIDCAP_FOURCC_RGB24, VIDCAP_FOURCC_RGB32, conv_rgb24_to_rgb32,
+ "rgb24->rgb32" },
+ { VIDCAP_FOURCC_BOTTOM_UP_RGB24, VIDCAP_FOURCC_RGB32,
+ conv_bottom_up_rgb24_to_rgb32, "bottom-up rgb24->rgb32" },
- { VIDCAP_FOURCC_YVU9, VIDCAP_FOURCC_I420, conv_yvu9_to_i420 },
+ { VIDCAP_FOURCC_YVU9, VIDCAP_FOURCC_I420, conv_yvu9_to_i420,
+ "yvu9->i420" },
};
static const int conv_list_len = sizeof(conv_list) / sizeof(struct conv_info);
@@ -99,3 +111,18 @@
}
}
+const char *
+conv_conversion_name_get(conv_func function)
+{
+ int i;
+
+ for ( i = 0; i < conv_list_len; ++i )
+ {
+ const struct conv_info * ci = &conv_list[i];
+
+ if ( ci->func == function )
+ return ci->name;
+ }
+
+ return "(ERROR: Conversion name not found)";
+}
Modified: trunk/src/conv.h
===================================================================
--- trunk/src/conv.h 2007-09-26 13:50:10 UTC (rev 31)
+++ trunk/src/conv.h 2007-09-26 13:54:23 UTC (rev 32)
@@ -50,6 +50,9 @@
int
conv_fmt_size_get(int width, int height, int fourcc);
+const char *
+conv_conversion_name_get(conv_func function);
+
#ifdef __cplusplus
}
#endif
Modified: trunk/src/vidcap.c
===================================================================
--- trunk/src/vidcap.c 2007-09-26 13:50:10 UTC (rev 31)
+++ trunk/src/vidcap.c 2007-09-26 13:54:23 UTC (rev 32)
@@ -414,6 +414,9 @@
log_oom(__FILE__, __LINE__);
return -1;
}
+
+ log_info("format bind requires conversion: %s\n",
+ conv_conversion_name_get(src_ctx->fmt_conv_func));
}
src_ctx->src_state = src_bound;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|