MediaPropertiesTest.java revision aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3f
1c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru/*
2c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * Copyright (C) 2011 The Android Open Source Project
3c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru *
4c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * Licensed under the Apache License, Version 2.0 (the "License");
5c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * you may not use this file except in compliance with the License.
6c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * You may obtain a copy of the License at
7c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru *
8c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru *      http://www.apache.org/licenses/LICENSE-2.0
9c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru *
10c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * Unless required by applicable law or agreed to in writing, software
11c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * distributed under the License is distributed on an "AS IS" BASIS,
12c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * See the License for the specific language governing permissions and
14c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru * limitations under the License.
15c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru */
16c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
17c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattagurupackage com.android.mediaframeworktest.functional;
18c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
19c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport java.io.File;
20c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport java.io.IOException;
21c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
22c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.AudioTrack;
23c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.MediaImageItem;
24c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.MediaItem;
25c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.MediaProperties;
26c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.MediaVideoItem;
27c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.media.videoeditor.VideoEditor;
28c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.os.Environment;
29c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.test.ActivityInstrumentationTestCase;
30c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport android.test.suitebuilder.annotation.LargeTest;
31c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport com.android.mediaframeworktest.MediaFrameworkTest;
32c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguruimport com.android.mediaframeworktest.VideoEditorHelper;
33d0c281328903189b42585948054cfb14a1385d50shailendraimport com.android.mediaframeworktest.MediaProfileReader;
34c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
35c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattagurupublic class MediaPropertiesTest extends
36c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    ActivityInstrumentationTestCase<MediaFrameworkTest> {
37c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    private final String TAG = "MediaPropertiesTest";
38c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
39c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    private final String PROJECT_LOCATION = VideoEditorHelper.PROJECT_LOCATION_COMMON;
40c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
41c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    private final String INPUT_FILE_PATH = VideoEditorHelper.INPUT_FILE_PATH_COMMON;
42c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
43c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    private VideoEditor mVideoEditor;
44c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
45c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    private VideoEditorHelper mVideoEditorHelper;
46c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
47c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public MediaPropertiesTest() {
48c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        super("com.android.mediaframeworktest", MediaFrameworkTest.class);
49c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
50c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
51c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @Override
52c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    protected void setUp() throws Exception {
53c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        // setup for each test case.
54c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        super.setUp();
55c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        mVideoEditorHelper = new VideoEditorHelper();
56c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        // Create a random String which will be used as project path,
57c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        // where all project related files will be stored.
58c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String projectPath = mVideoEditorHelper.
59c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            createRandomFile(PROJECT_LOCATION);
60c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        mVideoEditor = mVideoEditorHelper.createVideoEditor(projectPath);
61c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
62c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
63c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @Override
64c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    protected void tearDown() throws Exception {
65c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        mVideoEditorHelper.destroyVideoEditor(mVideoEditor);
66c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        // Clean the directory created as project path
67c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        mVideoEditorHelper.deleteProject(new File(mVideoEditor.getPath()));
68c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        System.gc();
69c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        super.tearDown();
70c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
71c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
72c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    protected void validateVideoProperties(int aspectRatio, int fileType,
73c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        int videoCodecType, int duration, int videoBitrate, int fps,
74c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        int videoProfile, int width, int height, int audioCodecType,
75c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        int audioSamplingFrequency, int audioChannel, int audioBitrate,
76c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        MediaVideoItem mvi) throws Exception {
77c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Aspect Ratio Mismatch", aspectRatio, mvi.getAspectRatio());
78c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("File Type Mismatch", fileType, mvi.getFileType());
79c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("VideoCodec Mismatch", videoCodecType, mvi.getVideoType());
80c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
81c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Video duration Mismatch", mVideoEditorHelper.checkRange (
82c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            duration, mvi.getDuration(), 10));
83c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Video Profile " + mvi.getVideoProfile(), videoProfile,
84c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            mvi.getVideoProfile());
85c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Video height " + mvi.getHeight(), height, mvi.getHeight());
86c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Video width " + mvi.getWidth(), width, mvi.getWidth());
87c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        /** Check FPS with 10% range */
88c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("fps Mismatch" + mvi.getFps(),
89c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            mVideoEditorHelper.checkRange(fps, mvi.getFps(), 10));
90c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
91c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("AudioType Mismatch ", audioCodecType, mvi.getAudioType());
92c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Audio Sampling " + mvi.getAudioSamplingFrequency(),
93c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, mvi.getAudioSamplingFrequency());
94aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        // PV SW AAC codec always returns number of channels as Stereo.
95aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        // So we do not assert for number of audio channels for AAC_LC
96aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        if ( audioCodecType != MediaProperties.ACODEC_AAC_LC ) {
97aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury            assertEquals("Audio Channels " + mvi.getAudioChannels(), audioChannel,
98aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury                mvi.getAudioChannels());
99aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        }
100c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
101c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
102c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    protected void validateAudioProperties(int audioCodecType, int duration,
103c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        int audioSamplingFrequency, int audioChannel, int audioBitrate,
104c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        AudioTrack aT) throws Exception {
105c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("AudioType Mismatch ", audioCodecType, aT.getAudioType());
106c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Video duration Mismatch", mVideoEditorHelper.checkRange (
107c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            duration, aT.getDuration(), 10));
108c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Audio Sampling " + aT.getAudioSamplingFrequency(),
109c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, aT.getAudioSamplingFrequency());
110aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        // PV SW AAC codec always returns number of channels as Stereo.
111aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        // So we do not assert for number of audio channels for AAC_LC
112aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        if ( audioCodecType != MediaProperties.ACODEC_AAC_LC ) {
113aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury            assertEquals("Audio Channels " + aT.getAudioChannels(), audioChannel,
114aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury                aT.getAudioChannels());
115aea7d6cdfbe7e60b5ac4071759c39bfb2b11af3fRajneesh Chowdury        }
116c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
117c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
118c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    protected void validateImageProperties(int aspectRatio, int fileType,
119c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        int width, int height, MediaImageItem mii)
120c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        throws Exception {
121c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Aspect Ratio Mismatch", aspectRatio, mii.getAspectRatio());
122c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("File Type Mismatch", fileType, mii.getFileType());
123c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Image height " + mii.getHeight(), height, mii.getHeight());
124c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertEquals("Image width " + mii.getWidth(), width, mii.getWidth());
125c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
126c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
127c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
128c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
129c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file MPEG4 854 x 480
130c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
131c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_001
132c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
133c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEG4854_480() throws Exception {
134c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
135c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "MPEG4_SP_854x480_15fps_256kbps_AACLC_16khz_48kbps_s_0_26.mp4";
136c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_16_9;
137c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
138c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_MPEG4;
139c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26933;
140c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 319000;
141c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 48000;
142c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
143c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
144c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 16000;
145c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
146c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.MPEG4_SP_LEVEL_1;
147c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 854;
148c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
149c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
150c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
151c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename,
152c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            MediaItem.RENDERING_MODE_BLACK_BORDER);
153c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
154c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
155c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
156c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
157c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
158c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
159c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
160c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
161c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file MPEG4 WVGA
162c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
163c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_002
164c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
165c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEGWVGA() throws Exception {
166c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
167c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "MPEG4_SP_800x480_515kbps_15fps_AMR_NB_8KHz_12.2kbps_m_0_26.mp4";
168c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_5_3;
169c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
170c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_MPEG4;
171c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26933;
172c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 384000;
173c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 12800;
174c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
175c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AMRNB;
176c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 8000;
177c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 1;
178c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.MPEG4_SP_LEVEL_1;
179c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 800;
180c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
181c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
182c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
183c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
184c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
185c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
186c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
187c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
188c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
189c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
190c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
191c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
192c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for MPEG4 720x480 (NTSC) + AAC file.
193c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
194c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_003
195c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
196c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEGNTSC() throws Exception {
197c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
198c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "MPEG4_SP_720x480_30fps_280kbps_AACLC_48kHz_161kbps_s_0_26.mp4";
199c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_3_2;
200c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
201c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_MPEG4;
202c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26866;
203c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 403000;
204c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 160000;
205c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 30;
206c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
207c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 48000;
208c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
209c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.MPEG4_SP_LEVEL_1;
210c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 720;
211c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
212c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
213c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
214c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
215c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
216c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
217c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
218c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
219c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
220c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
221c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
222c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
223c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file MPEG4 VGA
224c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
225c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_004
226c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
227c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEGVGA() throws Exception {
228c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
229c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "MPEG4_SP_640x480_15fps_512kbps_AACLC_48khz_132kbps_s_0_26.mp4";
230c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_4_3;
231c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
232c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_MPEG4;
233c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26933;
234c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 533000;
235c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 128000;
236c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
237c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
238c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 48000;
239c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
240c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.MPEG4_SP_LEVEL_1;
241c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 640;
242c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
243c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
244c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
245c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
246c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
247c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
248c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
249c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
250c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
251c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
252c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
253c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
254c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file MPEG4 QCIF
255c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
256c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_005
257c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
258c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEGQCIF() throws Exception {
259c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
260c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "MPEG4_SP_176x144_12fps_92kbps_AMRNB_8KHz_12.2kbps_m_0_27.3gp";
261c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_11_9;
262c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_3GP;
263c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_MPEG4;
264c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 27000;
265c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 384000;
266c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 12200;
267c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 12;
268c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AMRNB;
269c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 8000;
270c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 1;
271c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.MPEG4_SP_LEVEL_1;
272c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 176;
273c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_144;
274c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
275c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
276c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
277c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
278c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
279c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
280c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
281c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
282c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
283c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
284c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
285c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To To test media properties for H263 176x144 (QCIF) + AAC (mono) file.
286c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
287c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_006
288c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
289c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH263QCIF() throws Exception {
290c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
291c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H263_profile0_176x144_15fps_256kbps_AACLC_16kHz_32kbps_m_0_26.3gp";
292c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_11_9;
293c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_3GP;
294c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H263;
295c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26933;
296c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 384000;
297c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 64000;
298c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
299c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
300c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 16000;
301c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 1;
302c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H263_PROFILE_0_LEVEL_10;
303c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 176;
304c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_144;
305c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
306c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
307c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
308c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
309c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
310c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
311c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
312c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
313c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
314c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
315c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file H264 VGA
316c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
317c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_007
318c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
319c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264VGA() throws Exception {
320c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
321c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H264_BP_640x480_15fps_1200Kbps_AACLC_48KHz_64kps_m_0_27.3gp";
322c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_4_3;
323c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_3GP;
324c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
325c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77600;
326c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 745000;
327c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 64000;
328c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
329c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
330c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 48000;
331c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
332c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
333c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 640;
334c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
335c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
336c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
337c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
338c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
339c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
340c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
341c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
342c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
343c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
344c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
345c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file H264 NTSC
346c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
347c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_008
348c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
349c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264NTSC() throws Exception {
350c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
351c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H264_BP_720x480_25fps_256kbps_AMRNB_8khz_12.2kbps_m_0_26.mp4";
352c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_3_2;
353c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
354c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
355c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 26880;
356c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 244000;
357c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 12200;
358c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 25;
359c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AMRNB;
360c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 8000;
361c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 1;
362c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
363c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 720;
364c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
365c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
366c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
367c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
368c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
369c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
370c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
371c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
372c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
373c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
374c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
375c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
376c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for H264 800x480 (WVGA) + AAC file.
377c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
378c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_009
379c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
380c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264WVGA() throws Exception {
381c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH +
382c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru              "H264_BP_800x480_15fps_512kbps_AACLC_24KHz_38Kbps_s_1_17.mp4";
383c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_5_3;
384c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
385c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
386c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77466;
387c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 528000;
388c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 38000;
389c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
390c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
391c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 24000;
392c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
393c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
394c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 800;
395c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
396c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
397c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
398c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
399c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
400c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
401c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
402c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
403c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
404c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
405c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
406c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
407c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file H264 HD1280
408c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
409c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_010
410c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
411c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264HD1280() throws Exception {
412c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
413c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H264_BP_1280x720_15fps_512kbps_AACLC_16khz_48kbps_s_1_17.mp4";
414c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_16_9;
415c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
416c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
417c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77600;
418c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 606000;
419c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 48000;
420c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 15;
421c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
422c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 16000;
423c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
424c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
425c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 1280;
426c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_720;
427c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
428c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
429c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
430c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
431c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
432c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
433c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
434c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
435c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
436c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
437c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
438c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for H264 1080x720 + AAC file
439c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
440c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_011
441c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
442c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264HD1080WithAudio() throws Exception {
443c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
444c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H264_BP_1080x720_30fps_12Mbps_AACLC_44.1khz_64kbps_s_1_17.mp4";
445c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_3_2;
446c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
447c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
448c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77500;
449c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 1190000;
450c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 64000;
451c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 10;
452c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
453c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 44100;
454c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
455c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
456c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 1080;
457c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_720;
458c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
459c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
460c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
461c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
462c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
463c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
464c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
465c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
466c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
467c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
468c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
469c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file WMV - Unsupported type
470c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
471c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_012
472c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
473c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesWMVFile() throws Exception {
474c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH +
475c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "WMV_V7_640x480_15fps_512Kbps_wma_V9_44khz_48Kbps_s_1_30.wmv";
476c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
477d0c281328903189b42585948054cfb14a1385d50shailendra        if (MediaProfileReader.getWMVEnable() == false) {
478c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
479d0c281328903189b42585948054cfb14a1385d50shailendra        } else {
480d0c281328903189b42585948054cfb14a1385d50shailendra            try {
481d0c281328903189b42585948054cfb14a1385d50shailendra                new MediaVideoItem(mVideoEditor, "m1", videoItemFilename,
482d0c281328903189b42585948054cfb14a1385d50shailendra                    MediaItem.RENDERING_MODE_BLACK_BORDER);
483d0c281328903189b42585948054cfb14a1385d50shailendra            } catch (IllegalArgumentException e) {
484d0c281328903189b42585948054cfb14a1385d50shailendra                flagForException = true;
485d0c281328903189b42585948054cfb14a1385d50shailendra            } catch (IOException e) {
486d0c281328903189b42585948054cfb14a1385d50shailendra                flagForException = true;
487d0c281328903189b42585948054cfb14a1385d50shailendra            }
488c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
489c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for a WMV File -- Unsupported file type",
490c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
491c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
492c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
493c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
494c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for H.264 Main/Advanced profile. (unsupported profile input)
495c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
496c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_013
497c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
498c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264MainLineProfile() throws Exception {
499c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH
500c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            + "H264_MP_960x720_25fps_800kbps_AACLC_48Khz_192Kbps_s_1_17.mp4";
501c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_4_3;
502c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        //final int videoCodecType = MediaProperties.VCODEC_H264BP;
503c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264MP;
504c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
505c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
506c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
507c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
508c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
509c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
510c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            assertEquals("VideoCodec Mismatch", videoCodecType, mvi.getVideoType());
511c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }catch (IllegalArgumentException e){
512c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
513c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
514c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            assertTrue("Unsupported Main Profile", flagForException);
515c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
516c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
517c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
518c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for non existing file.
519c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
520c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_014
521c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
522c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesForNonExsitingFile() throws Exception {
523c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH + "abc.3gp";
524c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
525c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
526c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
527c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaVideoItem(mVideoEditor, "m1", videoItemFilename,
528c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                MediaItem.RENDERING_MODE_BLACK_BORDER);
529c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
530c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
531c8b4efdd743995219af494c5cdcb036591d8e06eshailendra        } catch (IOException e) {
532c8b4efdd743995219af494c5cdcb036591d8e06eshailendra            flagForException = true;
533c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
534c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for non exsisting file", flagForException);
535c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     }
536c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
537c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
538c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file H264 HD1080
539c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
540c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_015
541c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
542c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesH264HD1080WithoutAudio() throws Exception {
543c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH +
544c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "H264_BP_1080x720_30fps_800kbps_1_17.mp4";
545c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_3_2;
546c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_MP4;
547c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoCodecType = MediaProperties.VCODEC_H264BP;
548c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77366;
549c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoBitrate = 859000;
550c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 0;
551c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fps = 30;
552c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = -1;
553c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 0;
554c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 0;
555c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int videoProfile = MediaProperties.H264_PROFILE_0_LEVEL_1_3;
556c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 1080;
557c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_720;
558c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
559c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
560c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaVideoItem mvi = mVideoEditorHelper.createMediaItem
561c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", videoItemFilename, renderingMode);
562c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
563c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateVideoProperties(aspectRatio, fileType, videoCodecType, duration,
564c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            videoBitrate, fps, videoProfile, width, height, audioCodecType,
565c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioSamplingFrequency, audioChannel, audioBitrate, mvi);
566c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
567c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
568c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
569c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for Image file of JPEG Type
570c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
571c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_016
572c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
573c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesVGAImage() throws Exception {
574c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String imageItemFilename = INPUT_FILE_PATH + "IMG_640x480.jpg";
575c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int imageItemDuration = 10000;
576c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_4_3;
577c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_JPEG;
578c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 640;
579c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = MediaProperties.HEIGHT_480;
580c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
581c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
582c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaImageItem mii = mVideoEditorHelper.createMediaItem
583c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", imageItemFilename, imageItemDuration,
584c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            renderingMode);
585c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateImageProperties(aspectRatio, fileType, width, height, mii);
586c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
587c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
588c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
589c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for Image file of PNG Type
590c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
591c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_017
592c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
593c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesPNG() throws Exception {
594c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String imageItemFilename = INPUT_FILE_PATH + "IMG_640x480.png";
595c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int imageItemDuration = 10000;
596c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int aspectRatio = MediaProperties.ASPECT_RATIO_4_3;
597c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int fileType = MediaProperties.FILE_PNG;
598c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int width = 640;
599c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int height = 480;
600c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
601c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final MediaImageItem mii = mVideoEditorHelper.createMediaItem
602c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "m1", imageItemFilename, imageItemDuration,
603c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            renderingMode);
604c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateImageProperties(aspectRatio, fileType, width, height, mii);
605c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
606c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
607c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
608c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file GIF - Unsupported type
609c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
610c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_018
611c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
612c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesGIFFile() throws Exception {
613c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
614c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String imageItemFilename = INPUT_FILE_PATH + "IMG_640x480.gif";
615c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int imageItemDuration = 10000;
616c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
617c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
618c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
619c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaImageItem(mVideoEditor, "m1", imageItemFilename,
620c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                imageItemDuration, renderingMode);
621c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
622c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
623c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
624c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for a GIF File -- Unsupported file type",
625c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
626c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
627c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
628c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
629c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file Text file named as 3GP
630c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
631c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_019
632c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
633c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesofDirtyFile() throws Exception {
634c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
635c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH +
636c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "Text_FileRenamedTo3gp.3gp";
637c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
638c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
639c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
640c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaVideoItem(mVideoEditor, "m1", videoItemFilename,
641c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                MediaItem.RENDERING_MODE_BLACK_BORDER);
642c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
643c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
644c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
645c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for a Dirty  File ",
646c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
647c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
648c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
649c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
650c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file name as NULL
651c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
652c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_020
653c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
654c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertieNULLFile() throws Exception {
655c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = null;
656c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
657c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
658c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
659c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaVideoItem(mVideoEditor, "m1", videoItemFilename,
660c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                renderingMode);
661c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
662c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
663c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
664c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for NULL  File ",
665c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
666c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
667c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
668c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
669c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties for file which is of type MPEG2
670c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
671c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_021
672c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
673c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMPEG2File() throws Exception {
674c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String videoItemFilename = INPUT_FILE_PATH +
675c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "MPEG2_640x480_30fps_192kbps_1_5.mp4";
676c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
677c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
678c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
679c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaVideoItem(mVideoEditor, "m1", videoItemFilename,
680c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                renderingMode);
681c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
682c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
683c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
684c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Media Properties for a MPEG2 File --Unsupported file type",
685c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
686c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
687c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
688c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
689c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test Media Properties TC_MP_023 for file without Video only Audio
690c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
691c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_023
692c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
693c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testProperties3GPWithoutVideoMediaItem() throws Exception {
694c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String audioFilename = INPUT_FILE_PATH +
695c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "AACLC_48KHz_256Kbps_s_1_17.3gp";
696c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        boolean flagForException = false;
697c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER;
698c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        try {
699c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            new MediaVideoItem(mVideoEditor, "m1", audioFilename,
700c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru                renderingMode);
701c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        } catch (IllegalArgumentException e) {
702c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException = true;
703c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        }
704c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        assertTrue("Exception in Creaing Media Video item object without video",
705c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            flagForException);
706c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
707c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
708c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    /**
709c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for Audio Track file. (No Video, AAC Audio)
710c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
711c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_024
712c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
713c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testProperties3GPWithoutVideoAudioTrack() throws Exception {
714c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
715c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String audioFilename = INPUT_FILE_PATH +
716c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "AACLC_44.1kHz_256kbps_s_1_17.mp4";
717c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77554;
718c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 384000;
719c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_AAC_LC;
720c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 44100;
721c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
722c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
723c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final AudioTrack audioTrack = mVideoEditorHelper.createAudio
724c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "a1", audioFilename);
725c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
726c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateAudioProperties(audioCodecType, duration, audioSamplingFrequency,
727c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioChannel, audioBitrate, audioTrack);
728c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
729c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
730c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        /**
731c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     *To test media properties for Audio Track file. MP3 file
732c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru     */
733c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    // TODO : Remove TC_MP_025
734c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    @LargeTest
735c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    public void testPropertiesMP3AudioTrack() throws Exception {
736c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
737c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final String audioFilename = INPUT_FILE_PATH +
738c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            "MP3_48KHz_128kbps_s_1_17.mp3";
739c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int duration = 77640;
740c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioBitrate = 128000;
741c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioCodecType = MediaProperties.ACODEC_MP3;
742c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioSamplingFrequency = 48000;
743c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final int audioChannel = 2;
744c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
745c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        final AudioTrack audioTrack = mVideoEditorHelper.createAudio
746c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            (mVideoEditor, "a1", audioFilename);
747c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru
748c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru        validateAudioProperties(audioCodecType, duration, audioSamplingFrequency,
749c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru            audioChannel, audioBitrate, audioTrack);
750c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru    }
751c0171d3e7b3459168e8db76b7f5d72b07f69f42aBasavapatna Dattaguru}
752