Add new pixel types and ini file 00/278300/6 accepted/tizen/unified/20220721.135002 submit/tizen/20220721.053512
authorKwanghoon Son <k.son@samsung.com>
Tue, 19 Jul 2022 00:31:17 +0000 (20:31 -0400)
committerKwanghoon Son <k.son@samsung.com>
Thu, 21 Jul 2022 04:45:01 +0000 (00:45 -0400)
[Issue type] new enum type

Change-Id: Ic89d990eff83d763ab9bd87ec3dcb4f852c3722e
Signed-off-by: Kwanghoon Son <k.son@samsung.com>
include/vision_source.h
include/vision_source_interface.h
packaging/vision-source.spec
vision_source.ini

index 6053c36..231282d 100644 (file)
@@ -24,22 +24,22 @@ extern "C"
 {
 #endif
 
-       int vision_source_init(vision_source_h *handle);
-       int vision_source_exit(vision_source_h handle);
-       int vision_source_open_device(vision_source_h handle, int device_index);
-       int vision_source_close_device(vision_source_h handle);
-       int vision_source_start_stream(vision_source_h handle, stream_cb callback,
-                                                                  void *user_data);
-       int vision_source_stop_stream(vision_source_h handle);
-       int vision_source_enumerate_devices(
-                       vision_source_h handle,
-                       vision_source_device_info_list_s *info_list);
-       int vision_source_set_stream_format(vision_source_h handle,
-                                                                               vision_source_format_s *format);
-       int vision_source_get_capture_frame(vision_source_h handle,
-                                                                               vision_source_buffer_s *buffer);
-       int vision_source_release_capture_frame(vision_source_h handle,
-                                                                                       int buffer_index);
+int vision_source_init(vision_source_h *handle);
+int vision_source_exit(vision_source_h handle);
+int vision_source_open_device(vision_source_h handle, int device_index);
+int vision_source_close_device(vision_source_h handle);
+int vision_source_start_stream(vision_source_h handle, stream_cb callback,
+                                                               void *user_data);
+int vision_source_stop_stream(vision_source_h handle);
+int vision_source_enumerate_devices(
+               vision_source_h handle,
+               vision_source_device_info_list_s *info_list);
+int vision_source_set_stream_format(vision_source_h handle,
+                                                                       vision_source_format_s *format);
+int vision_source_get_capture_frame(vision_source_h handle,
+                                                                       vision_source_buffer_s *buffer);
+int vision_source_release_capture_frame(vision_source_h handle,
+                                                                               int buffer_index);
 
 #ifdef __cplusplus
 }
index 24510e5..f8716db 100644 (file)
@@ -31,141 +31,147 @@ extern "C"
 {
 #endif
 
-       typedef struct vision_source_resolution
-       {
-               uint32_t width;
-               uint32_t height;
-       } vision_source_resolution_s;
-
-       typedef enum vision_source_pixel_format
-       {
-               VISION_SOURCE_PIXEL_FORMAT_RGB24 = 0x0000,
-               VISION_SOURCE_PIXEL_FORMAT_MAX
-       } vision_source_pixel_format_e;
-
-       typedef struct vision_source_pixel_format_list
-       {
-               uint32_t count;
-               vision_source_pixel_format_e
-                               pixel_formats[VISION_SOURCE_PIXEL_FORMAT_MAX];
-       } vision_source_pixel_format_list_s;
-
-       typedef struct vision_source_resolution_list
-       {
-               uint32_t count;
-               vision_source_resolution_s resolutions[RESOLUTION_COUNT_MAX];
-       } vision_source_resolution_list_s;
-
-       typedef struct vision_source_fps_list
-       {
-               uint32_t count;
-               int fps[FPS_COUNT_MAX];
-       } vision_source_fps_list_s;
-
-       typedef struct vision_source_resolution_match_fps
-       {
-               vision_source_resolution_s resolution;
-               vision_source_fps_list_s fps_list;
-       } vision_source_resolution_match_fps_s;
-
-       typedef struct vision_source_resolution_match_fps_list
-       {
-               uint32_t count;
-               vision_source_resolution_match_fps_s resolutions[RESOLUTION_COUNT_MAX];
-       } vision_source_resolution_match_fps_list_s;
-
-       typedef struct vision_source_pixel_match_resolution
-       {
-               vision_source_pixel_format_e pixel_format;
-               vision_source_resolution_match_fps_list_s resolution_list;
-       } vision_source_pixel_match_resolution_s;
-
-       typedef struct vision_source_pixel_match_resolution_list
-       {
-               uint32_t count;
-               vision_source_pixel_match_resolution_s
-                               pixels[VISION_SOURCE_PIXEL_FORMAT_MAX];
-       } vision_source_pixel_match_resolution_list_s;
-
-       typedef struct vision_source_device_info
-       {
-               uint32_t index;
-               char name[DEVICE_NAME_LENGTH_MAX];
-               char node_path[DEVICE_NODE_PATH_LENGTH_MAX];
-               vision_source_pixel_match_resolution_list_s pixel_list;
-       } vision_source_device_info_s;
-
-       typedef struct vision_source_device_info_list
-       {
-               uint32_t count;
-               vision_source_device_info_s device_info[DEVICE_COUNT_MAX];
-       } vision_source_device_info_list_s;
-
-       typedef struct vision_source_plane
-       {
-               unsigned char *data;
-               uint32_t align_width;
-               uint32_t align_height;
-               uint32_t size;
-               uint32_t used_size;
-       } vision_source_plane_s;
-
-       typedef struct vision_source_format
-       {
-               vision_source_pixel_format_e pixel_format;
-               vision_source_resolution_s resolution;
-               uint32_t fps;
-               uint32_t quality;
-               uint32_t bitrate;
-       } vision_source_format_s;
-
-       typedef struct vision_source_buffer
-       {
-               int index;
-               vision_source_pixel_format_e pixel_format;
-               vision_source_resolution_s resolution;
-               uint32_t total_size;
-               uint32_t num_planes;
-               vision_source_plane_s planes[BUFFER_PLANE_MAX];
-               // uint32_t num_bos;
-               // void *bos[BUFFER_PLANE_MAX];
-       } vision_source_buffer_s;
-
-       typedef enum vision_source_error
-       {
-               VISION_SOURCE_ERROR_NONE = 0,
-               VISION_SOURCE_ERROR_INVALID_PARAMETER,
-               VISION_SOURCE_ERROR_INTERNAL,
-               VISION_SOURCE_ERROR_NOT_IMPLEMENTED,
-               VISION_SOURCE_ERROR_UNKNOWN
-       } vision_source_error_e;
-
-       typedef void *vision_source_h;
-
-       typedef int (*stream_cb)(vision_source_buffer_s *buffer, void *user_data);
-
-       typedef struct vision_source_func
-       {
-               int (*init)(vision_source_h *handle);
-               int (*exit)(vision_source_h handle);
-               int (*open_device)(vision_source_h handle, int device_index);
-               int (*close_device)(vision_source_h handle);
-
-               int (*enumerate_devices)(vision_source_h handle,
-                                                                vision_source_device_info_list_s *info_list);
-               int (*set_stream_format)(vision_source_h handle,
-                                                                vision_source_format_s *format);
-
-               int (*start_stream)(vision_source_h handle, stream_cb callback,
-                                                       void *user_data);
-               int (*stop_stream)(vision_source_h handle);
-
-               int (*get_capture_frame)(vision_source_h handle,
-                                                                vision_source_buffer_s *buffer);
-               int (*release_capture_frame)(vision_source_h handle, int buffer_index);
-       } vision_source_func_s;
-
-       void attach_backend(vision_source_func_s *funcp);
+typedef struct vision_source_resolution
+{
+       uint32_t width;
+       uint32_t height;
+} vision_source_resolution_s;
+
+typedef enum vision_source_pixel_format
+{
+       VISION_SOURCE_PIXEL_FORMAT_RGB24 = 0x0000,
+       VISION_SOURCE_PIXEL_FORMAT_GREY,
+       VISION_SOURCE_PIXEL_FORMAT_Y10,
+       VISION_SOURCE_PIXEL_FORMAT_NV12,
+       VISION_SOURCE_PIXEL_FORMAT_NV21,
+       VISION_SOURCE_PIXEL_FORMAT_YVU420, //YV12
+       VISION_SOURCE_PIXEL_FORMAT_YUV420, //I420
+       VISION_SOURCE_PIXEL_FORMAT_MAX
+} vision_source_pixel_format_e;
+
+typedef struct vision_source_pixel_format_list
+{
+       uint32_t count;
+       vision_source_pixel_format_e
+                       pixel_formats[VISION_SOURCE_PIXEL_FORMAT_MAX];
+} vision_source_pixel_format_list_s;
+
+typedef struct vision_source_resolution_list
+{
+       uint32_t count;
+       vision_source_resolution_s resolutions[RESOLUTION_COUNT_MAX];
+} vision_source_resolution_list_s;
+
+typedef struct vision_source_fps_list
+{
+       uint32_t count;
+       int fps[FPS_COUNT_MAX];
+} vision_source_fps_list_s;
+
+typedef struct vision_source_resolution_match_fps
+{
+       vision_source_resolution_s resolution;
+       vision_source_fps_list_s fps_list;
+} vision_source_resolution_match_fps_s;
+
+typedef struct vision_source_resolution_match_fps_list
+{
+       uint32_t count;
+       vision_source_resolution_match_fps_s resolutions[RESOLUTION_COUNT_MAX];
+} vision_source_resolution_match_fps_list_s;
+
+typedef struct vision_source_pixel_match_resolution
+{
+       vision_source_pixel_format_e pixel_format;
+       vision_source_resolution_match_fps_list_s resolution_list;
+} vision_source_pixel_match_resolution_s;
+
+typedef struct vision_source_pixel_match_resolution_list
+{
+       uint32_t count;
+       vision_source_pixel_match_resolution_s
+                       pixels[VISION_SOURCE_PIXEL_FORMAT_MAX];
+} vision_source_pixel_match_resolution_list_s;
+
+typedef struct vision_source_device_info
+{
+       uint32_t index;
+       char name[DEVICE_NAME_LENGTH_MAX];
+       char node_path[DEVICE_NODE_PATH_LENGTH_MAX];
+       vision_source_pixel_match_resolution_list_s pixel_list;
+} vision_source_device_info_s;
+
+typedef struct vision_source_device_info_list
+{
+       uint32_t count;
+       vision_source_device_info_s device_info[DEVICE_COUNT_MAX];
+} vision_source_device_info_list_s;
+
+typedef struct vision_source_plane
+{
+       unsigned char *data;
+       uint32_t align_width;
+       uint32_t align_height;
+       uint32_t size;
+       uint32_t used_size;
+} vision_source_plane_s;
+
+typedef struct vision_source_format
+{
+       vision_source_pixel_format_e pixel_format;
+       vision_source_resolution_s resolution;
+       uint32_t fps;
+       uint32_t quality;
+       uint32_t bitrate;
+} vision_source_format_s;
+
+typedef struct vision_source_buffer
+{
+       int index;
+       vision_source_pixel_format_e pixel_format;
+       vision_source_resolution_s resolution;
+       uint32_t total_size;
+       uint32_t num_planes;
+       vision_source_plane_s planes[BUFFER_PLANE_MAX];
+       // uint32_t num_bos;
+       // void *bos[BUFFER_PLANE_MAX];
+} vision_source_buffer_s;
+
+typedef enum vision_source_error
+{
+       VISION_SOURCE_ERROR_NONE = 0,
+       VISION_SOURCE_ERROR_INVALID_PARAMETER,
+       VISION_SOURCE_ERROR_INTERNAL,
+       VISION_SOURCE_ERROR_NOT_IMPLEMENTED,
+       VISION_SOURCE_ERROR_UNKNOWN
+} vision_source_error_e;
+
+typedef void *vision_source_h;
+
+typedef int (*stream_cb)(vision_source_buffer_s *buffer, void *user_data);
+
+typedef struct vision_source_func
+{
+       int (*init)(vision_source_h *handle);
+       int (*exit)(vision_source_h handle);
+       int (*open_device)(vision_source_h handle, int device_index);
+       int (*close_device)(vision_source_h handle);
+
+       int (*enumerate_devices)(vision_source_h handle,
+                                                               vision_source_device_info_list_s *info_list);
+       int (*set_stream_format)(vision_source_h handle,
+                                                               vision_source_format_s *format);
+
+       int (*start_stream)(vision_source_h handle, stream_cb callback,
+                                               void *user_data);
+       int (*stop_stream)(vision_source_h handle);
+
+       int (*get_capture_frame)(vision_source_h handle,
+                                                               vision_source_buffer_s *buffer);
+       int (*release_capture_frame)(vision_source_h handle, int buffer_index);
+} vision_source_func_s;
+
+void attach_backend(vision_source_func_s *funcp);
 
 #ifdef __cplusplus
 }
index 9c5c86e..d7735d9 100644 (file)
@@ -1,6 +1,6 @@
 Name:        vision-source
 Summary:     vision source
-Version:     0.0.5
+Version:     0.0.6
 Release:     0
 Group:       Multimedia/Framework
 License:     Apache-2.0
index 7c34e1b..9ebb04d 100644 (file)
@@ -1,2 +1,9 @@
 [Common]
-name = "v4l2";
\ No newline at end of file
+name = "v4l2";
+
+[Stream]
+dev_id = 0;
+width = 640;
+height = 480;
+fps = 30;
+pixel_format = 0;
\ No newline at end of file