Table of Contents

Class XREALCameraDevice

Espacio de nombres
easyar

XREALCameraDevice implementa un dispositivo de cámara basado en el plugin XREAL Enterprise Native SDK, que emite InputFrame (no se pueden obtener imágenes, parámetros de la cámara, marcas de tiempo, información de posición 6DOF y estado de seguimiento). Después de la creación, se puede llamar a start/stop para iniciar y detener la recopilación de datos de flujo de video. Es necesario asegurarse de que isDeviceSupported devuelva true antes de llamar a start. Cuando el dispositivo ya no sea necesario, se puede llamar a close para cerrarlo. Después de close, no se debe seguir usando. XREALCameraDevice emite InputFrame a través de inputFrameSource, y se debe conectar inputFrameSource a InputFrameSink para su uso. bufferCapacity indica la capacidad del búfer de InputFrame. Si se emiten desde este dispositivo más InputFrame que esta cantidad y no se liberan, el dispositivo dejará de emitir nuevos InputFrame hasta que se liberen los anteriores. Esto puede causar problemas como congelamiento de la imagen.

XREALCameraDevice

Constructores

XREALCameraDevice

void easyar_XREALCameraDevice__ctor(easyar_XREALCameraDevice * * Return)
XREALCameraDevice()
public XREALCameraDevice()
constructor()
+ (easyar_XREALCameraDevice *) create
public convenience init()
public XREALCameraDevice()

Métodos

isAvailable

Comprueba si está disponible. Solo devuelve true en dispositivos compatibles con gafas XREAL y después de una conexión exitosa a las gafas XREAL.

bool easyar_XREALCameraDevice_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()

Devuelve

Tipo Descripción
Boolean

isDeviceSupported

Comprueba si las gafas son compatibles. En dispositivos disponibles, solo tiene valor después de que XREAL complete la inicialización.

easyar_OptionalOfBool easyar_XREALCameraDevice_isDeviceSupported(void)
static std::optional<bool> isDeviceSupported()
public static java.lang.@Nullable Boolean isDeviceSupported()
companion object fun isDeviceSupported(): Boolean?
+ (NSNumber *)isDeviceSupported
public static func isDeviceSupported() -> Bool?
public static Optional<bool> isDeviceSupported()

Devuelve

Tipo Descripción
Optional<>

bufferCapacity

Capacidad del búfer de InputFrame, valor predeterminado es 8.

int easyar_XREALCameraDevice_bufferCapacity(const easyar_XREALCameraDevice * This)
int bufferCapacity()
public int bufferCapacity()
fun bufferCapacity(): Int
- (int)bufferCapacity
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()

Devuelve

Tipo Descripción
Int32

setBufferCapacity

Establece la capacidad del búfer de InputFrame.

void easyar_XREALCameraDevice_setBufferCapacity(easyar_XREALCameraDevice * This, int capacity)
void setBufferCapacity(int capacity)
public void setBufferCapacity(int capacity)
fun setBufferCapacity(capacity: Int): Unit
- (void)setBufferCapacity:(int)capacity
public func setBufferCapacity(_ capacity: Int32) -> Void
public virtual void setBufferCapacity(int capacity)

Parámetros

Nombre Tipo Descripción
capacity Int32

Devuelve

Tipo Descripción
Void

inputFrameSource

Puerto de salida de InputFrame.

void easyar_XREALCameraDevice_inputFrameSource(const easyar_XREALCameraDevice * This, easyar_InputFrameSource * * Return)
std::shared_ptr<InputFrameSource> inputFrameSource()
public @Nonnull InputFrameSource inputFrameSource()
fun inputFrameSource(): InputFrameSource
- (easyar_InputFrameSource *)inputFrameSource
public func inputFrameSource() -> InputFrameSource
public virtual InputFrameSource inputFrameSource()

Devuelve

Tipo Descripción
InputFrameSource

getMotionInputData

Obtiene datos de entrada de movimiento sincronizados. Se usa después de que isDeviceSupported devuelva true.

void easyar_XREALCameraDevice_getMotionInputData(const easyar_XREALCameraDevice * This, easyar_OptionalOfMotionInputData * Return)
std::optional<std::shared_ptr<MotionInputData>> getMotionInputData()
public @Nullable MotionInputData getMotionInputData()
fun getMotionInputData(): MotionInputData?
- (easyar_MotionInputData *)getMotionInputData
public func getMotionInputData() -> MotionInputData?
public virtual Optional<MotionInputData> getMotionInputData()

Devuelve

Tipo Descripción
Optional<MotionInputData>

receivedFrameCount

Número de fotogramas obtenidos de la cámara. Después de start, debería aumentar continuamente; de lo contrario, puede haber inestabilidad en la conexión del dispositivo o mal funcionamiento del servicio/SDK de XREAL, en cuyo caso se debe buscar ayuda directamente de XREAL oficial.

int easyar_XREALCameraDevice_receivedFrameCount(const easyar_XREALCameraDevice * This)
int receivedFrameCount()
public int receivedFrameCount()
fun receivedFrameCount(): Int
- (int)receivedFrameCount
public func receivedFrameCount() -> Int32
public virtual int receivedFrameCount()

Devuelve

Tipo Descripción
Int32

open

Abre el dispositivo de cámara. Se usa después de que isDeviceSupported devuelva true. En dispositivos como Air2 Ultra, la licencia de XREAL debe verificarse primero mediante el método oficial de XREAL.

bool easyar_XREALCameraDevice_open(easyar_XREALCameraDevice * This)
bool open()
public boolean open()
fun open(): Boolean
- (bool)open
public func `open`() -> Bool
public virtual bool open()

Devuelve

Tipo Descripción
Boolean

start

Inicia la recopilación de datos de flujo de video.

bool easyar_XREALCameraDevice_start(easyar_XREALCameraDevice * This)
bool start()
public boolean start()
fun start(): Boolean
- (bool)start
public func start() -> Bool
public virtual bool start()

Devuelve

Tipo Descripción
Boolean

stop

Detiene la recopilación de datos de flujo de video.

void easyar_XREALCameraDevice_stop(easyar_XREALCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Devuelve

Tipo Descripción
Void

close

Cierra. Después de close, no se debe seguir usando.

void easyar_XREALCameraDevice_close(easyar_XREALCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Devuelve

Tipo Descripción
Void

type

Tipo de cámara. Se llama después de un open exitoso.

easyar_CameraDeviceType easyar_XREALCameraDevice_type(const easyar_XREALCameraDevice * This)
CameraDeviceType type()
public int type()
fun type(): Int
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()

Devuelve

Tipo Descripción
CameraDeviceType

cameraOrientation

Ángulo de rotación en sentido horario necesario para mostrar la imagen de la cámara en la orientación natural del dispositivo. Se llama después de un open exitoso.

int easyar_XREALCameraDevice_cameraOrientation(const easyar_XREALCameraDevice * This)
int cameraOrientation()
public int cameraOrientation()
fun cameraOrientation(): Int
- (int)cameraOrientation
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()

Devuelve

Tipo Descripción
Int32

size

Obtiene el tamaño actual de la imagen. Se llama después de un open exitoso.

easyar_Vec2I easyar_XREALCameraDevice_size(const easyar_XREALCameraDevice * This)
Vec2I size()
public @Nonnull Vec2I size()
fun size(): Vec2I
- (easyar_Vec2I *)size
public func size() -> Vec2I
public virtual Vec2I size()

Devuelve

Tipo Descripción
Vec2I

frameRate

Obtiene la tasa de fotogramas actual. Se llama después de un open exitoso.

double easyar_XREALCameraDevice_frameRate(const easyar_XREALCameraDevice * This)
double frameRate()
public double frameRate()
fun frameRate(): Double
- (double)frameRate
public func frameRate() -> Double
public virtual double frameRate()

Devuelve

Tipo Descripción
Double