camera_test: Add new setting menu for encoded preview 34/313534/1
authorJeongmo Yang <jm80.yang@samsung.com>
Tue, 16 Jan 2024 01:44:34 +0000 (10:44 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Thu, 27 Jun 2024 06:43:30 +0000 (15:43 +0900)
- Added menu
 : 'M'. Encoded preview bitrate
 : 'N'. Encoded preview GOP interval

[Version] 1.0.3
[Issue Type] test

Change-Id: I0998cb2bbf5029aaf077c67ba1f2420d5643075c
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
packaging/capi-media-camera.spec
test/camera_test.c

index 75d5fa3267216c86c276802266c1202f4647e9b0..4fa4a38614c185359fb6430d2440b604c608fc46 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-camera
 Summary:    A Camera API
-Version:    1.0.2
+Version:    1.0.3
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index 0108f26545b33de135c454594b757b2c944244aa..c7c1d34ed22708dd7a25bf199144d5d0816d106c 100644 (file)
@@ -930,6 +930,8 @@ void print_menu()
                g_print("\t     'B' Extra preview bitrate\n");
                g_print("\t     'V' Extra preview GOP interval\n");
                g_print("\t     'D' Request codec config\n");
+               g_print("\t     'M' Encoded preview bitrate\n");
+               g_print("\t     'N' Encoded preview GOP(Group Of Pictures) interval(ms)\n");
                g_print("\t  >>>>>>>>>>>>>>>>>>>> [Display/Filter]\n");
                g_print("\t     'v' Visible \n");
                g_print("\t     'o' Output mode \n");
@@ -1396,6 +1398,69 @@ static void setting_menu(gchar buf)
                        break;
                }
                break;
+       case 'M': /* Setting > Set encoded preview bitrate */
+               g_print("* Set encoded preview bitrate\n");
+
+               err = camera_attr_get_encoded_preview_bitrate(hcamcorder->camera, &bitrate);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("\tFailed to get encoded preview bitrate\n");
+                       break;
+               }
+
+               g_print("\tCurrent bitrate[%d]bps\n", bitrate);
+
+               g_print("\tSet new bitrate(bps) : ");
+               err = scanf("%d", &bitrate);
+               flush_stdin();
+
+               err = camera_attr_set_encoded_preview_bitrate(hcamcorder->camera, bitrate);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("* Set Error : 0x%x\n", err);
+                       break;
+               }
+
+               bitrate = -1;
+
+               err = camera_attr_get_encoded_preview_bitrate(hcamcorder->camera, &bitrate);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("* Get Error : 0x%x\n", err);
+                       break;
+               }
+
+               g_print("\tResult bitrate[%d]bps\n", bitrate);
+               break;
+
+       case 'N': /* Setting > Set encoded preview GOP interval */
+               g_print("* Set encoded preview GOP interval\n");
+
+               err = camera_attr_get_encoded_preview_gop_interval(hcamcorder->camera, &interval);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("\tFailed to get encoded preview GOP interval\n");
+                       break;
+               }
+
+               g_print("\tCurrent GOP interval[%d]ms\n", interval);
+
+               g_print("\tSet new GOP interval(ms) : ");
+               err = scanf("%d", &interval);
+               flush_stdin();
+
+               err = camera_attr_set_encoded_preview_gop_interval(hcamcorder->camera, interval);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("* Set Error : 0x%x\n", err);
+                       break;
+               }
+
+               interval = -1;
+
+               err = camera_attr_get_encoded_preview_gop_interval(hcamcorder->camera, &interval);
+               if (err != CAMERA_ERROR_NONE) {
+                       g_print("* Get Error : 0x%x\n", err);
+                       break;
+               }
+
+               g_print("\tResult GOP interval[%d]ms\n", interval);
+               break;
                /* Display / Filter setting */
        case 'v': /* Display visible */
                g_print("* Display visible setting !\n");