Table Of Contents

Previous topic

Frame Class

Next topic

FrameStreamer Class

FrameFilter Class


FrameFilter is the base class for all filters (including trackers) using frames from FrameStreamer to retrieve infomation from current scene.

You need to call attachStreamer to attach a FrameStreamer to filter first, then the images from the FrameStreamer are used for by the filter. You can call start/stop to enable/disable the filter process. start and stop are very lightweight calls.

You can get a Frame by FrameStreamer.peek which contains current camera image and filter results.


Attach FrameStreamer to the filter. Filter will not start to work until a FrameStreamer is attached.

Attach null object will detach previous attached FrameStreamer from filter.

C: bool easyar_FrameFilter_attachStreamer(easyar_FrameFilter* This, easyar_FrameStreamer* obj)
C++11: bool attachStreamer(std::shared_ptr<FrameStreamer> obj)
Traditional C++: bool attachStreamer(FrameStreamer* obj)
Java: public native boolean attachStreamer(FrameStreamer obj)
Objective-C: - (bool)attachStreamer:(easyar_FrameStreamer *)obj
Swift (since EasyAR SDK 2.1.0): public func attachStreamer(_ obj: FrameStreamer?) -> Bool


Starts the filter. The filter will not actually start until a FrameStreamer is attached.

C: bool easyar_FrameFilter_start(easyar_FrameFilter* This)
C++11: bool start()
Traditional C++: bool start()
Java: public native boolean start()
Objective-C: - (bool)start
Swift (since EasyAR SDK 2.1.0): public func start() -> Bool


Stops the filter. Call start to start the filter again.

C: bool easyar_FrameFilter_stop(easyar_FrameFilter* This)
C++11: bool stop()
Traditional C++: bool stop()
Java: public native boolean stop()
Objective-C: - (bool)stop
Swift (since EasyAR SDK 2.1.0): public func stop() -> Bool