Table of Contents

Class ARCoreCameraDevice

Namespace
easyar

ARCoreCameraDevice implementiert eine ARCore-basierte Kameraeinrichtung, die InputFrame ausgibt (enthält Bild, Kameraparameter, Zeitstempel, 6DOF-Positionsinformationen und Tracking-Status). Vor der Verwendung muss libarcore_sdk_c.so mit java.lang.System.loadLibrary geladen werden. Nach der Erstellung kann start/stop aufgerufen werden, um die Erfassung von Videodatenströmen zu beginnen bzw. zu stoppen. Wenn das Gerät nicht mehr benötigt wird, kann close zum Schließen aufgerufen werden. Nach close sollte es nicht weiter verwendet werden. ARCoreCameraDevice gibt InputFrame über inputFrameSource aus. inputFrameSource sollte zur Verwendung mit einem InputFrameSink verbunden werden. bufferCapacity gibt die Kapazität des InputFrame-Puffers an. Wenn mehr InputFrame von diesem Gerät ausgegeben werden als diese Kapazität und nicht freigegeben wurden, gibt das Gerät keine neuen InputFrame mehr aus, bis vorherige freigegeben wurden. Dies kann zu Problemen wie Einfrieren des Bildes führen. Hinweis: Die aktuelle ARCore-Implementierung (v1.13.0) hat Speicherlecks beim Erstellen und Zerstören von Sessions. Mehrfaches Erstellen und Zerstören führt zu kontinuierlich steigendem Speicherverbrauch ohne Freigabe nach der Zerstörung.

ARCoreCameraDevice

Konstruktoren

ARCoreCameraDevice

void easyar_ARCoreCameraDevice__ctor(easyar_ARCoreCameraDevice * * Return)
ARCoreCameraDevice()
public ARCoreCameraDevice()
constructor()
+ (easyar_ARCoreCameraDevice *) create
public convenience init()
public ARCoreCameraDevice()

Methoden

isAvailable

Überprüft die Verfügbarkeit. Gibt nur auf Android-Systemen mit installiertem ARCore true zurück. Gibt false zurück, wenn aufgerufen ohne dass libarcore_sdk_c.so geladen wurde. Hinweis: Wenn das Gerät ARCore nicht unterstützt, aber das ARCore-APK per Sideloading installiert wurde, gibt diese Funktion true zurück, ARCore ist jedoch nicht funktionsfähig.

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

Rückgabewert

Typ Beschreibung
Boolean

isDeviceSupported

Überprüft, ob das aktuelle Gerät unterstützt wird.

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

Rückgabewert

Typ Beschreibung
Boolean

bufferCapacity

Die Pufferkapazität für InputFrame. Der Standardwert ist 8.

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

Rückgabewert

Typ Beschreibung
Int32

setBufferCapacity

Legt die Pufferkapazität für InputFrame fest.

void easyar_ARCoreCameraDevice_setBufferCapacity(easyar_ARCoreCameraDevice * 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)

Parameter

Name Typ Beschreibung
capacity Int32

Rückgabewert

Typ Beschreibung
Void

inputFrameSource

Ausgangsport für InputFrame.

void easyar_ARCoreCameraDevice_inputFrameSource(easyar_ARCoreCameraDevice * 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()

Rückgabewert

Typ Beschreibung
InputFrameSource

setFocusMode

Legt den Fokusmodus auf focusMode fest.

void easyar_ARCoreCameraDevice_setFocusMode(easyar_ARCoreCameraDevice * This, easyar_ARCoreCameraDeviceFocusMode focusMode)
void setFocusMode(ARCoreCameraDeviceFocusMode focusMode)
public void setFocusMode(int focusMode)
fun setFocusMode(focusMode: Int): Unit
- (void)setFocusMode:(easyar_ARCoreCameraDeviceFocusMode)focusMode
public func setFocusMode(_ focusMode: ARCoreCameraDeviceFocusMode) -> Void
public virtual void setFocusMode(ARCoreCameraDeviceFocusMode focusMode)

Parameter

Name Typ Beschreibung
focusMode ARCoreCameraDeviceFocusMode

Rückgabewert

Typ Beschreibung
Void

start

Startet die Erfassung von Videodatenströmen.

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

Rückgabewert

Typ Beschreibung
Boolean

stop

Beendet die Erfassung von Videodatenströmen.

void easyar_ARCoreCameraDevice_stop(easyar_ARCoreCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Rückgabewert

Typ Beschreibung
Void

close

Schließt das Gerät. Nach close sollte es nicht weiter verwendet werden.

void easyar_ARCoreCameraDevice_close(easyar_ARCoreCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Rückgabewert

Typ Beschreibung
Void

type

Kameratyp.

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

Rückgabewert

Typ Beschreibung
CameraDeviceType

cameraOrientation

Der Winkel (im Uhrzeigersinn), um den das Kamerabild gedreht werden muss, um in der natürlichen Geräteausrichtung angezeigt zu werden.

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

Rückgabewert

Typ Beschreibung
Int32

size

Ruft die aktuelle Bildgröße ab.

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

Rückgabewert

Typ Beschreibung
Vec2I

frameRateRangeLower

Ruft die untere Grenze des aktuellen Bildratenbereichs ab.

double easyar_ARCoreCameraDevice_frameRateRangeLower(const easyar_ARCoreCameraDevice * This)
double frameRateRangeLower()
public double frameRateRangeLower()
fun frameRateRangeLower(): Double
- (double)frameRateRangeLower
public func frameRateRangeLower() -> Double
public virtual double frameRateRangeLower()

Rückgabewert

Typ Beschreibung
Double

frameRateRangeUpper

Ruft die obere Grenze des aktuellen Bildratenbereichs ab.

double easyar_ARCoreCameraDevice_frameRateRangeUpper(const easyar_ARCoreCameraDevice * This)
double frameRateRangeUpper()
public double frameRateRangeUpper()
fun frameRateRangeUpper(): Double
- (double)frameRateRangeUpper
public func frameRateRangeUpper() -> Double
public virtual double frameRateRangeUpper()

Rückgabewert

Typ Beschreibung
Double