ImageEditor icon indicating copy to clipboard operation
ImageEditor copied to clipboard

Apply affect for 2 images in transition

Open dumihi313 opened this issue 5 years ago • 17 comments

I succeeded in setting transition for 2 image. Now i want to apply effect for each image. How can i do it? please help me. Thank you

dumihi313 avatar Dec 23 '19 03:12 dumihi313

Apply effect for each image? Maybe you want a filter?Transition means effect between two images,so I don't really understand what you mean😳

CreateChance avatar Dec 23 '19 04:12 CreateChance

@CreateChance Yes i want to apply filter for 2 image during their transition I succeeded in set filter for GPUImage for my view. And now I want to apply for transition You can see this video to understand clearly: https://drive.google.com/file/d/1lReuKUhNJHm5-flzTripPoi0f2k8wqWw/view?usp=sharing

I want the transition has first image filter looks like image (GPUImage ) before transition follow timeline

dumihi313 avatar Dec 23 '19 04:12 dumihi313

Based on addOperator to set filter and my ediction in method render at IEClip.java `` if (mTransition != null && mDuration - localTime <= mTransitionDuration) {

        mTransition.setProgress(1.0f - (mDuration - localTime) * 1.0f / mTransitionDuration);
        mTransition.exec();
        if (mDuration - localTime <= mTransitionDuration/2) {
            mOpList.get(0).exec();
        }
        else {
            mOpList.get(1).exec();
        }

    }

`` The results

https://drive.google.com/file/d/1cji_4VVXpTuPmxqDlZ7i-2JOkgJvyaYv/view?usp=sharing

I try this and it show result like above. In conclusion, I think that the best solution is applying filter property for 2 bitmaps in Clips

dumihi313 avatar Dec 23 '19 09:12 dumihi313

Yeah, this works! There's another way to do this, you can get transition's gl texture, and render it with filter, this could works too! It works like a pipeline, transition's texture is output, and filter's input is transition's output~ Let's call this filter: TransitionFilter :)

CreateChance avatar Dec 23 '19 09:12 CreateChance

For implement, the TransitionFilter I showed you afternoon can not display 2 filter in the same time. I am developing app look like kinemaster, what I want likes this link.

https://drive.google.com/file/d/109Cv4iwY6kRCLqhc_6Rq9o_a6FymxgVt/view?usp=sharing

To do like this video, I think we have to set the new bitmap before addClip, this bitmap is the result of original bitmap and filter ( i am researching the way to do that). Is my ideal Feasible? Do you have any ideal ? Thank you so much @CreateChance

dumihi313 avatar Dec 23 '19 14:12 dumihi313

Hello, I nearly done with your Transition filter. Now, I am facing with text animation like this link below. Before I found your Transition filter, I using textview and animation view for handling it. But it not support for like renderAtPosition like Transition filter. I think we can have another way to hanle this animation for text is similar your Transition filter by using shader openGl. But your Transition filter should work for 2 bitmap and my text is only has 1. Would you mind giving me some solution to do that. https://drive.google.com/file/d/1_k1z7JC1JfMFi3poWKDgQIr1MoJG9C43/view?usp=sharing @CreateChance

dumihi313 avatar Dec 31 '19 08:12 dumihi313

Hi, @dumihi maybe this could help: https://github.com/CreateChance/ImageEditor/blob/master/imageeditor/src/main/java/com/createchance/imageeditor/ops/TextOperator.java, it support text render real time, just change params to make magic~

CreateChance avatar Jan 03 '20 02:01 CreateChance

Thank I ensure that I am going to try it <3 I managed with that a lot. At the movement, I just handle it like this. It animation for all view not only text :). It is so bad 0~36s https://drive.google.com/file/d/1lTZjJhHqEcGbh-pB5VT-fB7PoC7jyVpo/view?usp=sharing

Hope you can keep updating with this post, because i will have some question during using your help. Thank you @CreateChance

dumihi313 avatar Jan 03 '20 02:01 dumihi313

It's native crash, do you build the freetype in jni folder? Try unzip apk to check if so lib exists please.

CreateChance avatar Jan 03 '20 03:01 CreateChance

Yeah I just fixed it successful. Just increase to classpath 'com.android.tools.build:gradle:3.4.2' Now I try to do transition with this text

dumihi313 avatar Jan 03 '20 04:01 dumihi313

Hi @CreateChance With transition for text, we need to convert the text to bitmap ???

dumihi313 avatar Jan 03 '20 04:01 dumihi313

Yes, you need to render text string to bitmap by freetype or other render engine, opengl texture need this.

CreateChance avatar Jan 03 '20 04:01 CreateChance

Please watch 39 second to end of video https://drive.google.com/file/d/1lTZjJhHqEcGbh-pB5VT-fB7PoC7jyVpo/view The transition will do transition filter for all pixel around the text. Do you think after applying freetype bitmap, can it resolve it .

dumihi313 avatar Jan 03 '20 05:01 dumihi313

As I see to add text, IEManager require has at lease one clip ( image(bitmap)). But i want to add text as a independence clip no image background behind. It is hard to adjust :(

dumihi313 avatar Jan 03 '20 10:01 dumihi313

Hello @CreateChance, Thank you for your support. Today, I need a support from you. How can I do gl transtion keeping root width/height of second image. As you can see in video link. When transition, the scale of picture 2 is same picture 1, i want this transition keep root width/height picture 2. Actual: https://drive.google.com/file/d/1ztxlalAkNSemRjUuUuLoyCNVFCUzH-rq/view?usp=sharing Expect like kinesmater app: https://drive.google.com/file/d/1b8b9WVgqaZQHJgzuk0rarJ3XWKkNRWbI/view?usp=sharing

dumihi313 avatar Feb 19 '20 03:02 dumihi313

i'm also facing the same issue @dumihi you got any solution?

hashmih avatar Jul 27 '20 06:07 hashmih

Yeah, this works! There's another way to do this, you can get transition's gl texture, and render it with filter, this could works too! It works like a pipeline, transition's texture is output, and filter's input is transition's output~ Let's call this filter: TransitionFilter :)

@CreateChance would u like to explain that " how to get transition's gl texture and render it with filter" . it would be great help for me.

hashmih avatar Aug 19 '20 12:08 hashmih