[ITC][audio-io][ACR-1434][Add new enum for sample type/channel type] 14/215714/2
authormanoj <manoj.g2@samsung.com>
Mon, 14 Oct 2019 11:45:31 +0000 (17:15 +0530)
committershobhit verma <shobhit.v@samsung.com>
Mon, 14 Oct 2019 13:16:25 +0000 (13:16 +0000)
Change-Id: Ie6b2b0c7947bbec263a810b2effbc28047b329e2
Signed-off-by: manoj <manoj.g2@samsung.com>
src/itc/audio-io/ITs-audio-input_create_destroy.c
src/itc/audio-io/ITs-audio-output_create_destroy.c

index cc13d1ae33197ce04983e3524146a7ee410eba50..c35827d8323ed7e9ecbd21446ffee5348f5bc722 100755 (executable)
 // limitations under the License.
 //
 #include "ITs-audio-input-common.h"
+#define SAMPLE_RATE_44100 44100
+#define SAMPLE_RATE_48000 48000
+#define SAMPLE_RATE_192000 192000
+
+
+typedef struct audio_input_condition_s
+{
+    int sampleRate;
+    audio_channel_e channelType;
+    audio_sample_type_e sampleType;
+} audioInputCond;
 
 /** @addtogroup itc-audio-input
 *  @ingroup itc
@@ -86,42 +97,50 @@ int ITc_audio_in_create_destroy_p(void)
        START_TEST_NO_CHECK;
 
        audio_in_h pstAudioInputHandle = NULL;
-
-       audio_channel_e eAudioChannel[] = { AUDIO_CHANNEL_STEREO, AUDIO_CHANNEL_MONO };
-       audio_sample_type_e eAudioSampleRate[] = { AUDIO_SAMPLE_TYPE_U8, AUDIO_SAMPLE_TYPE_S16_LE, AUDIO_SAMPLE_TYPE_S24_LE, AUDIO_SAMPLE_TYPE_S24_32_LE };
-
-       int enum_size1 = sizeof(eAudioChannel) / sizeof(eAudioChannel[0]);
-       int enum_counter1 = 0;
-       int enum_size2 = sizeof(eAudioSampleRate) / sizeof(eAudioSampleRate[0]);
-       int enum_counter2 = 0;
-
-       for ( enum_counter1=0; enum_counter1<enum_size1; enum_counter1++ )
-       {
-               for ( enum_counter2=0; enum_counter2<enum_size2; enum_counter2++ )
+       int enum_counter = 0;
+       int nRet = -1;
+       audioInputCond audioCond[] = {
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S24_LE },     /* since 5.0 */
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S24_32_LE },  /* since 5.0 */
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MULTI_3, AUDIO_SAMPLE_TYPE_S16_LE },    /* since 5.5 */
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MULTI_4, AUDIO_SAMPLE_TYPE_S24_LE },    /* since 5.5 */
+               { SAMPLE_RATE_192000, AUDIO_CHANNEL_MULTI_5, AUDIO_SAMPLE_TYPE_S24_32_LE }, /* since 5.5 */
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MULTI_6, AUDIO_SAMPLE_TYPE_S32_LE },    /* since 5.5 */
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MULTI_7, AUDIO_SAMPLE_TYPE_S24_LE },    /* since 5.5 */
+               { SAMPLE_RATE_192000, AUDIO_CHANNEL_MULTI_8, AUDIO_SAMPLE_TYPE_S32_LE }     /* since 5.5 */
+       };
+       int enum_size = sizeof(audioCond) / sizeof(audioCond[0]);
+       for (enum_counter =0 ; enum_counter < enum_size; enum_counter++) {
+               nRet = audio_in_create(audioCond[enum_counter].sampleRate, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleType, &pstAudioInputHandle);
+               if ( nRet != AUDIO_IO_ERROR_NONE )
                {
-                       int nRet = audio_in_create(SAMPLE_RATE, eAudioChannel[enum_counter1], eAudioSampleRate[enum_counter2], &pstAudioInputHandle);                                           
-                       if ( nRet != AUDIO_IO_ERROR_NONE )
+                       if ( nRet == TIZEN_ERROR_NOT_SUPPORTED && g_bFeatureSupported == false )
                        {
-                               if ( nRet == TIZEN_ERROR_NOT_SUPPORTED && g_bFeatureSupported == false )
-                               {
-                                       FPRINTF("[Line : %d][%s] audio_in_create returns NOT SUPPORTED correctly", __LINE__, API_NAMESPACE);
-                                       continue;
-                               }
-                               FPRINTF("[Line : %d][%s] audio_in_create failed for eAudioChannel = %s and eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, AudioChannel(eAudioChannel[enum_counter1]), AudioSampleRate(eAudioSampleRate[enum_counter2]), AudioInputGetError(nRet));
-                               return 1;
-                       }
-                       if(pstAudioInputHandle == NULL)
-                       {
-                               FPRINTF("[Line : %d][%s] audio_in_create failed for eAudioChannel = %s and eAudioSampleRate = %s, pstAudioInputHandle is NULL\\n", __LINE__, API_NAMESPACE, AudioChannel(eAudioChannel[enum_counter1]), AudioSampleRate(eAudioSampleRate[enum_counter2]));
-                               return 1;
-                       }
-                       nRet = audio_in_destroy(pstAudioInputHandle);
-                       if ( nRet != AUDIO_IO_ERROR_NONE )
-                       {
-                               FPRINTF("[Line : %d][%s] audio_in_destroy failed for eAudioChannel = %s and eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, AudioChannel(eAudioChannel[enum_counter1]), AudioSampleRate(eAudioSampleRate[enum_counter2]), AudioInputGetError(nRet));
-                               return 1;
+                               FPRINTF("[Line : %d][%s] audio_in_create returns NOT SUPPORTED correctly", __LINE__, API_NAMESPACE);
+                               continue;
                        }
+                       FPRINTF("[Line : %d][%s] audio_in_create failed for eAudioChannel = %s and eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate, AudioInputGetError(nRet));
+                       return 1;
                }
+               if(pstAudioInputHandle == NULL)
+               {
+                       FPRINTF("[Line : %d][%s] audio_in_create failed for eAudioChannel = %s and eAudioSampleRate = %s, pstAudioInputHandle is NULL\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate);
+                       return 1;
+               }
+               nRet = audio_in_destroy(pstAudioInputHandle);
+               if ( nRet != AUDIO_IO_ERROR_NONE )
+               {
+                       FPRINTF("[Line : %d][%s] audio_in_destroy failed for eAudioChannel = %s and eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate, AudioInputGetError(nRet));
+                       return 1;
+}
        }
 
        return 0;
index 1efe1651d5f961eaa8986bd6e4d129d7a96aa083..43d07bc5b182cd5f94199763222116bc4f68f46a 100755 (executable)
 //
 #include "ITs-audio-output-common.h"
 
+#define SAMPLE_RATE_44100 44100
+#define SAMPLE_RATE_48000 48000
+#define SAMPLE_RATE_192000 192000
+
+
+typedef struct audio_output_condition_s
+{
+    int sampleRate;
+    audio_channel_e channelType;
+    audio_sample_type_e sampleType;
+} audioOutputCond;
+
+
 /** @addtogroup itc-audio-output
 *  @ingroup itc
 *  @{
@@ -83,37 +96,40 @@ int ITc_audio_out_create_new_destroy_p(void)
        START_TEST_NO_CHECK;
 
        audio_out_h pstAudioOutputHandle;
+       int enum_counter = 0;
+       audioOutputCond audioCond[] = {
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S16_LE },
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_U8 },
+               { SAMPLE_RATE_44100, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S24_LE },    /* since 5.0 */
+               { SAMPLE_RATE_48000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S24_32_LE }, /* since 5.0 */
+               { SAMPLE_RATE_192000, AUDIO_CHANNEL_STEREO, AUDIO_SAMPLE_TYPE_S32_LE },    /* since 5.5 */
+       };
+       int enum_size = sizeof(audioCond) / sizeof(audioCond[0]);
 
-       audio_channel_e eAudioChannel[] = { AUDIO_CHANNEL_STEREO, AUDIO_CHANNEL_MONO };
-       audio_sample_type_e eAudioSampleRate[] = { AUDIO_SAMPLE_TYPE_U8, AUDIO_SAMPLE_TYPE_S16_LE, AUDIO_SAMPLE_TYPE_S24_LE, AUDIO_SAMPLE_TYPE_S24_32_LE };
-
-       int enum_size1 = sizeof(eAudioChannel) / sizeof(eAudioChannel[0]);
-       int enum_counter1 = 0;
-       int enum_size2 = sizeof(eAudioSampleRate) / sizeof(eAudioSampleRate[0]);
-       int enum_counter2 = 0;
-
-       for ( enum_counter1=0; enum_counter1<enum_size1; enum_counter1++ )
-       {
-               for ( enum_counter2=0; enum_counter2<enum_size2; enum_counter2++ )
+       for (enum_counter =0 ; enum_counter < enum_size; enum_counter++) {
+               int nRet = audio_out_create_new(audioCond[enum_counter].sampleRate, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleType, &pstAudioOutputHandle);
+               if ( nRet != AUDIO_IO_ERROR_NONE )
+               {
+                       FPRINTF("[Line : %d][%s] audio_out_create_new failed for eAudioChannel = %s, eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate, AudioOutputGetError(nRet));
+                       return 1;
+               }
+               if(pstAudioOutputHandle == NULL)
                {
-                       int nRet = audio_out_create_new(SAMPLE_RATE, eAudioChannel[enum_counter1], eAudioSampleRate[enum_counter2], &pstAudioOutputHandle);
-                       if ( nRet != AUDIO_IO_ERROR_NONE )
-                       {
-                               FPRINTF("[Line : %d][%s] audio_out_create_new failed for eAudioChannel = %s, eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, AudioOutputChannel(eAudioChannel[enum_counter1]), AudioOutputSampleRate(eAudioSampleRate[enum_counter2]), AudioOutputGetError(nRet));
-                               return 1;
-                       }
-                       if(pstAudioOutputHandle == NULL)
-                       {
-                               FPRINTF("[Line : %d][%s] audio_out_create_new failed for eAudioChannel = %s and eAudioSampleRate = %s, pstAudioOutputHandle is NULL\\n", __LINE__, API_NAMESPACE, AudioOutputChannel(eAudioChannel[enum_counter1]), AudioOutputSampleRate(eAudioSampleRate[enum_counter2]));
-                               return 1;
-                       }
+                       FPRINTF("[Line : %d][%s] audio_out_create_new failed for eAudioChannel = %s, eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate, AudioOutputGetError(nRet));
+                       return 1;
+               }
 
-                       nRet = audio_out_destroy(pstAudioOutputHandle);
-                       if ( nRet != AUDIO_IO_ERROR_NONE )
-                       {
-                               FPRINTF("[Line : %d][%s] audio_out_destroy failed for eAudioChannel = %s, eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, AudioOutputChannel(eAudioChannel[enum_counter1]), AudioOutputSampleRate(eAudioSampleRate[enum_counter2]), AudioOutputGetError(nRet));
-                               return 1;
-                       }
+               nRet = audio_out_destroy(pstAudioOutputHandle);
+               if ( nRet != AUDIO_IO_ERROR_NONE )
+               {
+                       FPRINTF("[Line : %d][%s] audio_out_destroy failed for eAudioChannel = %s, eAudioSampleRate = %s, error returned = %s\\n", __LINE__, API_NAMESPACE, audioCond[enum_counter].channelType, audioCond[enum_counter].sampleRate, AudioOutputGetError(nRet));
+                       return 1;
                }
        }