Class VideoInputFrameRecorder
- 命名空间
- easyar
输入帧录制器。 有一个输入帧输入端口和一个输入帧输出端口,用于将经过的输入帧保存到EIF MKV文件中。 本类的所有成员都是线程安全的。
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
输入端口。
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
可选。加速度计结果输入端口。参考 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
可选。陀螺仪结果输入端口。参考 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
可选。姿态传感器结果输入端口。参考 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
可选。磁力计结果输入端口。参考 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
可选。位置结果输入端口。参考 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
可选。邻近位置结果输入端口。参考 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
输出端口。
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
设置自动完成录制回调。
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 |