Use array retrieve subfunction 37/238737/9
authorSangchul Lee <sc11.lee@samsung.com>
Fri, 17 Jul 2020 01:14:49 +0000 (10:14 +0900)
committerSangchul Lee <sc11.lee@samsung.com>
Tue, 21 Jul 2020 02:39:16 +0000 (11:39 +0900)
[Version] 0.1.98
[Issue Type] Refactoring

Change-Id: Icb4d56761666d6bccced1bc5537be0f46061681d
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
packaging/capi-media-streamer.spec
src/media_streamer_util.c

index 8fc4bd5..dee0fc4 100644 (file)
@@ -1,6 +1,6 @@
 Name:       capi-media-streamer
 Summary:    A Media Streamer API
-Version:    0.1.97
+Version:    0.1.98
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index 7cd5b2f..d59ab93 100644 (file)
@@ -223,18 +223,24 @@ void ms_load_ini_settings(media_streamer_ini_t *ini)
 
 }
 
-const gchar *ms_convert_audio_mime_to_string_format(media_format_mimetype_e mime)
+static const gchar *__ms_find_item(const format_s table[], media_format_mimetype_e mime)
 {
-       gchar *format_name = NULL;
-       int it_format;
+       int index;
 
-       for (it_format = 0; audio_format_table[it_format].format != MEDIA_FORMAT_MAX; it_format++) {
-               if (mime == audio_format_table[it_format].format) {
-                       format_name = audio_format_table[it_format].format_name;
-                       break;
+       for (index = 0; table[index].format != MEDIA_FORMAT_MAX; index++) {
+               if (mime == table[index].format) {
+                       ms_debug("found, mime[0x%x] format_name[%s]", mime, table[index].format_name);
+                       return table[index].format_name;
                }
        }
 
+       return NULL;
+}
+
+const gchar *ms_convert_audio_mime_to_string_format(media_format_mimetype_e mime)
+{
+       const gchar *format_name = __ms_find_item(audio_format_table, mime);
+
        if (!format_name)
                ms_warning("Not supported this mimetype[0x%x]", mime);
        else
@@ -245,7 +251,7 @@ const gchar *ms_convert_audio_mime_to_string_format(media_format_mimetype_e mime
 
 const gchar *ms_convert_video_mime_to_string_format(media_format_mimetype_e mime, const char *node_name)
 {
-       gchar *format_name = NULL;
+       const gchar *format_name = NULL;
        int index;
        gboolean use_zerocopy_fmt = DEFAULT_USE_ZEROCOPY;
        gboolean need_to_check_zerocopy_format = FALSE;
@@ -268,20 +274,14 @@ const gchar *ms_convert_video_mime_to_string_format(media_format_mimetype_e mime
        }
 
        if (need_to_check_zerocopy_format) {
-               for (index = 0; zerocopy_video_format_table[index].format != MEDIA_FORMAT_MAX; index++) {
-                       if (mime == zerocopy_video_format_table[index].format) {
-                               format_name = zerocopy_video_format_table[index].format_name;
-                               ms_debug("mime[0x%x] -> zerocopy format[%s]", mime, format_name);
-                               break;
-                       }
-               }
+               format_name = __ms_find_item(zerocopy_video_format_table, mime);
                if (format_name) {
                        gchar **zerocopy_formats = NULL;
                        ms_ini_read_list("general:zerocopy formats", &zerocopy_formats);
 
                        for (index = 0; zerocopy_formats && zerocopy_formats[index]; index++) {
                                if (!strcmp(format_name, zerocopy_formats[index])) {
-                                       ms_info("zerocopy format[%s]", format_name);
+                                       ms_info("mimetype[0x%x] -> zerocopy format[%s]", mime, format_name);
                                        g_strfreev(zerocopy_formats);
                                        return format_name;
                                }
@@ -293,12 +293,7 @@ const gchar *ms_convert_video_mime_to_string_format(media_format_mimetype_e mime
                }
        }
 
-       for (index = 0; video_format_table[index].format != MEDIA_FORMAT_MAX; index++) {
-               if (mime == video_format_table[index].format) {
-                       format_name = video_format_table[index].format_name;
-                       break;
-               }
-       }
+       format_name = __ms_find_item(video_format_table, mime);
 
        if (!format_name)
                ms_warning("Not supported this mimetype[0x%x]", mime);
@@ -310,15 +305,7 @@ const gchar *ms_convert_video_mime_to_string_format(media_format_mimetype_e mime
 
 const gchar *ms_convert_container_mime_to_string_format(media_format_mimetype_e mime)
 {
-       gchar *format_name = NULL;
-       int it_format;
-
-       for (it_format = 0; container_format_table[it_format].format != MEDIA_FORMAT_MAX; it_format++) {
-               if (mime == container_format_table[it_format].format) {
-                       format_name = container_format_table[it_format].format_name;
-                       break;
-               }
-       }
+       const gchar *format_name = __ms_find_item(container_format_table, mime);
 
        if (!format_name)
                ms_warning("Not supported this mimetype[0x%x]", mime);