Table of Contents

Class VideoPlayer

Espaço de nomes
easyar

VideoPlayer é a classe de reprodução de vídeo. EasyAR suporta reprodução de vídeo comum, vídeo transparente e streaming. O conteúdo do vídeo será renderizado na textura passada para setRenderTexture. Esta classe só suporta texturas do OpenGLES 3.0. Devido à dependência do OpenGLES, todas as funções desta classe (incluindo o destrutor) devem ser chamadas em um único thread que contenha o contexto OpenGLES. A versão atual exige que largura e altura sejam múltiplos de 16. Formatos de arquivo de vídeo suportados Windows: Formatos compatíveis com Media Foundation, instalar decodificadores adicionais pode suportar mais formatos, consulte Supported Media Formats in Media Foundation, não suporta DirectShow Mac: Não suportado Android: Formatos suportados pelo sistema, consulte Supported media formats. iOS: Formatos suportados pelo sistema, atualmente não há documentação de referência válida

VideoPlayer

Construtores

VideoPlayer

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

Métodos

isAvailable

Verifica se está disponível. Retorna true apenas em Windows, Android e iOS, não disponível em 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()

Retorna

Tipo Descrição
Boolean

setVideoType

Define o tipo de vídeo. Se não definido manualmente, padrão será o tipo comum. Este método precisa ser chamado antes de 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)

Parâmetros

Nome Tipo Descrição
videoType VideoType

Retorna

Tipo Descrição
Void

setRenderTexture

Passa a textura usada para exibir o vídeo para o player. Este método precisa ser chamado antes de 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)

Parâmetros

Nome Tipo Descrição
texture TextureId

Retorna

Tipo Descrição
Void

open

Abre o vídeo a partir do path. path pode ser um arquivo de vídeo local (path/to/video.mp4) ou uma url (http://www.../.../video.mp4). storageType indica o tipo de path. Descrição detalhada veja StorageType. Este método é assíncrono. open pode levar algum tempo para ser concluído. Se você deseja saber o resultado da abertura do vídeo ou o status da reprodução, precisa lidar com os dados de callback. callback será chamado no thread correspondente ao callbackScheduler. Você pode verificar no callback se a abertura foi bem-sucedida e iniciar a reprodução após a abertura bem-sucedida.

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)

Parâmetros

Nome Tipo Descrição
path String
storageType StorageType
callbackScheduler CallbackScheduler
callback Optional<Action<VideoStatus>>

Retorna

Tipo Descrição
Void

close

Fecha o vídeo.

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

Retorna

Tipo Descrição
Void

play

Inicia ou continua a reprodução do vídeo.

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

Retorna

Tipo Descrição
Boolean

stop

Para a reprodução do vídeo.

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

Retorna

Tipo Descrição
Void

pause

Pausa a reprodução do vídeo.

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

Retorna

Tipo Descrição
Void

isRenderTextureAvailable

Se a textura de vídeo pode ser usada para renderização. Pode ser usado para verificar se a textura passada para o player foi tocada.

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

Retorna

Tipo Descrição
Boolean

updateFrame

Atualiza os dados da textura. Este método precisa ser chamado no thread de renderização quando isRenderTextureAvailable retornar 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()

Retorna

Tipo Descrição
Void

duration

Retorna o comprimento do vídeo. Use após open bem-sucedido.

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

Retorna

Tipo Descrição
Int32

currentPosition

Retorna a posição atual de reprodução do vídeo. Use após open bem-sucedido.

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

Retorna

Tipo Descrição
Int32

seek

Ajusta a posição de reprodução para position. Use após open bem-sucedido.

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)

Parâmetros

Nome Tipo Descrição
position Int32

Retorna

Tipo Descrição
Boolean

size

Retorna a largura e altura do vídeo. Use após open bem-sucedido.

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

Retorna

Tipo Descrição
Vec2I

volume

Retorna o volume do vídeo. Use após open bem-sucedido.

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

Retorna

Tipo Descrição
Single

setVolume

Define o volume do vídeo. Use após open bem-sucedido.

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)

Parâmetros

Nome Tipo Descrição
volume Single

Retorna

Tipo Descrição
Boolean