Search in sources :

Example 71 with FrameFormat

use of android.filterfw.core.FrameFormat in project android_frameworks_base by DirtyUnicorns.

the class NegativeFilter 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());
    }
    // 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)

Example 72 with FrameFormat

use of android.filterfw.core.FrameFormat in project android_frameworks_base by DirtyUnicorns.

the class PosterizeFilter 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());
    }
    // 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)

Example 73 with FrameFormat

use of android.filterfw.core.FrameFormat in project android_frameworks_base by DirtyUnicorns.

the class RedEyeFilter 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());
    }
    // Check if the frame size has changed
    if (inputFormat.getWidth() != mWidth || inputFormat.getHeight() != mHeight) {
        mWidth = inputFormat.getWidth();
        mHeight = inputFormat.getHeight();
    }
    createRedEyeFrame(context);
    // Process
    Frame[] inputs = { input, mRedEyeFrame };
    mProgram.process(inputs, output);
    // Push output
    pushOutput("image", output);
    // Release pushed frame
    output.release();
    // Release unused frame
    mRedEyeFrame.release();
    mRedEyeFrame = null;
}
Also used : FrameFormat(android.filterfw.core.FrameFormat) Frame(android.filterfw.core.Frame)

Example 74 with FrameFormat

use of android.filterfw.core.FrameFormat in project android_frameworks_base by DirtyUnicorns.

the class ThroughputFilter method process.

@Override
public void process(FilterContext context) {
    // Pass through input frame
    Frame input = pullInput("frame");
    pushOutput("frame", input);
    // Update stats
    ++mTotalFrameCount;
    ++mPeriodFrameCount;
    // Check clock
    if (mLastTime == 0) {
        mLastTime = SystemClock.elapsedRealtime();
    }
    long curTime = SystemClock.elapsedRealtime();
    // Output throughput info if time period is up
    if ((curTime - mLastTime) >= (mPeriod * 1000)) {
        FrameFormat inputFormat = input.getFormat();
        int pixelCount = inputFormat.getWidth() * inputFormat.getHeight();
        Throughput throughput = new Throughput(mTotalFrameCount, mPeriodFrameCount, mPeriod, pixelCount);
        Frame throughputFrame = context.getFrameManager().newFrame(mOutputFormat);
        throughputFrame.setObjectValue(throughput);
        pushOutput("throughput", throughputFrame);
        mLastTime = curTime;
        mPeriodFrameCount = 0;
    }
}
Also used : FrameFormat(android.filterfw.core.FrameFormat) Frame(android.filterfw.core.Frame)

Example 75 with FrameFormat

use of android.filterfw.core.FrameFormat in project android_frameworks_base by DirtyUnicorns.

the class DocumentaryFilter 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 (mProgram == null || inputFormat.getTarget() != mTarget) {
        initProgram(context, inputFormat.getTarget());
    }
    // Check if the frame size has changed
    if (inputFormat.getWidth() != mWidth || inputFormat.getHeight() != mHeight) {
        mWidth = inputFormat.getWidth();
        mHeight = inputFormat.getHeight();
        initParameters();
    }
    // Create output frame
    Frame output = context.getFrameManager().newFrame(inputFormat);
    // 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)

Aggregations

FrameFormat (android.filterfw.core.FrameFormat)270 Frame (android.filterfw.core.Frame)198 MutableFrameFormat (android.filterfw.core.MutableFrameFormat)39 NativeFrame (android.filterfw.core.NativeFrame)25 GLFrame (android.filterfw.core.GLFrame)18 ShaderProgram (android.filterfw.core.ShaderProgram)12 Quad (android.filterfw.geometry.Quad)12 FrameManager (android.filterfw.core.FrameManager)6 Point (android.filterfw.geometry.Point)6 Bitmap (android.graphics.Bitmap)6 Paint (android.graphics.Paint)6 CachedFrameManager (android.filterfw.core.CachedFrameManager)1