Table of Contents

Class VideoInputFrameRecorder

네임스페이스
easyar

Input frame recorder입니다. input frame input port와 input frame output port가 있으며, 지나가는 input frame을 EIF MKV 파일에 저장하는 데 사용됩니다. 이 클래스의 모든 멤버는 thread-safe입니다.

VideoInputFrameRecorder

메서드

isAvailable

사용 가능한지 확인합니다. MacOS, iOS, Android에서만 true를 반환합니다.

bool easyar_VideoInputFrameRecorder_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
+ (bool)isAvailable
public static func isAvailable() -> Bool
public static bool isAvailable()

반환 값

형식 설명
Boolean

input

Input port입니다.

void easyar_VideoInputFrameRecorder_input(easyar_VideoInputFrameRecorder * This, easyar_InputFrameSink * * Return)
std::shared_ptr<InputFrameSink> input()
public @Nonnull InputFrameSink input()
fun input(): InputFrameSink
- (easyar_InputFrameSink *)input
public func input() -> InputFrameSink
public virtual InputFrameSink input()

반환 값

형식 설명
InputFrameSink

accelerometerResultSink

선택 사항입니다. Accelerometer result input port입니다. AccelerometerResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_accelerometerResultSink(easyar_VideoInputFrameRecorder * This, easyar_AccelerometerResultSink * * Return)
std::shared_ptr<AccelerometerResultSink> accelerometerResultSink()
public @Nonnull AccelerometerResultSink accelerometerResultSink()
fun accelerometerResultSink(): AccelerometerResultSink
- (easyar_AccelerometerResultSink *)accelerometerResultSink
public func accelerometerResultSink() -> AccelerometerResultSink
public virtual AccelerometerResultSink accelerometerResultSink()

반환 값

형식 설명
AccelerometerResultSink

gyroscopeResultSink

선택 사항입니다. Gyroscope result input port입니다. GyroscopeResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_gyroscopeResultSink(easyar_VideoInputFrameRecorder * This, easyar_GyroscopeResultSink * * Return)
std::shared_ptr<GyroscopeResultSink> gyroscopeResultSink()
public @Nonnull GyroscopeResultSink gyroscopeResultSink()
fun gyroscopeResultSink(): GyroscopeResultSink
- (easyar_GyroscopeResultSink *)gyroscopeResultSink
public func gyroscopeResultSink() -> GyroscopeResultSink
public virtual GyroscopeResultSink gyroscopeResultSink()

반환 값

형식 설명
GyroscopeResultSink

attitudeSensorResultSink

선택 사항입니다. Attitude sensor result input port입니다. AttitudeSensorResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_attitudeSensorResultSink(easyar_VideoInputFrameRecorder * This, easyar_AttitudeSensorResultSink * * Return)
std::shared_ptr<AttitudeSensorResultSink> attitudeSensorResultSink()
public @Nonnull AttitudeSensorResultSink attitudeSensorResultSink()
fun attitudeSensorResultSink(): AttitudeSensorResultSink
- (easyar_AttitudeSensorResultSink *)attitudeSensorResultSink
public func attitudeSensorResultSink() -> AttitudeSensorResultSink
public virtual AttitudeSensorResultSink attitudeSensorResultSink()

반환 값

형식 설명
AttitudeSensorResultSink

magnetometerResultSink

선택 사항입니다. Magnetometer result input port입니다. MagnetometerResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_magnetometerResultSink(easyar_VideoInputFrameRecorder * This, easyar_MagnetometerResultSink * * Return)
std::shared_ptr<MagnetometerResultSink> magnetometerResultSink()
public @Nonnull MagnetometerResultSink magnetometerResultSink()
fun magnetometerResultSink(): MagnetometerResultSink
- (easyar_MagnetometerResultSink *)magnetometerResultSink
public func magnetometerResultSink() -> MagnetometerResultSink
public virtual MagnetometerResultSink magnetometerResultSink()

반환 값

형식 설명
MagnetometerResultSink

locationResultSink

선택 사항입니다. Location result input port입니다. LocationResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_locationResultSink(easyar_VideoInputFrameRecorder * This, easyar_LocationResultSink * * Return)
std::shared_ptr<LocationResultSink> locationResultSink()
public @Nonnull LocationResultSink locationResultSink()
fun locationResultSink(): LocationResultSink
- (easyar_LocationResultSink *)locationResultSink
public func locationResultSink() -> LocationResultSink
public virtual LocationResultSink locationResultSink()

반환 값

형식 설명
LocationResultSink

proximityLocationResultSink

선택 사항입니다. Proximity location result input port입니다. ProximityLocationResultSink를 참조하십시오.

void easyar_VideoInputFrameRecorder_proximityLocationResultSink(easyar_VideoInputFrameRecorder * This, easyar_ProximityLocationResultSink * * Return)
std::shared_ptr<ProximityLocationResultSink> proximityLocationResultSink()
public @Nonnull ProximityLocationResultSink proximityLocationResultSink()
fun proximityLocationResultSink(): ProximityLocationResultSink
- (easyar_ProximityLocationResultSink *)proximityLocationResultSink
public func proximityLocationResultSink() -> ProximityLocationResultSink
public virtual ProximityLocationResultSink proximityLocationResultSink()

반환 값

형식 설명
ProximityLocationResultSink

bufferRequirement

현재 이 컴포넌트가 차지하는 camera buffer 수입니다.

int easyar_VideoInputFrameRecorder_bufferRequirement(easyar_VideoInputFrameRecorder * This)
int bufferRequirement()
public int bufferRequirement()
fun bufferRequirement(): Int
- (int)bufferRequirement
public func bufferRequirement() -> Int32
public virtual int bufferRequirement()

반환 값

형식 설명
Int32

output

Output port입니다.

void easyar_VideoInputFrameRecorder_output(easyar_VideoInputFrameRecorder * This, easyar_InputFrameSource * * Return)
std::shared_ptr<InputFrameSource> output()
public @Nonnull InputFrameSource output()
fun output(): InputFrameSource
- (easyar_InputFrameSource *)output
public func output() -> InputFrameSource
public virtual InputFrameSource output()

반환 값

형식 설명
InputFrameSource

create

생성합니다.

void easyar_VideoInputFrameRecorder_create(easyar_VideoInputFrameRecorder * * Return)
static std::shared_ptr<VideoInputFrameRecorder> create()
public static @Nonnull VideoInputFrameRecorder create()
companion object fun create(): VideoInputFrameRecorder
+ (easyar_VideoInputFrameRecorder *)create
public static func create() -> VideoInputFrameRecorder
public static VideoInputFrameRecorder create()

반환 값

형식 설명
VideoInputFrameRecorder

start

데이터 기록을 시작합니다. cameraDeviceType, cameraOrientation 및 initialScreenRotation의 정의는 CameraParameters의 정의와 같습니다. initialScreenRotation은 데이터 기록 시 초기 화면 회전 방향이며, 재생 시 렌더링은 이 방향을 기준으로 합니다.

bool easyar_VideoInputFrameRecorder_start(easyar_VideoInputFrameRecorder * This, easyar_String * filePath, easyar_CameraDeviceType cameraDeviceType, int cameraOrientation, int initialScreenRotation, easyar_VideoInputFrameRecorderVideoCodec codec, int width, int height, double frameRate, easyar_String * metadata)
bool start(std::string filePath, CameraDeviceType cameraDeviceType, int cameraOrientation, int initialScreenRotation, VideoInputFrameRecorderVideoCodec codec, int width, int height, double frameRate, std::string metadata)
public boolean start(java.lang.@Nonnull String filePath, int cameraDeviceType, int cameraOrientation, int initialScreenRotation, int codec, int width, int height, double frameRate, java.lang.@Nonnull String metadata)
fun start(filePath: String, cameraDeviceType: Int, cameraOrientation: Int, initialScreenRotation: Int, codec: Int, width: Int, height: Int, frameRate: Double, metadata: String): Boolean
- (bool)start:(NSString *)filePath cameraDeviceType:(easyar_CameraDeviceType)cameraDeviceType cameraOrientation:(int)cameraOrientation initialScreenRotation:(int)initialScreenRotation codec:(easyar_VideoInputFrameRecorderVideoCodec)codec width:(int)width height:(int)height frameRate:(double)frameRate metadata:(NSString *)metadata
public func start(_ filePath: String, _ cameraDeviceType: CameraDeviceType, _ cameraOrientation: Int32, _ initialScreenRotation: Int32, _ codec: VideoInputFrameRecorderVideoCodec, _ width: Int32, _ height: Int32, _ frameRate: Double, _ metadata: String) -> Bool
public virtual bool start(string filePath, CameraDeviceType cameraDeviceType, int cameraOrientation, int initialScreenRotation, VideoInputFrameRecorderVideoCodec codec, int width, int height, double frameRate, string metadata)

매개 변수

이름 형식 설명
filePath String
cameraDeviceType CameraDeviceType
cameraOrientation Int32
initialScreenRotation Int32
codec VideoInputFrameRecorderVideoCodec
width Int32
height Int32
frameRate Double
metadata String

반환 값

형식 설명
Boolean

stop

데이터 기록을 중지합니다. 이 메서드는 기록만 중지하며 연결에는 영향을 주지 않습니다.

void easyar_VideoInputFrameRecorder_stop(easyar_VideoInputFrameRecorder * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

반환 값

형식 설명
Void

setAutomaticCompletionCallback

자동 기록 완료 callback을 설정합니다.

void easyar_VideoInputFrameRecorder_setAutomaticCompletionCallback(easyar_VideoInputFrameRecorder * This, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromVideoInputFrameRecorderCompletionReason automaticCompletionCallback)
void setAutomaticCompletionCallback(std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(VideoInputFrameRecorderCompletionReason)>> automaticCompletionCallback)
public void setAutomaticCompletionCallback(@Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromVideoInputFrameRecorderCompletionReason automaticCompletionCallback)
fun setAutomaticCompletionCallback(callbackScheduler: CallbackScheduler, automaticCompletionCallback: FunctorOfVoidFromVideoInputFrameRecorderCompletionReason?): Unit
- (void)setAutomaticCompletionCallback:(easyar_CallbackScheduler *)callbackScheduler automaticCompletionCallback:(void (^)(easyar_VideoInputFrameRecorderCompletionReason))automaticCompletionCallback
public func setAutomaticCompletionCallback(_ callbackScheduler: CallbackScheduler, _ automaticCompletionCallback: ((VideoInputFrameRecorderCompletionReason) -> Void)?) -> Void
public virtual void setAutomaticCompletionCallback(CallbackScheduler callbackScheduler, Optional<Action<VideoInputFrameRecorderCompletionReason>> automaticCompletionCallback)

매개 변수

이름 형식 설명
callbackScheduler CallbackScheduler
automaticCompletionCallback Optional<Action<VideoInputFrameRecorderCompletionReason>>

반환 값

형식 설명
Void