Class VideoPlayer
VideoPlayer è una classe di playback video. EasyAR supporta video normali, video trasparenti e streaming playback. Il contenuto video verrà renderizzato sulla texture passata a setRenderTexture. Questa classe supporta solo texture OpenGLES 3.0. Poiché dipende da OpenGLES, tutte le funzioni di questa classe (incluso il destructor) devono essere chiamate in un singolo thread che contiene un contesto OpenGLES. La versione corrente richiede che larghezza e altezza siano multipli di 16. Formati di file video supportati Windows: formati compatibili con Media Foundation. L'installazione di decoder aggiuntivi può supportare più formati. Vedere Supported Media Formats in Media Foundation . DirectShow non è supportato. Mac: non supportato. Android: formati supportati dal sistema. Vedere Supported media formats . iOS: formati supportati dal sistema. Attualmente non esiste un documento di riferimento valido.
VideoPlayer
Costruttori
VideoPlayer
void easyar_VideoPlayer__ctor(easyar_VideoPlayer * * Return)
+ (easyar_VideoPlayer *) create
public convenience init()
Metodi
isAvailable
Controlla se è disponibile. Restituisce true solo su Windows, Android e iOS, e non è disponibile su Mac.
bool easyar_VideoPlayer_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
public static func isAvailable() -> Bool
public static bool isAvailable()
Valore restituito
setVideoType
Imposta il tipo di video. Se non viene impostato manualmente, il tipo predefinito sarà 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
Valore restituito
setRenderTexture
Passa al player la texture usata per visualizzare il video. 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
Valore restituito
open
Apre un video da path. path può essere un file video locale (path/to/video.mp4) o una url (http://www.../.../video.mp4). storageType indica il tipo di path. Per i dettagli vedere StorageType. Questo metodo è asynchronous. open può richiedere del tempo per completarsi. Se si desidera conoscere il risultato dell'apertura del video o lo stato di playback, è necessario gestire i dati callback. callback verrà chiamato nel thread corrispondente a callbackScheduler. Nel callback è possibile controllare se l'apertura è terminata correttamente e avviare playback 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
Valore restituito
close
void easyar_VideoPlayer_close(easyar_VideoPlayer * This)
public func close() -> Void
public virtual void close()
Valore restituito
play
Avvia o riprende playback video.
bool easyar_VideoPlayer_play(easyar_VideoPlayer * This)
public func play() -> Bool
public virtual bool play()
Valore restituito
stop
void easyar_VideoPlayer_stop(easyar_VideoPlayer * This)
public func stop() -> Void
public virtual void stop()
Valore restituito
pause
Mette in pausa playback video.
void easyar_VideoPlayer_pause(easyar_VideoPlayer * This)
public func pause() -> Void
public virtual void pause()
Valore restituito
isRenderTextureAvailable
Indica se la texture video può essere usata per il rendering. Può essere usata per controllare se la texture passata al player è stata toccata.
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
updateFrame
Aggiorna i dati texture. Questo metodo deve essere chiamato sul rendering thread quando isRenderTextureAvailable restituisce true.
void easyar_VideoPlayer_updateFrame(easyar_VideoPlayer * This)
public void updateFrame()
public func updateFrame() -> Void
public virtual void updateFrame()
Valore restituito
duration
Restituisce la durata del video. Usare dopo un open riuscito.
int easyar_VideoPlayer_duration(easyar_VideoPlayer * This)
public func duration() -> Int32
public virtual int duration()
Valore restituito
currentPosition
Restituisce la posizione corrente di playback del video. Usare dopo un open riuscito.
int easyar_VideoPlayer_currentPosition(easyar_VideoPlayer * This)
public int currentPosition()
fun currentPosition(): Int
public func currentPosition() -> Int32
public virtual int currentPosition()
Valore restituito
seek
Regola la posizione di playback su position. Usare dopo un open riuscito.
bool easyar_VideoPlayer_seek(easyar_VideoPlayer * This, 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
size
Restituisce larghezza e altezza del video. Usare dopo un open riuscito.
easyar_Vec2I easyar_VideoPlayer_size(easyar_VideoPlayer * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
Valore restituito
volume
Restituisce il volume del video. Usare dopo un open riuscito.
float easyar_VideoPlayer_volume(easyar_VideoPlayer * This)
public func volume() -> Float
public virtual float volume()
Valore restituito
setVolume
Imposta il volume del video. Usare 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