Table of Contents

Class VideoPlayer

Namespace
easyar

VideoPlayer ist eine Klasse für video playback. EasyAR unterstützt normales Video, transparentes Video und streaming playback. Der Videoinhalt wird auf die an setRenderTexture übergebene texture gerendert. Diese Klasse unterstützt nur OpenGLES 3.0-texture. Da sie von OpenGLES abhängt, müssen alle Funktionen dieser Klasse (einschließlich destructor) in einem einzelnen thread mit OpenGLES-Kontext aufgerufen werden. Die aktuelle Version verlangt, dass Breite und Höhe Vielfache von 16 sind. Unterstützte Videodateiformate Windows: Media Foundation-kompatible Formate. Durch Installieren zusätzlicher Decoder können mehr Formate unterstützt werden. Siehe Supported Media Formats in Media Foundation . DirectShow wird nicht unterstützt. Mac: Nicht unterstützt. Android: Vom System unterstützte Formate. Siehe Supported media formats . iOS: Vom System unterstützte Formate. Derzeit gibt es kein gültiges Referenzdokument.

VideoPlayer

Konstruktoren

VideoPlayer

void easyar_VideoPlayer__ctor(easyar_VideoPlayer * * Return)
VideoPlayer()
public VideoPlayer()
constructor()
+ (easyar_VideoPlayer *) create
public convenience init()
public VideoPlayer()

Methoden

isAvailable

Prüft, ob es verfügbar ist. Gibt nur auf Windows, Android und iOS true zurück und ist auf Mac nicht verfügbar.

bool easyar_VideoPlayer_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

setVideoType

Legt den Videotyp fest. Wenn er nicht manuell gesetzt wird, ist der Standard der normale Typ. Diese Methode muss vor open aufgerufen werden.

void easyar_VideoPlayer_setVideoType(easyar_VideoPlayer * This, easyar_VideoType videoType)
void setVideoType(VideoType videoType)
public void setVideoType(int videoType)
fun setVideoType(videoType: Int): Unit
- (void)setVideoType:(easyar_VideoType)videoType
public func setVideoType(_ videoType: VideoType) -> Void
public virtual void setVideoType(VideoType videoType)

Parameter

Name Typ Beschreibung
videoType VideoType

Rückgabewert

Typ Beschreibung
Void

setRenderTexture

Übergibt die texture, die zum Anzeigen des Videos verwendet wird, an den player. Diese Methode muss vor open aufgerufen werden.

void easyar_VideoPlayer_setRenderTexture(easyar_VideoPlayer * This, easyar_TextureId * texture)
void setRenderTexture(std::shared_ptr<TextureId> texture)
public void setRenderTexture(@Nonnull TextureId texture)
fun setRenderTexture(texture: TextureId): Unit
- (void)setRenderTexture:(easyar_TextureId *)texture
public func setRenderTexture(_ texture: TextureId) -> Void
public virtual void setRenderTexture(TextureId texture)

Parameter

Name Typ Beschreibung
texture TextureId

Rückgabewert

Typ Beschreibung
Void

open

Öffnet ein Video aus path. path kann eine lokale Videodatei (path/to/video.mp4) oder eine url (http://www.../.../video.mp4) sein. storageType gibt den Typ von path an. Details siehe StorageType. Diese Methode ist asynchronous. open kann einige Zeit benötigen. Wenn Sie das Ergebnis des Öffnens oder den playback-Status wissen möchten, müssen Sie callback-Daten verarbeiten. callback wird in dem thread aufgerufen, der callbackScheduler entspricht. Im callback können Sie prüfen, ob das Öffnen erfolgreich abgeschlossen wurde, und nach erfolgreichem Öffnen playback starten.

void easyar_VideoPlayer_open(easyar_VideoPlayer * This, easyar_String * path, easyar_StorageType storageType, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromVideoStatus callback)
void open(std::string path, StorageType storageType, std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(VideoStatus)>> callback)
public void open(java.lang.@Nonnull String path, int storageType, @Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromVideoStatus callback)
fun open(path: String, storageType: Int, callbackScheduler: CallbackScheduler, callback: FunctorOfVoidFromVideoStatus?): Unit
- (void)open:(NSString *)path storageType:(easyar_StorageType)storageType callbackScheduler:(easyar_CallbackScheduler *)callbackScheduler callback:(void (^)(easyar_VideoStatus status))callback
public func `open`(_ path: String, _ storageType: StorageType, _ callbackScheduler: CallbackScheduler, _ callback: ((VideoStatus) -> Void)?) -> Void
public virtual void open(string path, StorageType storageType, CallbackScheduler callbackScheduler, Optional<Action<VideoStatus>> callback)

Parameter

Name Typ Beschreibung
path String
storageType StorageType
callbackScheduler CallbackScheduler
callback Optional<Action<VideoStatus>>

Rückgabewert

Typ Beschreibung
Void

close

Schließt das Video.

void easyar_VideoPlayer_close(easyar_VideoPlayer * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Rückgabewert

Typ Beschreibung
Void

play

Startet oder setzt video playback fort.

bool easyar_VideoPlayer_play(easyar_VideoPlayer * This)
bool play()
public boolean play()
fun play(): Boolean
- (bool)play
public func play() -> Bool
public virtual bool play()

Rückgabewert

Typ Beschreibung
Boolean

stop

Stoppt video playback.

void easyar_VideoPlayer_stop(easyar_VideoPlayer * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Rückgabewert

Typ Beschreibung
Void

pause

Pausiert video playback.

void easyar_VideoPlayer_pause(easyar_VideoPlayer * This)
void pause()
public void pause()
fun pause(): Unit
- (void)pause
public func pause() -> Void
public virtual void pause()

Rückgabewert

Typ Beschreibung
Void

isRenderTextureAvailable

Ob die video texture zum Rendern verwendet werden kann. Kann verwendet werden, um zu prüfen, ob die an player übergebene texture berührt wurde.

bool easyar_VideoPlayer_isRenderTextureAvailable(easyar_VideoPlayer * This)
bool isRenderTextureAvailable()
public boolean isRenderTextureAvailable()
fun isRenderTextureAvailable(): Boolean
- (bool)isRenderTextureAvailable
public func isRenderTextureAvailable() -> Bool
public virtual bool isRenderTextureAvailable()

Rückgabewert

Typ Beschreibung
Boolean

updateFrame

Aktualisiert texture-Daten. Diese Methode muss im rendering thread aufgerufen werden, wenn isRenderTextureAvailable true zurückgibt.

void easyar_VideoPlayer_updateFrame(easyar_VideoPlayer * This)
void updateFrame()
public void updateFrame()
fun updateFrame(): Unit
- (void)updateFrame
public func updateFrame() -> Void
public virtual void updateFrame()

Rückgabewert

Typ Beschreibung
Void

duration

Gibt die Videolänge zurück. Nach erfolgreichem open verwenden.

int easyar_VideoPlayer_duration(easyar_VideoPlayer * This)
int duration()
public int duration()
fun duration(): Int
- (int)duration
public func duration() -> Int32
public virtual int duration()

Rückgabewert

Typ Beschreibung
Int32

currentPosition

Gibt die aktuelle playback-Position des Videos zurück. Nach erfolgreichem open verwenden.

int easyar_VideoPlayer_currentPosition(easyar_VideoPlayer * This)
int currentPosition()
public int currentPosition()
fun currentPosition(): Int
- (int)currentPosition
public func currentPosition() -> Int32
public virtual int currentPosition()

Rückgabewert

Typ Beschreibung
Int32

seek

Passt die playback-Position auf position an. Nach erfolgreichem open verwenden.

bool easyar_VideoPlayer_seek(easyar_VideoPlayer * This, int position)
bool seek(int position)
public boolean seek(int position)
fun seek(position: Int): Boolean
- (bool)seek:(int)position
public func seek(_ position: Int32) -> Bool
public virtual bool seek(int position)

Parameter

Name Typ Beschreibung
position Int32

Rückgabewert

Typ Beschreibung
Boolean

size

Gibt Breite und Höhe des Videos zurück. Nach erfolgreichem open verwenden.

easyar_Vec2I easyar_VideoPlayer_size(easyar_VideoPlayer * 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

volume

Gibt die Videolautstärke zurück. Nach erfolgreichem open verwenden.

float easyar_VideoPlayer_volume(easyar_VideoPlayer * This)
float volume()
public float volume()
fun volume(): Float
- (float)volume
public func volume() -> Float
public virtual float volume()

Rückgabewert

Typ Beschreibung
Single

setVolume

Legt die Videolautstärke fest. Nach erfolgreichem open verwenden.

bool easyar_VideoPlayer_setVolume(easyar_VideoPlayer * This, float volume)
bool setVolume(float volume)
public boolean setVolume(float volume)
fun setVolume(volume: Float): Boolean
- (bool)setVolume:(float)volume
public func setVolume(_ volume: Float) -> Bool
public virtual bool setVolume(float volume)

Parameter

Name Typ Beschreibung
volume Single

Rückgabewert

Typ Beschreibung
Boolean