Skip to content

GroupFilter does not work  #4

@kdemczuk

Description

@kdemczuk

I've noticed that GroupFilter doesn't work or maybe I use it in a wrong way.
I want to process image from ImageView that is set in RelativeLayout.

My GroupFilter class:

class MyGroupFilter extends GroupFilter {

    public void register(BasicFilter filter) {
        super.registerFilter(filter);
    }

    public void registerInitial(BasicFilter filter) {
        super.registerInitialFilter(filter);
    }

    public void registerTerminal(BasicFilter filter) {
        super.registerTerminalFilter(filter);
    }
}

MyGroupFilter groupFilter = new MyGroupFilter();

Here is my init code:

            view = new FastImageProcessingView(this);
    pipeline = new FastImageProcessingPipeline();
    view.setPipeline(pipeline);
    imageIn = new ImageResourceInput(view, this, R.drawable.penguins2);
    screen = new ScreenEndpoint(pipeline);
    imageIn.addTarget(screen);
    pipeline.addRootRenderer(imageIn);
    pipeline.startRendering();

    relativeLayout.addView(view);

I have two buttons (plus and minus) for controlling brightness level and also two buttons for controlling saturation level. Every time I push any button, my filter method is invoked with appropriate value of brighnessLevelF and saturationLevelF (which are floats and represent levels of brightness and saturation). Method body:

    pipeline.pauseRendering();
    imageIn.removeTarget(groupFilter);
    pipeline.addFilterToDestroy(groupFilter);

    BrightnessFilter brightnessFilter = new BrightnessFilter(brighnessLevelF);
    brightnessFilter.addTarget(screen);
    SaturationFilter saturationFilter = new SaturationFilter(saturationLevelF);
    saturationFilter.addTarget(screen);

    groupFilter.registerInitial(brightnessFilter);
    groupFilter.registerTerminal(saturationFilter);
    imageIn.addTarget(groupFilter);

    pipeline.startRendering();
    view.requestRender();

It works but only brightness level is changing. Am I doing something wrong?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions