Search in sources :

Example 31 with Frame

use of android.filterfw.core.Frame in project platform_frameworks_base by android.

the class StringSource method process.

@Override
public void process(FilterContext env) {
    Frame output = env.getFrameManager().newFrame(mOutputFormat);
    output.setObjectValue(mString);
    output.setTimestamp(Frame.TIMESTAMP_UNKNOWN);
    pushOutput("string", output);
    closeOutputPort("string");
}
Also used : Frame(android.filterfw.core.Frame)

Example 32 with Frame

use of android.filterfw.core.Frame in project platform_frameworks_base by android.

the class InputStreamSource method process.

@Override
public void process(FilterContext context) {
    int fileSize = 0;
    ByteBuffer byteBuffer = null;
    // Read the file
    try {
        ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
        byte[] buffer = new byte[1024];
        int bytesRead;
        while ((bytesRead = mInputStream.read(buffer)) > 0) {
            byteStream.write(buffer, 0, bytesRead);
            fileSize += bytesRead;
        }
        byteBuffer = ByteBuffer.wrap(byteStream.toByteArray());
    } catch (IOException exception) {
        throw new RuntimeException("InputStreamSource: Could not read stream: " + exception.getMessage() + "!");
    }
    // Put it into a frame
    mOutputFormat.setDimensions(fileSize);
    Frame output = context.getFrameManager().newFrame(mOutputFormat);
    output.setData(byteBuffer);
    // Push output
    pushOutput("data", output);
    // Release pushed frame
    output.release();
    // Close output port as we are done here
    closeOutputPort("data");
}
Also used : Frame(android.filterfw.core.Frame) ByteArrayOutputStream(java.io.ByteArrayOutputStream) IOException(java.io.IOException) ByteBuffer(java.nio.ByteBuffer)

Example 33 with Frame

use of android.filterfw.core.Frame in project platform_frameworks_base by android.

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 34 with Frame

use of android.filterfw.core.Frame in project platform_frameworks_base by android.

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 35 with Frame

use of android.filterfw.core.Frame in project platform_frameworks_base by android.

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

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