OutputFrameBuffer Class¶
Description¶
输出帧缓存。
有一个输出帧输入端口和输出帧获取函数,用于将输出帧的获取方式从异步转化为同步轮询,适合逐帧渲染。
OutputFrameBuffer占用1个camera的buffer。应使用camera的setBufferCapacity设置不少于所有组件占用的camera的buffer数量。参考 概览 _ 。
本类的所有成员都是线程安全的。
input¶
输入端口。
- C: void easyar_OutputFrameBuffer_input(easyar_OutputFrameBuffer * This, easyar_OutputFrameSink * * Return)¶
- Traditional C++: void input(OutputFrameSink * * Return)¶
- Java: public @Nonnull OutputFrameSink input()¶
- Kotlin: fun input(): OutputFrameSink¶
- Objective-C: - (easyar_OutputFrameSink *)input¶
- Swift: public func input() -> OutputFrameSink¶
- C#: public virtual OutputFrameSink input()¶
bufferRequirement¶
当前组件占用camera buffer的数量。
- C: int easyar_OutputFrameBuffer_bufferRequirement(easyar_OutputFrameBuffer * This)¶
- C++17: int bufferRequirement()¶
- Traditional C++: int bufferRequirement()¶
- Java: public int bufferRequirement()¶
- Kotlin: fun bufferRequirement(): Int¶
- Objective-C: - (int)bufferRequirement¶
- Swift: public func bufferRequirement() -> Int32¶
- C#: public virtual int bufferRequirement()¶
signalOutput¶
到达信号输出端口。可用于连接 InputFrameThrottler.signalInput 。
- C: void easyar_OutputFrameBuffer_signalOutput(easyar_OutputFrameBuffer * This, easyar_SignalSource * * Return)¶
- Traditional C++: void signalOutput(SignalSource * * Return)¶
- Java: public @Nonnull SignalSource signalOutput()¶
- Kotlin: fun signalOutput(): SignalSource¶
- Objective-C: - (easyar_SignalSource *)signalOutput¶
- Swift: public func signalOutput() -> SignalSource¶
- C#: public virtual SignalSource signalOutput()¶
peek¶
获取最新的 OutputFrame 。
- C: void easyar_OutputFrameBuffer_peek(easyar_OutputFrameBuffer * This, easyar_OptionalOfOutputFrame * Return)¶
- Traditional C++: void peek(OutputFrame * * Return)¶
- Java: public @Nullable OutputFrame peek()¶
- Kotlin: fun peek(): OutputFrame?¶
- Objective-C: - (easyar_OutputFrame *)peek¶
- Swift: public func peek() -> OutputFrame?¶
- C#: public virtual Optional<OutputFrame> peek()¶
create¶
创建。
- C: void easyar_OutputFrameBuffer_create(easyar_OutputFrameBuffer * * Return)¶
- Traditional C++: static void create(OutputFrameBuffer * * Return)¶
- Java: public static @Nonnull OutputFrameBuffer create()¶
- Kotlin: companion object fun create(): OutputFrameBuffer¶
- Objective-C: + (easyar_OutputFrameBuffer *)create¶
- Swift: public static func create() -> OutputFrameBuffer¶
- C#: public static OutputFrameBuffer create()¶
pause¶
(since 3.1.0)
暂停输出 OutputFrame 。执行之后, OutputFrameBuffer.peek 的结果均为空。 OutputFrameBuffer.signalOutput 不受影响。
- C: void easyar_OutputFrameBuffer_pause(easyar_OutputFrameBuffer * This)¶
- C++17: void pause()¶
- Traditional C++: void pause()¶
- Java: public void pause()¶
- Kotlin: fun pause(): Unit¶
- Objective-C: - (void)pause¶
- Swift: public func pause() -> Void¶
- C#: public virtual void pause()¶
resume¶
(since 3.1.0)
继续输出 OutputFrame 。
- C: void easyar_OutputFrameBuffer_resume(easyar_OutputFrameBuffer * This)¶
- C++17: void resume()¶
- Traditional C++: void resume()¶
- Java: public void resume()¶
- Kotlin: fun resume(): Unit¶
- Objective-C: - (void)resume¶
- Swift: public func resume() -> Void¶
- C#: public virtual void resume()¶