Search in sources :

Example 16 with Frame

use of android.filterfw.core.Frame in project android_frameworks_base by ParanoidAndroid.

the class OutputStreamTarget method process.

@Override
public void process(FilterContext context) {
    Frame input = pullInput("data");
    ByteBuffer data;
    if (input.getFormat().getObjectClass() == String.class) {
        String stringVal = (String) input.getObjectValue();
        data = ByteBuffer.wrap(stringVal.getBytes());
    } else {
        data = input.getData();
    }
    try {
        mOutputStream.write(data.array(), 0, data.limit());
        mOutputStream.flush();
    } catch (IOException exception) {
        throw new RuntimeException("OutputStreamTarget: Could not write to stream: " + exception.getMessage() + "!");
    }
}
Also used : Frame(android.filterfw.core.Frame) IOException(java.io.IOException) ByteBuffer(java.nio.ByteBuffer)

Example 17 with Frame

use of android.filterfw.core.Frame in project android_frameworks_base by ParanoidAndroid.

the class RetargetFilter method process.

@Override
public void process(FilterContext context) {
    // Get input frame
    Frame input = pullInput("frame");
    // Create output frame
    Frame output = context.getFrameManager().duplicateFrameToTarget(input, mTarget);
    // Push output
    pushOutput("frame", output);
    // Release pushed frame
    output.release();
}
Also used : Frame(android.filterfw.core.Frame)

Example 18 with Frame

use of android.filterfw.core.Frame in project android_frameworks_base by ParanoidAndroid.

the class AutoFixFilter method process.

@Override
public void process(FilterContext context) {
    // Get input frame
    Frame input = pullInput("image");
    FrameFormat inputFormat = input.getFormat();
    // Create program if not created already
    if (mShaderProgram == null || inputFormat.getTarget() != mTarget) {
        initProgram(context, inputFormat.getTarget());
        initParameters();
    }
    // Check if the frame size has changed
    if (inputFormat.getWidth() != mWidth || inputFormat.getHeight() != mHeight) {
        mWidth = inputFormat.getWidth();
        mHeight = inputFormat.getHeight();
        createHistogramFrame(context, mWidth, mHeight, input.getInts());
    }
    // Create output frame
    Frame output = context.getFrameManager().newFrame(inputFormat);
    // Process
    Frame[] inputs = { input, mHistFrame, mDensityFrame };
    mShaderProgram.process(inputs, output);
    // Push output
    pushOutput("image", output);
    // Release pushed frame
    output.release();
}
Also used : FrameFormat(android.filterfw.core.FrameFormat) Frame(android.filterfw.core.Frame)

Example 19 with Frame

use of android.filterfw.core.Frame in project android_frameworks_base by ParanoidAndroid.

the class SepiaFilter method process.

@Override
public void process(FilterContext context) {
    // Get input frame
    Frame input = pullInput("image");
    FrameFormat inputFormat = input.getFormat();
    // Create output frame
    Frame output = context.getFrameManager().newFrame(inputFormat);
    // Create program if not created already
    if (mProgram == null || inputFormat.getTarget() != mTarget) {
        initProgram(context, inputFormat.getTarget());
        initParameters();
    }
    // Process
    mProgram.process(input, output);
    // Push output
    pushOutput("image", output);
    // Release pushed frame
    output.release();
}
Also used : FrameFormat(android.filterfw.core.FrameFormat) Frame(android.filterfw.core.Frame) NativeFrame(android.filterfw.core.NativeFrame)

Example 20 with Frame

use of android.filterfw.core.Frame in project android_frameworks_base by ParanoidAndroid.

the class SimpleImageFilter method process.

@Override
public void process(FilterContext context) {
    // Get input frame
    Frame input = pullInput("image");
    FrameFormat inputFormat = input.getFormat();
    // Create output frame
    Frame output = context.getFrameManager().newFrame(inputFormat);
    // Create program if not created already
    updateProgramWithTarget(inputFormat.getTarget(), context);
    // Process
    mProgram.process(input, output);
    // Push output
    pushOutput("image", output);
    // Release pushed frame
    output.release();
}
Also used : FrameFormat(android.filterfw.core.FrameFormat) Frame(android.filterfw.core.Frame) NativeFrame(android.filterfw.core.NativeFrame)

Aggregations

Frame (android.filterfw.core.Frame)414 FrameFormat (android.filterfw.core.FrameFormat)198 GLFrame (android.filterfw.core.GLFrame)73 MutableFrameFormat (android.filterfw.core.MutableFrameFormat)47 NativeFrame (android.filterfw.core.NativeFrame)38 Quad (android.filterfw.geometry.Quad)24 GLEnvironment (android.filterfw.core.GLEnvironment)18 ShaderProgram (android.filterfw.core.ShaderProgram)18 ByteBuffer (java.nio.ByteBuffer)18 Point (android.filterfw.geometry.Point)12 IOException (java.io.IOException)12 FrameManager (android.filterfw.core.FrameManager)6 Bitmap (android.graphics.Bitmap)6 ByteArrayOutputStream (java.io.ByteArrayOutputStream)6 Map (java.util.Map)6 SortedMap (java.util.SortedMap)6 TreeMap (java.util.TreeMap)6 CachedFrameManager (android.filterfw.core.CachedFrameManager)1