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