Table of Contents

Class VideoPlayer

Spazio dei nomi
easyar

VideoPlayer è la classe per la riproduzione video. EasyAR supporta la riproduzione di video normali, video trasparenti e streaming. Il contenuto video verrà renderizzato sulla texture passata a setRenderTexture. Questa classe supporta solo texture OpenGLES 3.0. A causa della dipendenza da OpenGLES, tutte le funzioni di questa classe (incluso il distruttore) devono essere chiamate in un singolo thread contenente il contesto OpenGLES. La versione corrente richiede che larghezza e altezza siano multipli di 16. Formati video supportati Windows: Formati compatibili con Media Foundation, l'installazione di decoder aggiuntivi può supportare più formati, fare riferimento a Supported Media Formats in Media Foundation, non supporta DirectShow Mac: Non supportato Android: Formati supportati dal sistema, fare riferimento a Supported media formats. iOS: Formati supportati dal sistema, attualmente non ci sono documenti di riferimento validi.

VideoPlayer

Costruttori

VideoPlayer

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

Metodi

isAvailable

Controlla se è disponibile. Restituisce true solo su Windows, Android e iOS, non disponibile su Mac.

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

Valore restituito

Tipo Descrizione
Boolean

setVideoType

Imposta il tipo di video. Se non impostato manualmente, il valore predefinito è normale. Questo metodo deve essere chiamato prima di open.

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)

Parametri

Nome Tipo Descrizione
videoType VideoType

Valore restituito

Tipo Descrizione
Void

setRenderTexture

Passa la texture utilizzata per visualizzare il video al player. Questo metodo deve essere chiamato prima di open.

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)

Parametri

Nome Tipo Descrizione
texture TextureId

Valore restituito

Tipo Descrizione
Void

open

Apre il video dal path. Il path può essere un file video locale (path/to/video.mp4) o un URL (http://www.../.../video.mp4). storageType indica il tipo di path. Vedere StorageType per una descrizione dettagliata. Questo metodo è asincrono. open potrebbe richiedere del tempo per completarsi. Se si desidera conoscere il risultato dell'apertura del video o lo stato della riproduzione, è necessario gestire i dati di callback. Il callback verrà chiamato nel thread corrispondente a callbackScheduler. Nel callback, puoi verificare se l'apertura è terminata con successo e iniziare la riproduzione dopo l'apertura riuscita.

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)

Parametri

Nome Tipo Descrizione
path String
storageType StorageType
callbackScheduler CallbackScheduler
callback Optional<Action<VideoStatus>>

Valore restituito

Tipo Descrizione
Void

close

Chiude il 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()

Valore restituito

Tipo Descrizione
Void

play

Inizia o riprende la riproduzione video.

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

Valore restituito

Tipo Descrizione
Boolean

stop

Ferma la riproduzione video.

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

Valore restituito

Tipo Descrizione
Void

pause

Mette in pausa la riproduzione video.

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

Valore restituito

Tipo Descrizione
Void

isRenderTextureAvailable

Indica se la texture video può essere utilizzata per il rendering. Può essere utilizzato per verificare se la texture passata al player è stata modificata.

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

Valore restituito

Tipo Descrizione
Boolean

updateFrame

Aggiorna i dati della texture. Questo metodo deve essere chiamato nel thread di rendering quando isRenderTextureAvailable restituisce true.

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

Valore restituito

Tipo Descrizione
Void

duration

Restituisce la durata del video. Da utilizzare dopo un open riuscito.

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

Valore restituito

Tipo Descrizione
Int32

currentPosition

Restituisce la posizione corrente di riproduzione del video. Da utilizzare dopo un open riuscito.

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

Valore restituito

Tipo Descrizione
Int32

seek

Imposta la posizione di riproduzione su position. Da utilizzare dopo un open riuscito.

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)

Parametri

Nome Tipo Descrizione
position Int32

Valore restituito

Tipo Descrizione
Boolean

size

Restituisce le dimensioni (larghezza e altezza) del video. Da utilizzare dopo un open riuscito.

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

Valore restituito

Tipo Descrizione
Vec2I

volume

Restituisce il volume del video. Da utilizzare dopo un open riuscito.

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

Valore restituito

Tipo Descrizione
Single

setVolume

Imposta il volume del video. Da utilizzare dopo un open riuscito.

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)

Parametri

Nome Tipo Descrizione
volume Single

Valore restituito

Tipo Descrizione
Boolean