186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru/* 286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Copyright (C) 2011 The Android Open Source Project 386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Licensed under the Apache License, Version 2.0 (the "License"); 586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * you may not use this file except in compliance with the License. 686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * You may obtain a copy of the License at 786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * http://www.apache.org/licenses/LICENSE-2.0 986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 1086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Unless required by applicable law or agreed to in writing, software 1186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * distributed under the License is distributed on an "AS IS" BASIS, 1286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * See the License for the specific language governing permissions and 1486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * limitations under the License. 1586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 1686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 17db6028508c8eb31a0de1dcdfc410ddfe6df7c5adXia Wangpackage com.android.mediaframeworktest.functional.videoeditor; 1886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 1986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport java.io.File; 2086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport java.util.List; 2186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 2286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.graphics.Bitmap; 2386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.graphics.Rect; 2486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.AudioTrack; 2586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.EffectColor; 2686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.EffectKenBurns; 2786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.ExtractAudioWaveformProgressListener; 2886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.MediaImageItem; 2986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.MediaItem; 3086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.MediaProperties; 3186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.MediaVideoItem; 3286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.OverlayFrame; 3386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.Transition; 3486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.TransitionAlpha; 3586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.TransitionCrossfade; 3686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.TransitionFadeBlack; 3786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.TransitionSliding; 3886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.VideoEditor; 3986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.os.Environment; 4086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.test.ActivityInstrumentationTestCase; 4186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.media.videoeditor.VideoEditor.MediaProcessingProgressListener; 4286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 4386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.util.Log; 4486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport java.lang.annotation.Annotation; 4586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 4686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport com.android.mediaframeworktest.MediaFrameworkTest; 4786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport android.test.suitebuilder.annotation.LargeTest; 4886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguruimport com.android.mediaframeworktest.VideoEditorHelper; 4986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 5086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattagurupublic class VideoEditorAPITest extends 5186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru ActivityInstrumentationTestCase<MediaFrameworkTest> { 5286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private final String TAG = "VideoEditorTest"; 5386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 5486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private final String PROJECT_LOCATION = VideoEditorHelper.PROJECT_LOCATION_COMMON; 5586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 5686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private final String INPUT_FILE_PATH = VideoEditorHelper.INPUT_FILE_PATH_COMMON; 5786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 5886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private final String PROJECT_CLASS_NAME = 5986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "android.media.videoeditor.VideoEditorImpl"; 6086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private VideoEditor mVideoEditor; 6186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru private VideoEditorHelper mVideoEditorHelper; 6286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 6386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public VideoEditorAPITest() { 6486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru super("com.android.mediaframeworktest", MediaFrameworkTest.class); 6586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 6686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 6786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @Override 6886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru protected void setUp() throws Exception { 6986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // setup for each test case. 7086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru super.setUp(); 7186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper = new VideoEditorHelper(); 7286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // Create a random String which will be used as project path, where all 7386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // project related files will be stored. 7486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String projectPath = mVideoEditorHelper. 7586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru createRandomFile(PROJECT_LOCATION); 7686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor = mVideoEditorHelper.createVideoEditor(projectPath); 7786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 7886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 7986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @Override 8086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru protected void tearDown() throws Exception { 8186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.destroyVideoEditor(mVideoEditor); 8286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // Clean the directory created as project path 8386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.deleteProject(new File(mVideoEditor.getPath())); 8486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru System.gc(); 8586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru super.tearDown(); 8686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 8786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 8886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 8986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test Creation of Media Video Item. 9086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 9186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_001 9286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 9386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItem() throws Exception { 9486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 9586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 9686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode = 9786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_BLACK_BORDER; 9886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 9986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 10086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 10186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 10286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 10386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Video ID", 10486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getId().equals("mediaVideoItem1")); 10586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Video Filename", 10686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getFilename().equals(videoItemFileName)); 10786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Video Rendering Mode", 10886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemRenderingMode, mediaVideoItem1.getRenderingMode()); 10986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Video Item Duration", mediaVideoItem1.getDuration(), 11086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration()); 11186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Video Overlay", 0, 11286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getAllOverlays().size()); 11386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Video Effect", 0, 11486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getAllEffects().size()); 11586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Media Video Begin transition", 11686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getBeginTransition()); 11786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Media Video End transition", 11886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getEndTransition()); 11986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(1000,11000); 12086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 12186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru if (mediaVideoItem1.getDuration() != 12286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration()) { 12386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 12486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 12586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Video Item Duration & Timeline are same", 12686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException ); 12786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 12886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 12986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 13086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test creation of Media Video Item with Set Extract Boundaries With Get 13186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * the Begin and End Time. 13286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 13386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_002 13486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 13586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemExtractBoundaries() throws Exception { 13686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 13786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 13886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 13986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 14086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 14186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 14286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 14386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 14486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 14586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(1000, 11000); 14686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item Duration = StoryBoard Duration", 14786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration(), mVideoEditor.getDuration()); 14886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 14986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 100000000); 15086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 15186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 15286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 15386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Set Extract with Invalid Values endTime > FileDuration", 15486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 15586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 15686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 15786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 15886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(100000000, 11000); 15986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 16086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 16186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 16286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Set Extract with Invalid Values startTime > endTime", 16386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 16486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 16586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 16686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 16786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 0); 16886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 16986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 17086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 17186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Set Extract with Invalid Values startTime = endTime", 17286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 17386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 17486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(1000, 10000); 17586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Item Duration is still the same", 17686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getTimelineDuration() == 17786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getBoundaryEndTime()- 17886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getBoundaryBeginTime())) ? true : false); 17986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 18086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(1,mediaVideoItem1.getDuration()-1); 18186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item Start Time", 1, 18286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getBoundaryBeginTime()); 18386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item End Time", (mediaVideoItem1.getDuration() - 1), 18486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getBoundaryEndTime()); 18586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 18686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(1, mediaVideoItem1.getDuration()); 18786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item Duration = StoryBoard Duration", 18886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration(), mVideoEditor.getDuration()); 18986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 19086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0,mediaVideoItem1.getDuration()/2); 19186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item Duration = StoryBoard Duration", 19286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration(), mVideoEditor.getDuration()); 19386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 19486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, -1); 19586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item Duration = StoryBoard Duration", 19686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getTimelineDuration(), mVideoEditor.getDuration()); 19786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 19886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 19986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 20086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test creation of Media Video Item with Set and Get rendering Mode 20186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 20286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_003 20386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 20486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemRenderingModes() throws Exception { 20586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 20686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 20786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode= MediaItem.RENDERING_MODE_BLACK_BORDER; 20886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 20986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 21086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 21186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 21286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 21386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setRenderingMode(MediaItem.RENDERING_MODE_CROPPING); 21486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 21586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING, 21686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getRenderingMode()); 21786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 21886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setRenderingMode( 21986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING + 911); 22086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 22186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 22286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 22386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Item Invalid rendering Mode", flagForException); 22486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 22586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 22686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setRenderingMode( 22786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_BLACK_BORDER - 11); 22886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 22986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 23086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 23186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Item Invalid rendering Mode", flagForException); 23286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 23386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING, 23486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getRenderingMode()); 23586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setRenderingMode(MediaItem.RENDERING_MODE_STRETCH); 23686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 23786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_STRETCH, 23886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getRenderingMode()); 23986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 24086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 24186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** Test Case TC_API_004 is removed */ 24286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 24386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 24486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Video API : Set Audio Volume, Get Audio Volume and Mute 24586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 24686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_005 24786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 24886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemAudioFeatures() throws Exception { 24986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 25086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 25186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 25286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 25386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 25486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 25586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 25686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 25786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(77); 25886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Updated Volume is 77", 77, mediaVideoItem1.getVolume()); 25986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 26086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setMute(true); 26186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio must be Muted", mediaVideoItem1.isMuted()); 26286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 26386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(78); 26486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Updated Volume is 78", 78, mediaVideoItem1.getVolume()); 26586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio must be Muted", mediaVideoItem1.isMuted()); 26686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 26786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 26886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(1000); 26986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 27086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 27186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 27286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Set Volume", flagForException); 27386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 27486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setMute(false); 27586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio must be Un-Muted", mediaVideoItem1.isMuted()); 27686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 27786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(0); 27886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio must be Un-Muted", mediaVideoItem1.isMuted()); 27986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 28086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 28186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 28286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(-1); 28386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 28486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 28586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 28686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Set Volume", flagForException); 28786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 28886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(100); 28986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaItem Volume", 100, mediaVideoItem1.getVolume()); 29086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 29186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setVolume(101); 29286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 29386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 29486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 29586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Set Volume", flagForException); 29686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaItem Volume", 100, mediaVideoItem1.getVolume()); 29786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 29886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 29986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 30086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Video API : GetWaveFormData and 30186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * extractAudioWaveFormData 30286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 30386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 30486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_006 30586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 30686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemGetWaveformData() throws Exception { 30786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 30886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 30986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 31086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 31186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 31286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 31386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 31486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 31586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 31686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("WaveForm data", mediaVideoItem1.getWaveformData()); 31786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int[] progressWaveform = new int[105]; 31886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 31986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.extractAudioWaveform(new 32086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru ExtractAudioWaveformProgressListener() { 32186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru int i = 0; 32286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void onProgress(int progress) { 32386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Log.i("WaveformData","progress=" +progress); 32486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru progressWaveform[i++] = progress; 32586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 32686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }); 32786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Progress of WaveForm data", mVideoEditorHelper 32886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru .checkProgressCBValues(progressWaveform)); 32986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("WaveForm data", mediaVideoItem1.getWaveformData()); 33086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Frame Duration", 33186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getWaveformData().getFrameDuration() > 0? 33286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 33386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Frame Count", 33486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getWaveformData().getFramesCount() > 0 ? 33586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 33686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Gain", 33786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getWaveformData().getFrameGains().length > 0 ? 33886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 33986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 34086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 34186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 34286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 34386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Video API : Get Effect, GetAllEffects, remove Effect 34486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 34586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 34686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_007 34786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 34886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemEffect() throws Exception { 34986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 35086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 35186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 35286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = mVideoEditorHelper. 35386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru createMediaItem(mVideoEditor, "mediaVideoItem1", videoItemFileName, 35486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemRenderingMode); 35586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 35686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 35786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 35886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllEffects().size() == 0) ? true : false); 35986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by ID", mediaVideoItem1.getEffect("xyx")); 36086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 36186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor = mVideoEditorHelper.createEffectItem( 36286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "Effecton MVi1", 0, 4000, EffectColor.TYPE_GRADIENT, 36386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.GRAY); 36486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor); 36586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 36686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", (mediaVideoItem1. 36786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru getAllEffects().size() == 1) ? true : false); 36886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Item by Valid ID", effectColor, 36986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getEffect(effectColor.getId())); 37086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by Invalid ID", 37186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getEffect("xyz")); 37286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by Invalid ID", 37386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.removeEffect("effectId")); 37486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 37586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllEffects().size() == 1) ? true : false); 37686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Removed", effectColor, 37786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.removeEffect(effectColor.getId())); 37886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 37986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllEffects().size() == 0) ? true : false); 38086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by ID", mediaVideoItem1.getEffect("effectId")); 38186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 38286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 38386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 38486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Video API : Get Before and after transition 38586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 38686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 38786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_008 38886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 38986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemTransitions() throws Exception { 39086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 39186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 39286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 39386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 39486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 39586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 39686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 39786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Begin Transition", mediaVideoItem1.getBeginTransition()); 39886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("End Transition", mediaVideoItem1.getEndTransition()); 39986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 40086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionFadeBlack transition1 = 40186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition1", mediaVideoItem1, 40286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru null, 0, Transition.BEHAVIOR_SPEED_UP); 40386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1); 40486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Begin transition", transition1, 40586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getEndTransition()); 40686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 40786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("End Transition", mediaVideoItem1.getEndTransition()); 40886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1. 40986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru getEndTransition().getId().equals(transition1.getId())); 41086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1.getEndTransition().getDuration() == 41186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1.getDuration() ? true : false); 41286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1.getEndTransition().getBehavior() == 41386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1.getBehavior() ? true : false); 41486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 41586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionFadeBlack transition2 = mVideoEditorHelper.createTFadeBlack( 41686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "transition2", null,mediaVideoItem1, 0, Transition.BEHAVIOR_LINEAR); 41786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2); 41886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("Begin transition", mediaVideoItem1.getBeginTransition()); 41986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("End Transition", transition2, 42086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getBeginTransition()); 42186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1. 42286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru getBeginTransition().getId().equals(transition2.getId())); 42386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1. getBeginTransition().getDuration() == 42486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2.getDuration() ? true : false); 42586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaVideoItem1.getBeginTransition().getBehavior() == 42686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2.getBehavior() ? true : false); 42786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 42886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 42986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 43086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Video API : Get All Overlay, Get Overlay and remove Overlay 43186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 43286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 43386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 43486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_009 43586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 43686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaVideoItemOverlays() throws Exception { 43786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH 43886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H263_profile0_176x144_15fps_256kbps_AACLC_32kHz_128kbps_s_0_26.3gp"; 43986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayItemFileName = INPUT_FILE_PATH + 44086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "IMG_176x144_Overlay1.png"; 44186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 44286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 44386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 44486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 44586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 44686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 44786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 44886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllOverlays().size() == 0) ? true : false); 44986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by ID", mediaVideoItem1.getOverlay("xyz")); 45086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 45186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayItemFileName, 45286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 176, 144); 45386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame = mVideoEditorHelper.createOverlay( 45486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "overlayId", mBitmap, 5000, 5000); 45586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addOverlay(overlayFrame); 45686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 45786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 45886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllOverlays().size() == 1) ? true : false); 45986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Item by Valid ID", overlayFrame, mediaVideoItem1 46086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru .getOverlay(overlayFrame.getId())); 46186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by Invalid ID", 46286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getOverlay("xyz")); 46386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by Invalid ID", 46486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.removeOverlay("xyz")); 46586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 46686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllOverlays().size() == 1) ? true : false); 46786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Removed", overlayFrame, 46886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.removeOverlay(overlayFrame.getId())); 46986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 47086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaVideoItem1.getAllOverlays().size() == 0) ? true : false); 47186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by ID",mediaVideoItem1.getOverlay("effectId")); 47286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 47386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 47486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 47586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test Creation of Media Image Item. 47686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 47786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_010 47886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 47986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItem() throws Exception { 48086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 48186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 48286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 48386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 48486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 48586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Image ID", 48686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getId().equals("mediaImageItem1")); 48786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media IMage Filename", 48886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getFilename().equals(imageItemFileName)); 48986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Rendering Mode", 49086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemRenderingMode, mediaImageItem1.getRenderingMode()); 49186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Item Duration", mediaImageItem1.getDuration(), 49286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getTimelineDuration()); 49386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Overlay", 0, 49486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getAllOverlays().size()); 49586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Effect", 0, 49686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getAllEffects().size()); 49786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Media Image Begin transition", 49886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getBeginTransition()); 49986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Media Image End transition", 50086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getEndTransition()); 50186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Scaled Height", MediaProperties.HEIGHT_720, 50286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledHeight()); 50386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Scaled Width", 960, 50486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledWidth()); 50586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Image Aspect Ratio", MediaProperties.ASPECT_RATIO_4_3, 50686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getAspectRatio()); 50786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("Media Image Thumbnail", 50886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getThumbnail(960, MediaProperties.HEIGHT_720, 2000)); 50986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 51086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 51186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 51286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : Get and Set rendering Mode 51386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 51486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_011 51586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 51686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemRenderingModes() throws Exception { 51786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 51886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 51986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 52086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 52186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 52286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, imageItemRenderingMode, 5000); 52386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 52486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 52586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.setRenderingMode(MediaItem.RENDERING_MODE_CROPPING); 52686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 52786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING, mediaImageItem1.getRenderingMode()); 52886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 52986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.setRenderingMode( 53086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING + 911); 53186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 53286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 53386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 53486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Item Invalid rendering Mode", flagForException); 53586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 53686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 53786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 53886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.setRenderingMode( 53986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_BLACK_BORDER - 11); 54086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 54186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 54286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 54386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Media Item Invalid rendering Mode", flagForException); 54486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 54586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 54686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_CROPPING, 54786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getRenderingMode()); 54886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.setRenderingMode(MediaItem.RENDERING_MODE_STRETCH); 54986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("MediaVideo Item rendering Mode", 55086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaItem.RENDERING_MODE_STRETCH, 55186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getRenderingMode()); 55286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 55386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 55486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 55586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : GetHeight and GetWidth 55686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 55786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_012 55886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 55986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemHeightWidth() throws Exception { 56086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_640x480.jpg"; 56186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 56286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 56386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 56486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, imageItemRenderingMode, 5000); 56586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 56686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 56786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Image Height = Image Scaled Height", 56886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledHeight(), mediaImageItem1.getHeight()); 56986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Image Width = Image Scaled Width", 57086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledWidth(), mediaImageItem1.getWidth()); 57186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 57286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 57386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 57486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 57586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru/** This Test Case can be removed as this is already checked in TC 010 */ 57686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 57786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : Scaled Height and Scaled GetWidth 57886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 57986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_013 58086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 58186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemScaledHeightWidth() throws Exception { 58286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 58386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 58486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 58586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 58686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 58786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, imageItemRenderingMode, 5000); 58886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 58986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 59086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotSame("Image Height = Image Scaled Height", 59186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledHeight(), mediaImageItem1.getHeight()); 59286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotSame("Image Width = Image Scaled Width", 59386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getScaledWidth(), mediaImageItem1.getWidth()); 59486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 59586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 59686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 59786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : Get Effect, GetAllEffects, remove Effect 59886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 59986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 60086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_014 60186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 60286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemEffect() throws Exception { 60386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 60486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 60586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 60686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 60786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 60886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 60986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 61086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 61186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllEffects().size() == 0) ? true : false); 61286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by ID", mediaImageItem1.getEffect("xyx")); 61386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 61486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor = 61586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaImageItem1, 61686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "Effecton MVi1", 0, 4000, EffectColor.TYPE_GRADIENT, EffectColor.GRAY); 61786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.addEffect(effectColor); 61886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 61986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 62086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllEffects().size() == 1) ? true : false); 62186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Item by Valid ID", 62286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor, mediaImageItem1.getEffect(effectColor.getId())); 62386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by Invalid ID", 62486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getEffect("xyz")); 62586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by Invalid ID", 62686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.removeEffect("effectId")); 62786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 62886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllEffects().size() == 1) ? true : false); 62986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Removed", effectColor, 63086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.removeEffect(effectColor.getId())); 63186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect List Size", 63286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllEffects().size() == 0) ? true : false); 63386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Effect Item by ID", mediaImageItem1.getEffect("effectId")); 63486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 63586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 63686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 63786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : Get Before and after transition 63886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 63986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 64086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_015 64186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 64286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemTransitions() throws Exception { 64386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 64486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 64586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 64686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 64786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 64886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 64986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 65086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Begin Transition", mediaImageItem1.getBeginTransition()); 65186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("End Transition", mediaImageItem1.getEndTransition()); 65286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 65386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionFadeBlack transition1 = 65486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition1", mediaImageItem1, 65586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru null, 0, Transition.BEHAVIOR_SPEED_UP); 65686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1); 65786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 65886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Begin transition", transition1, 65986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getEndTransition()); 66086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("End Transition", mediaImageItem1.getEndTransition()); 66186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getEndTransition().getId().equals 66286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (transition1.getId())); 66386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getEndTransition().getDuration() == 66486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1.getDuration() ? true : false); 66586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getEndTransition().getBehavior() == 66686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1.getBehavior() ? true : false); 66786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 66886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionFadeBlack transition2 = mVideoEditorHelper.createTFadeBlack( 66986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "transition2",null, mediaImageItem1, 0, Transition.BEHAVIOR_SPEED_UP); 67086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2); 67186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 67286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("Begin transition", mediaImageItem1.getBeginTransition()); 67386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("End Transition", transition2, 67486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getBeginTransition()); 67586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getBeginTransition().getId().equals( 67686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2.getId())); 67786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getBeginTransition().getDuration() == 67886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2.getDuration() ? true : false); 67986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue(mediaImageItem1.getBeginTransition().getBehavior() == 68086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2.getBehavior() ? true : false); 68186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 68286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 68386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 68486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Media Image API : Get All Overlay, Get Overlay and remove 68586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Overlay 68686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 68786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 68886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_016 68986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 69086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testMediaImageItemOverlays() throws Exception { 69186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_640x480.jpg"; 69286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayItemFileName = INPUT_FILE_PATH + 69386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "IMG_640x480_Overlay1.png"; 69486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 69586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 69686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 69786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 12000, imageItemRenderingMode); 69886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 69986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 70086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 70186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllOverlays().size() == 0) ? true : false); 70286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by ID", mediaImageItem1.getOverlay("xyz")); 70386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayItemFileName, 70486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 70586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame = 70686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaImageItem1, "overlayId", 70786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 5000, 5000); 70886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.addOverlay(overlayFrame); 70986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 71086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 71186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllOverlays().size() == 1) ? true : false); 71286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Item by Valid ID", overlayFrame, mediaImageItem1 71386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru .getOverlay(overlayFrame.getId())); 71486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by Invalid ID", 71586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getOverlay("xyz")); 71686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Remove Overlay Item by Invalid ID", 71786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.removeOverlay("xyz")); 71886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 71986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllOverlays().size() == 1) ? true : false); 72086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Removed", 72186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame, mediaImageItem1.removeOverlay(overlayFrame.getId())); 72286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay List Size", 72386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem1.getAllOverlays().size() == 0) ? true : false); 72486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("Overlay Item by ID", 72586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.getOverlay("effectId")); 72686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 72786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 72886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 72986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test creation of Audio Track 73086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 73186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 73286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_017 73386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 73486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrack() throws Exception { 73586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 73686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 73786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 73886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 73986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 74086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 74186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Item Duration", audioTrack.getDuration(), 74286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getTimelineDuration()); 74386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start Time", 0, audioTrack.getStartTime()); 74486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track is Looping", audioTrack.isLooping()); 74586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getVolume(); 74686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track Ducking is Disabled", 74786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.isDuckingEnabled()); 74886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track Filename", 74986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getFilename().equals(audioFileName)); 75086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Ducking Threshold", 0, 75186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckingThreshhold()); 75286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track Mute", audioTrack.isMuted()); 75386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckedTrackVolume(); 75486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 75586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 75686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 75786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test creation of Audio Track with set extract boundaries 75886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 75986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_018 76086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 76186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackExtractBoundaries() throws Exception { 76286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 76386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 76486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 76586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 76686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 76786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 76886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 76986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(1000, 5000); 77086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start time", 1000, 77186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryBeginTime()); 77286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track End time", 5000, 77386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryEndTime()); 77486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 77586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(0, 100000000); 77686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 77786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 77886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 77986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track With endTime > FileDuration", flagForException); 78086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 78186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 78286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(100000000, 5000); 78386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 78486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 78586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 78686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track With startTime > FileDuration", 78786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 78886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 78986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 79086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(0, 0); 79186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 79286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 79386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 79486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /* This is under discussion. Hence, checked for False */ 79586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track With startTime = endTime", flagForException); 79686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start time", 0, 79786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryBeginTime()); 79886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track End time", 0, 79986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryEndTime()); 80086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start time",0, 80186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryBeginTime()); 80286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track End time", (audioTrack.getTimelineDuration()), 80386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryEndTime()); 80486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(0, audioTrack.getDuration() / 2); 80586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start time",0, 80686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryBeginTime()); 80786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track End time", (audioTrack.getDuration() / 2), 80886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryEndTime()); 80986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(1, audioTrack.getDuration() - 1); 81086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start time", 1, 81186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryBeginTime()); 81286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track End time", (audioTrack.getDuration() - 1), 81386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getBoundaryEndTime()); 81486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 81586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 81686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 81786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setExtractBoundaries(0, -1); 81886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 81986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 82086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 82186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue ("Audio Track end time < 0",flagForException); 82286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 82386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 82486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 82586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test creation of Audio Track with set Start Time and Get Time 82686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 82786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_019 82886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 82986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackSetGetTime() throws Exception { 83086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 83186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 83286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 83386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 83486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 83586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 83686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** set StartTime API is removed and start time is always 0 */ 83786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Start Time", 0, audioTrack.getStartTime()); 83886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 83986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 84086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 84186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Audio Track API: Enable Ducking 84286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 84386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_020 84486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 84586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackEnableDucking() throws Exception { 84686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 84786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 84886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 84986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 85086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 85186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 85286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 85386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Ducking Disabled by default", 85486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.isDuckingEnabled()); 85586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(45, 70); 85686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Ducking Enabled", audioTrack.isDuckingEnabled()); 85786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Ducking Threshold", 45, 85886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckingThreshhold()); 85986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Ducking Volume", 70, 86086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckedTrackVolume()); 86186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(85, 70); 86286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Ducking Threshold", 85, 86386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckingThreshhold()); 86486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Ducking Volume", 70, 86586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getDuckedTrackVolume()); 86686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 86786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(91, 70); 86886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 86986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 87086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 87186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Enable ducking threshold > 90", flagForException); 87286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 87386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 87486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(90, 101); 87586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 87686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 87786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 87886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Enable ducking volume > 100", flagForException); 87986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 88086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 88186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(91, 101); 88286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 88386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 88486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 88586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Enable ducking volume > 100 and threshold > 91", 88686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 88786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 88886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 88986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(-1, 100); 89086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 89186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 89286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 89386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Enable ducking threshold < 0", flagForException); 89486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 89586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 89686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(1, -1); 89786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 89886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 89986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 90086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Enable ducking lowVolume < 0", flagForException); 90186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 90286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 90386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableDucking(0, 50); 90486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 90586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 90686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 90786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Enable ducking threshold = 0", flagForException); 90886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 90986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 91086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 91186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Audio Track API: Looping 91286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 91386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_021 91486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 91586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackLooping() throws Exception { 91686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 91786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 91886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 91986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 92086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 92186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Looping", audioTrack.isLooping()); 92286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.enableLoop(); 92386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Looping", audioTrack.isLooping()); 92486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.disableLoop(); 92586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Looping", audioTrack.isLooping()); 92686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 92786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 92886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 92986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Audio Track API:Extract waveform data 93086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 93186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_022 93286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 93386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 93486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackWaveFormData() throws Exception { 93586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** Image item is added as dummy as Audio track cannot be added without 93686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * a media item in the story board 93786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 93886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_640x480.jpg"; 93986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 94086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem = 94186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 94286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 94386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem); 94486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 94586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 94686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 94786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 94886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 94986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 95086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 95186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNull("WaveForm data", audioTrack.getWaveformData()); 95286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 95386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int[] progressUpdate = new int[105]; 95486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.generatePreview(new MediaProcessingProgressListener() { 95586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru int i = 0; 95686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void onProgress(Object item, int action, int progress) { 95786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru progressUpdate[i++] = progress; 95886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 95986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }); 96086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 96186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int[] progressWaveform = new int[105]; 96286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 96386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.extractAudioWaveform( 96486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru new ExtractAudioWaveformProgressListener() { 96586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru int i = 0; 96686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void onProgress(int progress) { 96786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Log.i("AudioWaveformData","progress=" +progress); 96886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru progressWaveform[i++] = progress; 96986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 97086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }); 97186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Progress of WaveForm data", mVideoEditorHelper 97286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru .checkProgressCBValues(progressWaveform)); 97386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("WaveForm data", audioTrack.getWaveformData()); 97486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Frame Duration", 97586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (audioTrack.getWaveformData().getFrameDuration() > 0 ? 97686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 97786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Frame Count", 97886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (audioTrack.getWaveformData().getFramesCount() > 0 ? true : false)); 97986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("WaveForm Gain", 98086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (audioTrack.getWaveformData().getFrameGains().length > 0 ? 98186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 98286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 98386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 98486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 98586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Audio Track API: Mute 98686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 98786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_023 98886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 98986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackMute() throws Exception { 99086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 99186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 99286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 99386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 99486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track UnMute", audioTrack.isMuted()); 99586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setMute(true); 99686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track Mute", audioTrack.isMuted()); 99786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setMute(false); 99886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track UnMute", audioTrack.isMuted()); 99986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 100086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 100186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 100286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test the Audio Track API: Get Volume and Set Volume 100386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 100486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_024 100586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 100686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioTrackGetSetVolume() throws Exception { 100786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 100886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 100986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 101086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 101186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 101286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setVolume(0); 101386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Volume", 0, audioTrack.getVolume()); 101486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track UnMute", audioTrack.isMuted()); 101586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setVolume(45); 101686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Volume", 45, audioTrack.getVolume()); 101786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track UnMute", audioTrack.isMuted()); 101886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 101986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setVolume(-1); 102086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 102186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 102286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 102386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Volume = -1", flagForException); 102486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Volume", 45, audioTrack.getVolume()); 102586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 102686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 102786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setVolume(101); 102886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 102986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 103086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 103186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Volume = 101", flagForException); 103286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 103386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 103486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.setVolume(1000); 103586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 103686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 103786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 103886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Volume = 10000", flagForException); 103986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Volume", 45, audioTrack.getVolume()); 104086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 104186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 104286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 104386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect Color. 104486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 104586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_025 104686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 104786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAllEffects() throws Exception { 104886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH + 104986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_30fps_512Kbps_0_27.mp4"; 105086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 105186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 105286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 105386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, MediaItem.RENDERING_MODE_BLACK_BORDER); 105486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 105586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 105686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor1 = mVideoEditorHelper.createEffectItem( 105786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect1", 1000, 1000, EffectColor.TYPE_COLOR, 105886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.PINK); 105986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor1); 106086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 106186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 106286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.getMediaItem()); 106386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor1.getId().equals("effect1")); 106486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 1000, effectColor1.getStartTime()); 106586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor1.getDuration()); 106686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_COLOR, 106786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.getType()); 106886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", EffectColor.PINK, effectColor1.getColor()); 106986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 107086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor2 = mVideoEditorHelper.createEffectItem( 107186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect2", 2000, 1000, EffectColor.TYPE_COLOR, 107286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.GRAY); 107386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor2); 107486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 107586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 107686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor2.getMediaItem()); 107786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor2.getId().equals("effect2")); 107886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 2000, effectColor2.getStartTime()); 107986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor2.getDuration()); 108086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_COLOR, 108186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor2.getType()); 108286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", EffectColor.GRAY, effectColor2.getColor()); 108386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 108486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor3 = mVideoEditorHelper.createEffectItem( 108586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect3", 3000, 1000, EffectColor.TYPE_COLOR, 108686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.GREEN); 108786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor3); 108886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 108986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 109086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor3.getMediaItem()); 109186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor3.getId().equals("effect3")); 109286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 3000, effectColor3.getStartTime()); 109386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor3.getDuration()); 109486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_COLOR, 109586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor3.getType()); 109686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", EffectColor.GREEN, effectColor3.getColor()); 109786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 109886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor4 = mVideoEditorHelper.createEffectItem( 109986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect4", 4000, 1000, EffectColor.TYPE_GRADIENT, 110086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.PINK); 110186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor4); 110286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 110386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 110486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor4.getMediaItem()); 110586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor4.getId().equals("effect4")); 110686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 4000, effectColor4.getStartTime()); 110786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor4.getDuration()); 110886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_GRADIENT, 110986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor4.getType()); 111086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", EffectColor.PINK, effectColor4.getColor()); 111186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 111286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor5 = mVideoEditorHelper.createEffectItem( 111386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect5", 5000, 1000, 111486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_GRADIENT, EffectColor.GRAY); 111586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor5); 111686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 111786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 111886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor5.getMediaItem()); 111986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor5.getId().equals("effect5")); 112086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 5000, effectColor5.getStartTime()); 112186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor5.getDuration()); 112286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_GRADIENT, 112386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor5.getType()); 112486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", EffectColor.GRAY, effectColor5.getColor()); 112586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 112686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor6 = mVideoEditorHelper.createEffectItem( 112786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect6", 6000, 1000, 112886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_GRADIENT, EffectColor.GREEN); 112986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor6); 113086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 113186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 113286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor6.getMediaItem()); 113386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor6.getId().equals("effect6")); 113486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 6000, effectColor6.getStartTime()); 113586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor6.getDuration()); 113686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", 113786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_GRADIENT, effectColor6.getType()); 113886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", 113986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.GREEN, effectColor6.getColor()); 114086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 114186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor7 = mVideoEditorHelper.createEffectItem( 114286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect7", 7000, 1000, 114386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_FIFTIES, 0); 114486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor7); 114586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 114686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 114786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor7.getMediaItem()); 114886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor7.getId().equals("effect7")); 114986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 7000, effectColor7.getStartTime()); 115086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor7.getDuration()); 115186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_FIFTIES, 115286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor7.getType()); 115386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", -1, effectColor7.getColor()); 115486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 115586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor8 = mVideoEditorHelper.createEffectItem( 115686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect8", 8000, 1000, EffectColor.TYPE_SEPIA, 0); 115786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor8); 115886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 115986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 116086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor8.getMediaItem()); 116186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor8.getId().equals("effect8")); 116286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 8000, effectColor8.getStartTime()); 116386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor8.getDuration()); 116486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_SEPIA, 116586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor8.getType()); 116686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", -1, effectColor8.getColor()); 116786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 116886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor9 = mVideoEditorHelper.createEffectItem( 116986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect9", 9000, 1000, 117086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_NEGATIVE, 0); 117186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor9); 117286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 117386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Associated Media Item", mediaVideoItem1, 117486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor9.getMediaItem()); 117586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Id", effectColor9.getId().equals("effect9")); 117686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect StartTime", 9000, effectColor9.getStartTime()); 117786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect EndTime", 1000, effectColor9.getDuration()); 117886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Type", EffectColor.TYPE_NEGATIVE, 117986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor9.getType()); 118086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Color", -1, effectColor9.getColor()); 118186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 118286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect9", 118386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 9000, 1000, EffectColor.TYPE_COLOR - 1, 0); 118486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 118586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 118686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 118786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect type Invalid", flagForException); 118886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 118986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 119086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect9", 119186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 9000, 1000, EffectColor.TYPE_FIFTIES + 1, 0); 119286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 119386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 119486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 119586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect type Invalid", flagForException); 119686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 119786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect10", 119886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 10000, 1000, EffectColor.TYPE_FIFTIES + 119986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_GRADIENT, 0); 120086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 120186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 120286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 120386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect type Invalid", flagForException); 120486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 120586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 120686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 120786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect Color : Set duration and Get Duration 120886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 120986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_026 121086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 121186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectSetgetDuration() throws Exception { 121286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH + 121386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_30fps_512Kbps_0_27.mp4"; 121486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 121586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 121686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 121786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 121886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 121986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 122086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 122186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectColor effectColor1 = mVideoEditorHelper.createEffectItem( 122286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "effect1", 1000, 2000, 122386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_COLOR, EffectColor.PINK); 122486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(effectColor1); 122586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 122686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.setDuration(5000); 122786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Updated Effect Duration", 5000, 122886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.getDuration()); 122986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 123086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.setDuration(mediaVideoItem1.getDuration() + 1000); 123186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 123286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 123386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 123486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Color duration > mediaVideoItemDuration", 123586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 123686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Effect Duration", 5000, effectColor1.getDuration()); 123786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 123886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 123986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru effectColor1.setDuration(-1); 124086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 124186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 124286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 124386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect Color duration = -1", flagForException); 124486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 124586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 124686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 124786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect Color : UNDEFINED color param value 124886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 124986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_027 125086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 125186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectUndefinedColorParam() throws Exception { 125286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH + 125386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_30fps_512Kbps_0_27.mp4"; 125486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 125586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 125686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 125786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 125886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 125986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 126086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try{ 126186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect1", 1000, 126286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 2000, EffectColor.TYPE_COLOR, 0xabcdabcd); 126386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }catch (IllegalArgumentException e){ 126486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 126586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 126686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Effect added",flagForException); 126786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 126886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 126986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 127086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect Color : with Invalid StartTime and Duration 127186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 127286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_028 127386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 127486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectInvalidStartTimeAndDuration() throws Exception { 127586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName = INPUT_FILE_PATH + 127686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_15fps_1200Kbps_AACLC_48KHz_32kbps_m_1_17.3gp"; 127786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int videoItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 127886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 127986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 128086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaVideoItem1", 128186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName, videoItemRenderingMode); 128286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 128386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 128486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 128586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect1", 128686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 400000000, 2000, EffectColor.TYPE_COLOR, EffectColor.GREEN); 128786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 128886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 128986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 129086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect with invalid StartTime", flagForException); 129186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 129286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 129386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 129486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect1", -1, 129586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 2000, EffectColor.TYPE_COLOR, EffectColor.GREEN); 129686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 129786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 129886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 129986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect with invalid StartTime", flagForException); 130086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 130186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 130286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 130386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(mediaVideoItem1, "effect1", 130486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 2000, -1, EffectColor.TYPE_COLOR, EffectColor.GREEN); 130586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 130686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 130786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 130886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect with invalid Duration", flagForException); 130986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 131086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 131186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 131286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** Test cases 29, 30, 31, 32 and 33 are removed */ 131386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 131486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 131586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 131686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect : with NULL Media Item 131786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 131886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_034 131986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 132086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectNullMediaItem() throws Exception { 132186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 132286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 132386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createEffectItem(null, "effect1", 1000, 4000, 132486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectColor.TYPE_COLOR, EffectColor.GREEN); 132586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 132686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 132786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 132886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Effect with null MediaItem", flagForException); 132986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 133086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 133186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 133286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Effect : KenBurn Effect 133386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 133486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_035 133586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 133686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectKenBurn() throws Exception { 133788f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong // Test ken burn effect using a JPEG file. 1338559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury testEffectKenBurn(INPUT_FILE_PATH + "IMG_640x480.jpg", 1339559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury "mediaImageItem1"); 134088f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong 134188f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong // Test ken burn effect using a PNG file 1342559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury testEffectKenBurn(INPUT_FILE_PATH + "IMG_640x480.png", 1343559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury "mediaImageItem2"); 134488f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong } 134588f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong 1346559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury private void testEffectKenBurn(final String imageItemFileName, 1347559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury final String MediaId) throws Exception { 134886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 134986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem = 1350559bb7951f283264e241df6845fef5bbe63b7f81Rajneesh Chowdury mVideoEditorHelper.createMediaItem(mVideoEditor, MediaId, 135186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 135286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem); 135386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 135486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect startRect = new Rect((mediaImageItem.getHeight() / 3), 135586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 3), (mediaImageItem.getHeight() / 2), 135686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 2)); 135786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect endRect = new Rect(0, 0, mediaImageItem.getWidth(), 135886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.getHeight()); 135986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 136086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final EffectKenBurns kbEffectOnMediaItem = new EffectKenBurns( 136186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem, "KBOnM2", startRect, endRect, 500, 3000); 136286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 136388f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong assertNotNull("EffectKenBurns: " + imageItemFileName, 136488f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong kbEffectOnMediaItem); 136588f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong 136686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.addEffect(kbEffectOnMediaItem); 136788f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong assertEquals("KenBurn Start Rect: " + imageItemFileName, startRect, 136886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getStartRect()); 136988f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong 137088f7194f6d93b6bb5822ad3c45ae9e59395212b9James Dong assertEquals("KenBurn End Rect: " + imageItemFileName, endRect, 137186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getEndRect()); 137286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 137386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 137486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 137586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test KenBurnEffect : Set StartRect and EndRect 137686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 137786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 137886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_036 137986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 138086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testEffectKenBurnSet() throws Exception { 138186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName = INPUT_FILE_PATH + "IMG_640x480.jpg"; 138286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int imageItemRenderingMode =MediaItem.RENDERING_MODE_BLACK_BORDER; 138386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 138486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem = 138586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "mediaImageItem1", 138686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName, 5000, imageItemRenderingMode); 138786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem); 138886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 138986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect startRect = new Rect((mediaImageItem.getHeight() / 3), 139086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 3), (mediaImageItem.getHeight() / 2), 139186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 2)); 139286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect endRect = new Rect(0, 0, mediaImageItem.getWidth(), 139386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.getHeight()); 139486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 139586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru EffectKenBurns kbEffectOnMediaItem=null; 139686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem = new EffectKenBurns(mediaImageItem, "KBOnM2", 139786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru startRect, endRect, 500, 3000); 139886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 139986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("EffectKenBurns", kbEffectOnMediaItem); 140086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.addEffect(kbEffectOnMediaItem); 140186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("KenBurn Start Rect", startRect, 140286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getStartRect()); 140386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("KenBurn End Rect", endRect, 140486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getEndRect()); 140586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 140686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect startRect1 = new Rect((mediaImageItem.getHeight() / 5), 140786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 5), (mediaImageItem.getHeight() / 4), 140886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (mediaImageItem.getWidth() / 4)); 140986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect endRect1 = new Rect(10, 10, mediaImageItem.getWidth() / 4, 141086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.getHeight() / 4); 141186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 141286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /* Added newly to take care of removal set APIs */ 141386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem = new EffectKenBurns(mediaImageItem, "KBOnM2_changed", 141486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru startRect1, endRect1, 500, 3000); 141586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 141686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("KenBurn Start Rect", startRect1, 141786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getStartRect()); 141886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("KenBurn End Rect", endRect1, 141986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem.getEndRect()); 142086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 142186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Rect zeroRect = new Rect(0, 0, 0, 0); 142286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 142386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem = new EffectKenBurns(mediaImageItem, "KBOnM2_zeroStart", 142486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru zeroRect, endRect, 500, 3000); 142586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 142686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 142786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 142886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 142986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Start Rect", flagForException); 143086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 143186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 143286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 143386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru kbEffectOnMediaItem = new EffectKenBurns(mediaImageItem, "KBOnM2_zeroEnd", 143486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru startRect, zeroRect, 500, 3000); 143586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 143686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 143786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 143886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid End Rect", flagForException); 143986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 144086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 144186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 144286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Transition : Fade To Black with all behavior 144386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * SPEED_UP/SPEED_DOWN/LINEAR/MIDDLE_SLOW/MIDDLE_FAST 144486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 144586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 144686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_037 144786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 144886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testTransitionFadeBlack() throws Exception { 144986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 145086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 145186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 145286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename2 = INPUT_FILE_PATH + 145386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_15fps_128kbps_1_35.3gp"; 145486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename1 = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 145586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename3 = INPUT_FILE_PATH + 145686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_192kbps_1_5.mp4"; 145786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename4 = INPUT_FILE_PATH + 145886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_256kbps_0_30.mp4"; 145986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename5 = INPUT_FILE_PATH + 146086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_10fps_96kbps_0_25.3gp"; 146186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 146286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 146386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 146486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 146586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 146686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 146786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 146886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 146986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem2 = 147086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", 147186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename2, MediaItem.RENDERING_MODE_BLACK_BORDER); 147286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.setExtractBoundaries(0, 15000); 147386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem2); 147486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 147586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionFadeBlack transition1And2 = mVideoEditorHelper 147686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru .createTFadeBlack("transition1And2", mediaVideoItem1, 147786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2, 3000, Transition.BEHAVIOR_SPEED_UP); 147886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And2); 147986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 148086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 148186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getId().equals("transition1And2")); 148286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", 148386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, transition1And2.getAfterMediaItem()); 148486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem2, 148586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBeforeMediaItem()); 148686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 3000, transition1And2.getDuration()); 148786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_UP, 148886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBehavior()); 148986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 149086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem3 = 149186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m3", 149286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename1, 15000, MediaItem.RENDERING_MODE_BLACK_BORDER); 149386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem3); 149486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 149586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionFadeBlack transition2And3 = 149686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition2And3", mediaVideoItem2, 149786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem3, 1000, Transition.BEHAVIOR_SPEED_DOWN); 149886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2And3); 149986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 150086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 150186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getId().equals("transition2And3")); 150286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem2, 150386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getAfterMediaItem()); 150486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaImageItem3, 150586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBeforeMediaItem()); 150686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 1000, transition2And3.getDuration()); 150786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_DOWN, 150886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBehavior()); 150986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 151086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem4 = 151186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m4", 151286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename3, MediaItem.RENDERING_MODE_BLACK_BORDER); 151386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4.setExtractBoundaries(0, 20000); 151486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem4); 151586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 151686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionFadeBlack transition3And4 = 151786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition3And4", mediaImageItem3, 151886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4, 5000, Transition.BEHAVIOR_LINEAR); 151986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition3And4); 152086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 152186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 152286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getId().equals("transition3And4")); 152386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaImageItem3, 152486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getAfterMediaItem()); 152586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem4, 152686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBeforeMediaItem()); 152786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 5000, transition3And4.getDuration()); 152886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_LINEAR, 152986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBehavior()); 153086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 153186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem5 = 153286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m5", 153386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename4, MediaItem.RENDERING_MODE_BLACK_BORDER); 153486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem5); 153586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 153686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionFadeBlack transition4And5 = 153786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition4And5", mediaVideoItem4, 153886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 8000, Transition.BEHAVIOR_MIDDLE_FAST); 153986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition4And5); 154086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 154186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 154286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getId().equals("transition4And5")); 154386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem4, 154486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getAfterMediaItem()); 154586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem5, 154686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBeforeMediaItem()); 154786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 8000, transition4And5.getDuration()); 154886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_FAST, 154986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBehavior()); 155086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 155186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem6 = 155286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m6", 155386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename5, MediaItem.RENDERING_MODE_BLACK_BORDER); 155486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6.setExtractBoundaries(0, 20000); 155586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem6); 155686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 155786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionFadeBlack transition5And6 = 155886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transition5And6", mediaVideoItem5, 155986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_SLOW); 156086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition5And6); 156186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 156286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 156386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getId().equals("transition5And6")); 156486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem5, 156586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getAfterMediaItem()); 156686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem6, 156786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBeforeMediaItem()); 156886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 2000, transition5And6.getDuration()); 156986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_SLOW, 157086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBehavior()); 157186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 157286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 157386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transitiond6", mediaVideoItem5, 157486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_SPEED_UP - 1); 157586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 157686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 157786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 157886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 157986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 158086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 158186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTFadeBlack("transitiond6", mediaVideoItem5, 158286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_FAST + 1); 158386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 158486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 158586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 158686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 158786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 158886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 158986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 159086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Transition : CrossFade with all behavior 159186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * SPEED_UP/SPEED_DOWN/LINEAR/MIDDLE_SLOW/MIDDLE_FAST 159286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 159386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 159486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_038 159586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 159686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testTransitionCrossFade() throws Exception { 159786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 159886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 159986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 160086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename2 = INPUT_FILE_PATH + 160186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_15fps_128kbps_1_35.3gp"; 160286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename1 = INPUT_FILE_PATH + "IMG_1600x1200.jpg"; 160386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename3 = INPUT_FILE_PATH + 160486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_192kbps_1_5.mp4"; 160586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename4 = INPUT_FILE_PATH + 160686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_256kbps_0_30.mp4"; 160786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename5 = INPUT_FILE_PATH + 160886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_10fps_96kbps_0_25.3gp"; 160986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 161086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 161186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 161286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 161386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 161486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 161586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 161686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem2 = 161786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", 161886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename2, MediaItem.RENDERING_MODE_BLACK_BORDER); 161986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.setExtractBoundaries(0, 15000); 162086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem2); 162186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 162286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionCrossfade transition1And2 = 162386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transition1And2", mediaVideoItem1, 162486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2, 3000, Transition.BEHAVIOR_SPEED_UP); 162586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And2); 162686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 162786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 162886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getId().equals("transition1And2")); 162986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem1, 163086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getAfterMediaItem()); 163186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem2, 163286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBeforeMediaItem()); 163386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 3000, transition1And2.getDuration()); 163486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_UP, 163586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBehavior()); 163686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 163786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem3 = 163886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m3", 163986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename1, 15000, MediaItem.RENDERING_MODE_BLACK_BORDER); 164086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem3); 164186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 164286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionCrossfade transition2And3 = 164386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transition2And3", mediaVideoItem2, 164486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem3, 1000, Transition.BEHAVIOR_SPEED_DOWN); 164586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2And3); 164686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 164786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 164886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getId().equals("transition2And3")); 164986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem2, 165086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getAfterMediaItem()); 165186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaImageItem3, 165286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBeforeMediaItem()); 165386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 1000, transition2And3.getDuration()); 165486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_DOWN, 165586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBehavior()); 165686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 165786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem4 = 165886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m4", 165986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename3, MediaItem.RENDERING_MODE_BLACK_BORDER); 166086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4.setExtractBoundaries(0, 18000); 166186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem4); 166286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 166386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionCrossfade transition3And4 = 166486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transition3And4", mediaImageItem3, 166586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4, 5000, Transition.BEHAVIOR_LINEAR); 166686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition3And4); 166786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 166886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 166986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getId().equals("transition3And4")); 167086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaImageItem3, 167186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getAfterMediaItem()); 167286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem4, 167386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBeforeMediaItem()); 167486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 5000, transition3And4.getDuration()); 167586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_LINEAR, 167686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBehavior()); 167786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 167886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem5 = 167986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m5", 168086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename4, MediaItem.RENDERING_MODE_BLACK_BORDER); 168186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem5); 168286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 168386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionCrossfade transition4And5 = 168486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transition4And5", mediaVideoItem4, 168586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 8000, Transition.BEHAVIOR_MIDDLE_FAST); 168686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition4And5); 168786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 168886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 168986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getId().equals("transition4And5")); 169086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem4, 169186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getAfterMediaItem()); 169286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem5, 169386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBeforeMediaItem()); 169486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 8000, transition4And5.getDuration()); 169586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_FAST, 169686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBehavior()); 169786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 169886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem6 = 169986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m6", 170086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename5, MediaItem.RENDERING_MODE_BLACK_BORDER); 170186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6.setExtractBoundaries(0, 20000); 170286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem6); 170386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 170486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionCrossfade transition5And6 = 170586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transition5And6", mediaVideoItem5, 170686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_SLOW); 170786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition5And6); 170886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 170986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 171086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getId().equals("transition5And6")); 171186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem5, 171286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getAfterMediaItem()); 171386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem6, 171486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBeforeMediaItem()); 171586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 2000, transition5And6.getDuration()); 171686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_SLOW, 171786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBehavior()); 171886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 171986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 172086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 172186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transitiond6", mediaVideoItem5, 172286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_SPEED_UP - 1); 172386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 172486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 172586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 172686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 172786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 172886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 172986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTCrossFade("transitiond6", mediaVideoItem5, 173086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_FAST + 1); 173186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 173286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 173386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 173486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 173586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 173686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 173786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 173886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Transition : Sliding with all behavior 173986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * SPEED_UP/SPEED_DOWN/LINEAR/MIDDLE_SLOW/MIDDLE_FAST and Direction = 174086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * DIRECTION_RIGHT_OUT_LEFT_IN 174186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * ,DIRECTION_LEFT_OUT_RIGHT_IN,DIRECTION_TOP_OUT_BOTTOM_IN 174286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * ,DIRECTION_BOTTOM_OUT_TOP_IN 174386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 174486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 174586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_039 174686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 174786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testTransitionSliding() throws Exception { 174886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 174986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 175086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename2 = INPUT_FILE_PATH + 175186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_15fps_128kbps_1_35.3gp"; 175286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename1 = INPUT_FILE_PATH + 175386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "IMG_1600x1200.jpg"; 175486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename3 = INPUT_FILE_PATH + 175586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_192kbps_1_5.mp4"; 175686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename4 = INPUT_FILE_PATH + 175786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_256kbps_0_30.mp4"; 175886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename5 = INPUT_FILE_PATH + 175986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_10fps_96kbps_0_25.3gp"; 176086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 176186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 176286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 176386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 176486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 176586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 176686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 176786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 176886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem2 = 176986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", 177086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename2, MediaItem.RENDERING_MODE_BLACK_BORDER); 177186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.setExtractBoundaries(0, 15000); 177286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem2); 177386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 177486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionSliding transition1And2 = 177586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transition1And2", mediaVideoItem1, 177686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2, 3000, Transition.BEHAVIOR_SPEED_UP, 177786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN); 177886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And2); 177986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 178086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 178186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getId().equals("transition1And2")); 178286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem1, 178386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getAfterMediaItem()); 178486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem2, 178586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBeforeMediaItem()); 178686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 3000, transition1And2.getDuration()); 178786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_UP, 178886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBehavior()); 178986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition Sliding", 179086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN, 179186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getDirection()); 179286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 179386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem3 = 179486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m3", 179586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename1, 15000, MediaItem.RENDERING_MODE_BLACK_BORDER); 179686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem3); 179786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 179886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionSliding transition2And3 = 179986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transition2And3", 180086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2, mediaImageItem3, 1000, 180186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Transition.BEHAVIOR_SPEED_DOWN, 180286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_LEFT_OUT_RIGHT_IN); 180386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2And3); 180486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 180586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 180686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getId().equals("transition2And3")); 180786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem2, 180886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getAfterMediaItem()); 180986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaImageItem3, 181086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBeforeMediaItem()); 181186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 1000, transition2And3.getDuration()); 181286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_DOWN, 181386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBehavior()); 181486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition Sliding", 181586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_LEFT_OUT_RIGHT_IN, 181686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getDirection()); 181786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 181886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem4 = 181986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m4", 182086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename3, MediaItem.RENDERING_MODE_BLACK_BORDER); 182186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4.setExtractBoundaries(0, 18000); 182286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem4); 182386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 182486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionSliding transition3And4 = 182586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transition3And4", mediaImageItem3, 182686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4, 5000, Transition.BEHAVIOR_LINEAR, 182786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_TOP_OUT_BOTTOM_IN); 182886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition3And4); 182986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 183086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 183186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getId().equals("transition3And4")); 183286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaImageItem3, 183386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getAfterMediaItem()); 183486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem4, 183586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBeforeMediaItem()); 183686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 5000, transition3And4.getDuration()); 183786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_LINEAR, 183886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBehavior()); 183986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition Sliding", 184086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_TOP_OUT_BOTTOM_IN, 184186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getDirection()); 184286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 184386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem5 = 184486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m5", 184586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename4, MediaItem.RENDERING_MODE_BLACK_BORDER); 184686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem5); 184786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 184886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionSliding transition4And5 = 184986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transition4And5", mediaVideoItem4, 185086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 8000, Transition.BEHAVIOR_MIDDLE_FAST, 185186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_BOTTOM_OUT_TOP_IN); 185286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition4And5); 185386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 185486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 185586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getId().equals("transition4And5")); 185686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem4, 185786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getAfterMediaItem()); 185886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem5, 185986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBeforeMediaItem()); 186086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 8000, transition4And5.getDuration()); 186186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_FAST, 186286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBehavior()); 186386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition Sliding", 186486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_BOTTOM_OUT_TOP_IN, 186586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getDirection()); 186686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 186786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem6 = 186886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m6", 186986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename5, MediaItem.RENDERING_MODE_BLACK_BORDER); 187086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6.setExtractBoundaries(0, 20000); 187186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem6); 187286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 187386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionSliding transition5And6 = 187486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transition5And6", mediaVideoItem5, 187586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_SLOW, 187686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN); 187786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition5And6); 187886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 187986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 188086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getId().equals("transition5And6")); 188186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem5, 188286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getAfterMediaItem()); 188386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem6, 188486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBeforeMediaItem()); 188586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 2000, transition5And6.getDuration()); 188686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_SLOW, 188786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getBehavior()); 188886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition Sliding", 188986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN, 189086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition5And6.getDirection()); 189186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 189286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 189386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 189486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transitiond6", mediaVideoItem5, 189586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_SLOW, 189686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN - 1); 189786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 189886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 189986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 190086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition Sliding with Invalid Direction", flagForException); 190186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 190286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 190386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transitiond6", mediaVideoItem5, 190486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_FAST + 1, 190586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_BOTTOM_OUT_TOP_IN + 1); 190686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 190786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 190886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 190986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition Sliding with Invalid behavior", flagForException); 191086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 191186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 191286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transitiond6", mediaVideoItem5, 191386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_SPEED_UP - 1, 191486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN); 191586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 191686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 191786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 191886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition Sliding with Invalid behavior", flagForException); 191986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 192086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 192186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTSliding("transitiond6", mediaVideoItem5, 192286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_FAST + 1, 192386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionSliding.DIRECTION_RIGHT_OUT_LEFT_IN); 192486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 192586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 192686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 192786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition Sliding with Invalid behavior", flagForException); 192886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 192986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 193086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 193186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Transition : Alpha with all behavior 193286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * SPEED_UP/SPEED_DOWN/LINEAR/MIDDLE_SLOW/MIDDLE_FAST 193386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 193486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 193586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_040 193686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 193786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testTransitionAlpha() throws Exception { 193886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 193986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 194086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 194186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename2 = INPUT_FILE_PATH + 194286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_15fps_128kbps_1_35.3gp"; 194386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename1 = INPUT_FILE_PATH + 194486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "IMG_640x480.jpg"; 194586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename3 = INPUT_FILE_PATH + 194686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_192kbps_1_5.mp4"; 194786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename4 = INPUT_FILE_PATH + 194886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_256kbps_0_30.mp4"; 194986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename5 = INPUT_FILE_PATH + 195086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_10fps_96kbps_0_25.3gp"; 195186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String maskFilename = INPUT_FILE_PATH + 195286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "TransitionSpiral_QVGA.jpg"; 195386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 195486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 195586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 195686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 195786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 195886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 195986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 196086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem2 = 196186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", 196286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename2, MediaItem.RENDERING_MODE_BLACK_BORDER); 196386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.setExtractBoundaries(0, 15000); 196486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem2); 196586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 196686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionAlpha transition1And2 = 196786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition1And2", mediaVideoItem1, 196886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2, 3000, Transition.BEHAVIOR_SPEED_UP, maskFilename, 196986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 10, false); 197086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And2); 197186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 197286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 197386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getId().equals("transition1And2")); 197486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem1, 197586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getAfterMediaItem()); 197686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem2, 197786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBeforeMediaItem()); 197886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 3000, transition1And2.getDuration()); 197986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_UP, 198086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBehavior()); 198186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition maskFile", 198286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getMaskFilename().equals(maskFilename)); 198386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition BlendingPercent", 10, 198486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBlendingPercent()); 198586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Transition Invert", transition1And2.isInvert()); 198686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 198786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem3 = 198886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m3", 198986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename1, 15000, MediaItem.RENDERING_MODE_BLACK_BORDER); 199086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem3); 199186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 199286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionAlpha transition2And3 = 199386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition2And3", mediaVideoItem2, 199486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem3, 1000, Transition.BEHAVIOR_SPEED_DOWN, 199586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru maskFilename, 30, false); 199686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2And3); 199786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 199886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 199986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getId().equals("transition2And3")); 200086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem2, 200186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getAfterMediaItem()); 200286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaImageItem3, 200386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBeforeMediaItem()); 200486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 1000, transition2And3.getDuration()); 200586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_SPEED_DOWN, 200686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBehavior()); 200786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition maskFile", 200886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getMaskFilename().equals(maskFilename)); 200986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition BlendingPercent", 30, 201086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And3.getBlendingPercent()); 201186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Transition Invert", transition2And3.isInvert()); 201286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 201386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem4 = 201486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m4", 201586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename3, MediaItem.RENDERING_MODE_BLACK_BORDER); 201686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4.setExtractBoundaries(0, 18000); 201786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem4); 201886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 201986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionAlpha transition3And4 = 202086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition3And4", mediaImageItem3, 202186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem4, 5000, Transition.BEHAVIOR_LINEAR, maskFilename, 202286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 50, false); 202386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition3And4); 202486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 202586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 202686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getId().equals("transition3And4")); 202786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaImageItem3, 202886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getAfterMediaItem()); 202986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem4, 203086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBeforeMediaItem()); 203186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 5000, transition3And4.getDuration()); 203286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_LINEAR, 203386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBehavior()); 203486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition maskFile", 203586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getMaskFilename().equals(maskFilename)); 203686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition BlendingPercent", 50, 203786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition3And4.getBlendingPercent()); 203886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Transition Invert", transition3And4.isInvert()); 203986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 204086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem5 = 204186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m5", 204286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename4, MediaItem.RENDERING_MODE_BLACK_BORDER); 204386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem5); 204486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 204586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionAlpha transition4And5 = 204686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition4And5", mediaVideoItem4, 204786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 8000, Transition.BEHAVIOR_MIDDLE_FAST, 204886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru maskFilename, 70, true); 204986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition4And5); 205086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 205186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition ID", 205286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getId().equals("transition4And5")); 205386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion After Media item", mediaVideoItem4, 205486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getAfterMediaItem()); 205586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Before Media item", mediaVideoItem5, 205686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBeforeMediaItem()); 205786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Duration", 8000, transition4And5.getDuration()); 205886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transtion Behavior", Transition.BEHAVIOR_MIDDLE_FAST, 205986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBehavior()); 206086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition maskFile", 206186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getMaskFilename().equals(maskFilename)); 206286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition BlendingPercent", 70, 206386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition4And5.getBlendingPercent()); 206486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition Invert", transition4And5.isInvert()); 206586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 206686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem6 = 206786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m6", 206886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename5, MediaItem.RENDERING_MODE_BLACK_BORDER); 206986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6.setExtractBoundaries(0, 20000); 207086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem6); 207186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 207286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 207386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition5And6", mediaVideoItem5, 207486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem6, 2000, Transition.BEHAVIOR_MIDDLE_SLOW, 207586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru INPUT_FILE_PATH + "imDummyFile.jpg", 70, 207686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true); 207786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 207886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 207986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 208086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("MaskFile is not exsisting", flagForException); 208186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 208286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 208386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition5And6", null, null, 2000, 208486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Transition.BEHAVIOR_MIDDLE_SLOW, maskFilename, 101, true); 208586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 208686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 208786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 208886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Invalid Blending Percent", flagForException); 208986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 209086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 209186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 209286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transitiond6", mediaVideoItem4, 209386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 2000, Transition.BEHAVIOR_SPEED_UP - 1, 209486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru maskFilename, 30, false); 209586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 209686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 209786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 209886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 209986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 210086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 210186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transitiond6", mediaVideoItem4, 210286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem5, 2000, Transition.BEHAVIOR_MIDDLE_FAST + 1, 210386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru maskFilename, 30, false); 210486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 210586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 210686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 210786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition FadeBlack with Invalid behavior", flagForException); 210886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 210986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 211086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 211186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Video Item 211286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 211386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 211486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_041 211586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 211686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlayVideoItem() throws Exception { 211786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 211886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H263_profile0_176x144_10fps_256kbps_0_25.3gp"; 211986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_176x144_Overlay1.png"; 212086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile2 = INPUT_FILE_PATH + "IMG_176x144_Overlay2.png"; 212186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 212286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 212386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 212486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 212586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 212686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap1 = mVideoEditorHelper.getBitmap(overlayFile1, 212786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 176, 144); 212886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame1 = mVideoEditorHelper.createOverlay( 212986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "overlayId1", mBitmap1, 5000, 5000); 213086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addOverlay(overlayFrame1); 213186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 213286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay : Media Item", mediaVideoItem1, 213386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.getMediaItem()); 213486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Id", overlayFrame1.getId().equals("overlayId1")); 213586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Bitmap", mBitmap1, overlayFrame1.getBitmap()); 213686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Start Time", 5000, overlayFrame1.getStartTime()); 213786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 213886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 213986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Bitmap upddateBmp = mVideoEditorHelper.getBitmap(overlayFile2, 176, 144); 214086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setBitmap(upddateBmp); 214186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Update Bitmap", upddateBmp, overlayFrame1.getBitmap()); 214286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru upddateBmp.recycle(); 214386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 214486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 214586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 214686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Video Item : Set duration and Get 214786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Duration 214886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 214986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 215086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_042 215186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 215286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlaySetAndGet() throws Exception { 215386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 215486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_30fps_512Kbps_0_27.mp4"; 215586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 215686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 215786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 215886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 215986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 216086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 216186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 216286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 216386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 216486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 216586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 216686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame1 = mVideoEditorHelper.createOverlay( 216786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1, "overlayId1", mBitmap, 5000, 5000); 216886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addOverlay(overlayFrame1); 216986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(5000); 217086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 217186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 217286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 217386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(mediaVideoItem1.getDuration() + 10000); 217486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 217586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 217686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 217786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Duration > MediaVideo Item Duration", 217886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException); 217986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 218086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 218186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 218286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 218386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 218486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(-1); 218586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 218686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 218786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 218886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Duration = -1", flagForException); 218986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 219086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 219186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 219286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Video Item : Set duration and Get 219386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Duration 219486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 219586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 219686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_043 219786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 219886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlayInvalidTime() throws Exception { 219986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 220086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_1200kbps_AACLC_48khz_64kbps_m_1_17.3gp"; 220186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 220286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 220386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 220486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 220586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 220686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 220786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 220886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 220986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 221086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 221186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 221286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaVideoItem1, "overlayId1", 221386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 400000000, 2000); 221486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 221586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 221686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 221786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 221886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 221986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 222086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 222186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 222286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 222386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaVideoItem1, "overlayId2", 222486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, -1, 2000); 222586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 222686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 222786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 222886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 222986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 223086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 223186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 223286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 223386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 223486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaVideoItem1, "overlayId3", 223586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 2000, -1); 223686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 223786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 223886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 223986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 224086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 224186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 224286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 224386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Image Item 224486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 224586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_045 224686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 224786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlayImageItem() throws Exception { 224886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename1 = INPUT_FILE_PATH + "IMG_640x480.jpg"; 224986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 225086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile2 = INPUT_FILE_PATH + "IMG_640x480_Overlay2.png"; 225186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 225286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 225386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 225486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename1, 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 225586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 225686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 225786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 640, 225886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 480); 225986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame1 = mVideoEditorHelper.createOverlay( 226086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1, "overlayId1", mBitmap, 5000, 5000); 226186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.addOverlay(overlayFrame1); 226286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 226386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay : Media Item", mediaImageItem1, 226486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.getMediaItem()); 226586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Id", overlayFrame1.getId().equals("overlayId1")); 226686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Bitmap",mBitmap ,overlayFrame1.getBitmap()); 226786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Start Time", 5000, overlayFrame1.getStartTime()); 226886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 226986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Bitmap upddateBmp = mVideoEditorHelper.getBitmap(overlayFile2, 640, 480); 227086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 227186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setBitmap(upddateBmp); 227286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Update Bitmap", upddateBmp, overlayFrame1.getBitmap()); 227386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru upddateBmp.recycle(); 227486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 227586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 227686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 227786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Image Item : Set duration and Get 227886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Duration 227986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 228086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 228186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_046 228286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 228386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlaySetAndGetImage() throws Exception { 228486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + "IMG_640x480.jpg"; 228586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 228686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 228786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 228886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 228986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 229086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 229186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 229286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 229386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 229486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 229586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final OverlayFrame overlayFrame1 = mVideoEditorHelper.createOverlay( 229686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1, "overlayId1", mBitmap, 5000, 5000); 229786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem1.addOverlay(overlayFrame1); 229886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 229986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(5000); 230086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 230186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 230286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 230386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(mediaImageItem1.getDuration() + 10000); 230486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 230586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 230686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 230786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Duration > Media Item Duration", flagForException); 230886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Overlay Duration", 5000, overlayFrame1.getDuration()); 230986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 231086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 231186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 231286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru overlayFrame1.setDuration(-1); 231386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 231486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 231586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 231686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay Duration = -1", flagForException); 231786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 231886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 231986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 232086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Frame Overlay for Media Image Item :Invalid StartTime and 232186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * Duration 232286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 232386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 232486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_047 232586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 232686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlayInvalidTimeImage() throws Exception { 232786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + "IMG_640x480.jpg"; 232886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 232986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 233086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 233186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 233286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 233386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 233486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 233586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 233686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 233786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 233886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 233986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaImageItem1, "overlayId1", 234086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 400000000, 2000); 234186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 234286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 234386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 234486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 234586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 234686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 234786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 234886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 234986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 235086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaImageItem1, "overlayId2", 235186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, -1, 2000); 235286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 235386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 235486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 235586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 235686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 235786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 235886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 235986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 236086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 640, 480); 236186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaImageItem1, "overlayId3", 236286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 2000, -1); 236386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 236486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 236586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 236686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Overlay With Invalid Start Time", flagForException); 236786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 236886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 236986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 237086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To Test Frame Overlay Media Image Item :JPG File 237186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 237286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 237386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_048 237486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 237586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testFrameOverlayJPGImage() throws Exception { 237686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 237786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFilename = INPUT_FILE_PATH + "IMG_640x480.jpg"; 237886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String overlayFile1 = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 237986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 238086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 238186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 238286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFilename, 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 238386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem1); 238486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final Bitmap mBitmap = mVideoEditorHelper.getBitmap(overlayFile1, 640, 238586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 480); 238686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createOverlay(mediaImageItem1, "overlayId1", 238786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mBitmap, 5000, 5000); 238886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 238986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 239086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 239186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Video Editor API 239286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 239386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 239486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 239586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_049 239686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 239786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testVideoEditorAPI() throws Exception { 239886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 239986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName1 = INPUT_FILE_PATH 240086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "MPEG4_SP_720x480_30fps_280kbps_AACLC_48kHz_96kbps_s_0_21.mp4"; 240186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName2 = INPUT_FILE_PATH + 240286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "MPEG4_SP_640x480_15fps_1200kbps_AACLC_48khz_64kbps_m_1_17.3gp"; 240386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName3 = INPUT_FILE_PATH 240486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "MPEG4_SP_640x480_15fps_512kbps_AACLC_48khz_132kbps_s_0_26.mp4"; 240586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName1 = INPUT_FILE_PATH + "IMG_640x480.jpg"; 240686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String imageItemFileName2 = INPUT_FILE_PATH + "IMG_176x144.jpg"; 240786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFilename1 = INPUT_FILE_PATH + 240886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AMRNB_8KHz_12.2Kbps_m_1_17.3gp"; 240986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFilename2 = INPUT_FILE_PATH + 241086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 241186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 241286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 241386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionCrossfade transition2And4; 241486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 241586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 241686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 241786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName1, renderingMode); 241886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 10000); 241986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 242086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 242186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem2 = 242286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", 242386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName2, renderingMode); 242486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.setExtractBoundaries(mediaVideoItem2.getDuration() / 4, 242586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem2.getDuration() / 2); 242686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem2); 242786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 242886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem3 = 242986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m3", 243086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName3, renderingMode); 243186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem3.setExtractBoundaries(mediaVideoItem3.getDuration() / 2, 243286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem3.getDuration()); 243386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem3); 243486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 243586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem1 = 243686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m4", 243786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName1, 5000, renderingMode); 243886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 243986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem2 = 244086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m5", 244186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru imageItemFileName2, 5000, renderingMode); 244286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 244386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru List<MediaItem> mediaList = mVideoEditor.getAllMediaItems(); 244486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item List Size", 3, mediaList.size()); 244586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 244686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.insertMediaItem(mediaImageItem1, mediaVideoItem2.getId()); 244786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaList = mVideoEditor.getAllMediaItems(); 244886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item List Size", 4, mediaList.size()); 244986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 1", mediaVideoItem1, mediaList.get(0)); 245086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 2", mediaVideoItem2, mediaList.get(1)); 245186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 4", mediaImageItem1, mediaList.get(2)); 245286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 3", mediaVideoItem3, mediaList.get(3)); 245386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 245486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.insertMediaItem(mediaImageItem2, mediaImageItem1.getId()); 245586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaList = mVideoEditor.getAllMediaItems(); 245686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item List Size", 5, mediaList.size()); 245786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 1", mediaVideoItem1, mediaList.get(0)); 245886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 2", mediaVideoItem2, mediaList.get(1)); 245986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 4", mediaImageItem1, mediaList.get(2)); 246086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 5", mediaImageItem2, mediaList.get(3)); 246186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 3", mediaVideoItem3, mediaList.get(4)); 246286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 246386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.moveMediaItem(mediaVideoItem1.getId(), mediaImageItem2.getId()); 246486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaList = mVideoEditor.getAllMediaItems(); 246586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item List Size", 5, mediaList.size()); 246686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 2", mediaVideoItem2, mediaList.get(0)); 246786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 4", mediaImageItem1, mediaList.get(1)); 246886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 5", mediaImageItem2, mediaList.get(2)); 246986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 1", mediaVideoItem1, mediaList.get(3)); 247086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media item 3", mediaVideoItem3, mediaList.get(4)); 247186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 247286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Media Item 1", mediaVideoItem1, 247386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.getMediaItem(mediaVideoItem1.getId())); 247486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 247586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 247686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And4 = null; 247786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try{ 247886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition2And4 = mVideoEditorHelper.createTCrossFade( 247986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "transition2And4", mediaVideoItem2, mediaImageItem1, 2000, 248086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Transition.BEHAVIOR_MIDDLE_FAST); 248186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition2And4); 248286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 248386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru catch (IllegalArgumentException e) { 248486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 248586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 248686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Transition2and4 cannot be created", flagForException); 248786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 248886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 248986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru TransitionCrossfade transition1And3 = null; 249086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 249186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try{ 249286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And3 = mVideoEditorHelper.createTCrossFade( 249386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "transition1And3", mediaVideoItem1, mediaVideoItem2, 5000, 249486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru Transition.BEHAVIOR_MIDDLE_FAST); 249586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And3); 249686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }catch (IllegalArgumentException e) { 249786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 249886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 249986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition1and3 cannot be created", flagForException); 250086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 250186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru List<Transition> transitionList = mVideoEditor.getAllTransitions(); 250286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition List", 1, transitionList.size()); 250386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 250486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition 2", transition2And4, 250586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.getTransition(transition2And4.getId())); 250686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 250786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 250886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFilename1); 250986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 251086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 251186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru List<AudioTrack> audioList = mVideoEditor.getAllAudioTracks(); 251286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio List", 1, audioList.size()); 251386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 251486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack1 = mVideoEditorHelper.createAudio( 251586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack1", audioFilename2); 251686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 251786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 251886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack1); 251986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 252086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 252186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 252286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track support is 1 ", flagForException); 252386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 252486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 252586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 252686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.insertAudioTrack(audioTrack1,"audioTrack"); 252786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 252886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 252986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 253086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track supports is 1 ", flagForException); 253186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 253286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Removing AudioTrack", audioTrack, 253386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.removeAudioTrack(audioTrack.getId())); 253486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 253586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Removing transition", transition2And4, 253686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.removeTransition(transition2And4.getId())); 253786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 253886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Removing Media Item", mediaVideoItem2, 253986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.removeMediaItem(mediaVideoItem2.getId())); 254086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 254186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.setAspectRatio(MediaProperties.ASPECT_RATIO_16_9); 254286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Check Aspect Ratio", MediaProperties.ASPECT_RATIO_16_9, 254386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.getAspectRatio()); 254486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 254586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru long storyBoardDuration = mediaVideoItem1.getTimelineDuration() 254686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + mediaVideoItem3.getTimelineDuration() 254786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + mediaImageItem1.getDuration() 254886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + mediaImageItem2.getDuration(); 254986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Story Board Duration", storyBoardDuration, 255086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.getDuration()); 255186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 255286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 255386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 255486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To add Audio Track Greater than MediaItem Duration 255586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 255686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 255786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 255886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_050 255986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 256086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testVideoLessThanAudio() throws Exception { 256186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName1 = INPUT_FILE_PATH 256286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "MPEG4_SP_720x480_30fps_280kbps_AACLC_48kHz_96kbps_s_0_21.mp4"; 256386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioTrackFilename = INPUT_FILE_PATH + 256486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 256586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 256686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 256786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 256886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 256986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFileName1, renderingMode); 257086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 257186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 257286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrackId", audioTrackFilename); 257386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 257486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Storyboard = mediaItem Duration", 257586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.getDuration(), mVideoEditor.getDuration()); 257686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Duration > mediaItem Duration", 257786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru (audioTrack.getDuration() > mediaVideoItem1.getDuration() ? 257886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru true : false)); 257986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 258086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 258186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 258286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test Video Editor API with 1080 P 258386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 258486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 258586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 258686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_051 258786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 258886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testVideoContentHD() throws Exception { 258986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFileName1 = INPUT_FILE_PATH 259086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru + "H264_BP_1920x1080_30fps_1200Kbps_1_10.mp4"; 259186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final int renderingMode = MediaItem.RENDERING_MODE_BLACK_BORDER; 259286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1; 25933f43e7d37f8efb0a0c6c07d1d0dd5103e26922d3Rajneesh Chowdury // 1080p resolution is supported on some devices 25943f43e7d37f8efb0a0c6c07d1d0dd5103e26922d3Rajneesh Chowdury // but not on other devices. 25953f43e7d37f8efb0a0c6c07d1d0dd5103e26922d3Rajneesh Chowdury // So this test case is not generic and 25963f43e7d37f8efb0a0c6c07d1d0dd5103e26922d3Rajneesh Chowdury // hence we always assert true 25973f43e7d37f8efb0a0c6c07d1d0dd5103e26922d3Rajneesh Chowdury boolean flagForException = true; 259886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 259986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1 = mVideoEditorHelper.createMediaItem(mVideoEditor, 260086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "m1", videoItemFileName1, renderingMode); 260186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 260286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 260386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("VideoContent 1920x1080", flagForException); 260486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 260586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 260686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 260786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 260886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test: Remove audio track 260986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 261086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 261186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 261286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_052 261386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 261486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testRemoveAudioTrack() throws Exception { 261586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 261686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 261786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 261886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 261986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 262086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack1", audioFileName); 262186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 262286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 262386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Audio Track Item Duration", audioTrack.getDuration(), 262486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.getTimelineDuration()); 262586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Audio Track ID", audioTrack.getId().equals("audioTrack1")); 262686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertNotNull("Remove Audio Track", 262786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.removeAudioTrack("audioTrack1")); 262886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try{ 262986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.removeAudioTrack("audioTrack1"); 263086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru }catch (IllegalArgumentException e){ 263186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 263286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 263386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Remove Audio Track not possible", flagForException); 263486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 263586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 263686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 263786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test: Disable ducking 263886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 263986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 264086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 264186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_053 264286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 264386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testAudioDuckingDisable() throws Exception { 264486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 264586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 264686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 264786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 264886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 264986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 265086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.disableDucking(); 265186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Audio Track Ducking is Disabled", 265286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru audioTrack.isDuckingEnabled()); 265386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 265486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 265586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 265686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_054 265786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** This test case is added with Test case ID TC_API_010 */ 265886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 265986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 266086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test: Need a basic test case for the get value for TransitionAlpha 266186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * ( ie. getBlendingPercent, getMaskFilename, isInvert) 266286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 266386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 266486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 266586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_055 266686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 266786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testTransitionAlphaBasic() throws Exception { 266886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 266986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 267086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 267186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String maskFilename = INPUT_FILE_PATH + "IMG_640x480_Overlay1.png"; 267286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 267386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 267486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaVideoItem mediaVideoItem1 = 267586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 267686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 267786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 267886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 267986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem = 268086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", maskFilename, 268186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 268286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.setDuration(15000); 268386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 268486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 268586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem); 268686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final TransitionAlpha transition1And2 = 268786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createTAlpha("transition1And2", mediaVideoItem1, 268886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem, 3000, Transition.BEHAVIOR_SPEED_UP, 268986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru maskFilename, 10, false); 269086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(transition1And2); 269186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Transition maskFile", 269286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getMaskFilename().equals(maskFilename)); 269386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertEquals("Transition BlendingPercent", 10, 269486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru transition1And2.getBlendingPercent()); 269586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertFalse("Transition Invert", transition1And2.isInvert()); 269686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 269786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 269886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru /** 269986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * To test: NULL arguments to the Video Editor APIs 270086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * 270186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru * @throws Exception 270286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru */ 270386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru // TODO : remove TC_API_056 270486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru @LargeTest 270586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru public void testNullAPIs() throws Exception { 270686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 270786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String videoItemFilename1 = INPUT_FILE_PATH + 270886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "H264_BP_640x480_30fps_256kbps_1_17.mp4"; 270986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String maskFilename = INPUT_FILE_PATH + 271086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "IMG_640x480_Overlay1.png"; 271186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final String audioFileName = INPUT_FILE_PATH + 271286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru "AACLC_48KHz_256Kbps_s_1_17.3gp"; 271386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru boolean flagForException = false; 271486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 271586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 271686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(null); 271786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 271886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 271986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 272086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Video Editor with null Audio Track", flagForException); 272186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 272286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 272386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(null); 272486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 272586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 272686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 272786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Video Editor with NULL Image Item ", flagForException); 272886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 272986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 273086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(null); 273186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 273286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 273386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 273486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Video Editor with NULL Video Item ", flagForException); 273586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 273686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru MediaVideoItem mediaVideoItem1 = null; 273786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 273886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1 = 273986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m1", 274086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru videoItemFilename1, MediaItem.RENDERING_MODE_BLACK_BORDER); 274186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch (IllegalArgumentException e) { 274286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Cannot Create Video Item", false); 274386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 274486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.setExtractBoundaries(0, 15000); 274586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaVideoItem1); 274686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 274786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 274886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addEffect(null); 274986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 275086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 275186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 275286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Video with null effect ", flagForException); 275386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 275486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 275586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaVideoItem1.addOverlay(null); 275686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 275786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 275886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 275986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Video with null overlay ", flagForException); 276086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 276186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final MediaImageItem mediaImageItem = 276286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditorHelper.createMediaItem(mVideoEditor, "m2", maskFilename, 276386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 10000, MediaItem.RENDERING_MODE_BLACK_BORDER); 276486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.setDuration(15000); 276586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addMediaItem(mediaImageItem); 276686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 276786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 276886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.addEffect(null); 276986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 277086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 277186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 277286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Image with null effect ", flagForException); 277386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 277486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 277586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mediaImageItem.addOverlay(null); 277686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 277786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 277886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 277986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Image with null overlay ", flagForException); 278086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 278186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru final AudioTrack audioTrack = mVideoEditorHelper.createAudio( 278286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor, "audioTrack", audioFileName); 278386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addAudioTrack(audioTrack); 278486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 278586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 278686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 278786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(null); 278886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 278986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 279086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 279186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Added null transition ", flagForException); 279286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 279386e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = false; 279486e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru try { 279586e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru mVideoEditor.addTransition(null); 279686e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } catch(IllegalArgumentException e) { 279786e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru flagForException = true; 279886e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 279986e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru assertTrue("Added null transition ", flagForException); 280086e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru 280186e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru } 280286e9e9be1e6cbcc0f8dbb2ecc41fafa7ddb5f8d1Basavapatna Dattaguru} 2803