Class VideoPlayer
VideoPlayer é uma classe de video playback. EasyAR suporta vídeo normal, vídeo transparente e streaming playback. O conteúdo de vídeo será renderizado na texture passada para setRenderTexture. Esta classe suporta apenas texture OpenGLES 3.0. Como depende de OpenGLES, todas as funções desta classe (incluindo o destructor) devem ser chamadas em uma única thread que contenha um 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 . DirectShow não é suportado. Mac: não suportado. Android: formatos suportados pelo sistema. Consulte Supported media formats . iOS: formatos suportados pelo sistema. Atualmente não há documento de referência válido.
VideoPlayer
Construtores
VideoPlayer
void easyar_VideoPlayer__ctor(easyar_VideoPlayer * * Return)
+ (easyar_VideoPlayer *) create
public convenience init()
Métodos
isAvailable
Verifica se está disponível. Retorna true somente em Windows, Android e iOS, e não está disponível no 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()
Retorna
setVideoType
Define o tipo de vídeo. Se não for definido manualmente, o tipo normal será usado por padrão. Este método deve 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
Retorna
setRenderTexture
Passa para o player a texture usada para exibir o vídeo. Este método deve 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
Retorna
open
Abre um vídeo a partir de 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. Consulte StorageType para detalhes. Este método é asynchronous. open pode levar algum tempo para ser concluído. Se você quiser saber o resultado da abertura do vídeo ou o status de playback, precisará tratar os dados callback. callback será chamado na thread correspondente a callbackScheduler. Você pode verificar no callback se a abertura terminou com sucesso e iniciar playback após abrir com sucesso.
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
Retorna
close
void easyar_VideoPlayer_close(easyar_VideoPlayer * This)
public func close() -> Void
public virtual void close()
Retorna
play
Inicia ou continua video playback.
bool easyar_VideoPlayer_play(easyar_VideoPlayer * This)
public func play() -> Bool
public virtual bool play()
Retorna
stop
Interrompe video playback.
void easyar_VideoPlayer_stop(easyar_VideoPlayer * This)
public func stop() -> Void
public virtual void stop()
Retorna
pause
void easyar_VideoPlayer_pause(easyar_VideoPlayer * This)
public func pause() -> Void
public virtual void pause()
Retorna
isRenderTextureAvailable
Se a texture de vídeo pode ser usada para renderização. Pode ser usado para verificar se a texture passada ao 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
updateFrame
Atualiza os dados de texture. Este método deve ser chamado na rendering thread quando isRenderTextureAvailable retornar true.
void easyar_VideoPlayer_updateFrame(easyar_VideoPlayer * This)
public void updateFrame()
public func updateFrame() -> Void
public virtual void updateFrame()
Retorna
duration
Retorna a duração do vídeo. Use após um open bem-sucedido.
int easyar_VideoPlayer_duration(easyar_VideoPlayer * This)
public func duration() -> Int32
public virtual int duration()
Retorna
currentPosition
Retorna a posição atual de playback do vídeo. Use após um open bem-sucedido.
int easyar_VideoPlayer_currentPosition(easyar_VideoPlayer * This)
public int currentPosition()
fun currentPosition(): Int
public func currentPosition() -> Int32
public virtual int currentPosition()
Retorna
seek
Ajusta a posição de playback para position. Use após um open bem-sucedido.
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)
Parâmetros
| Nome |
Tipo |
Descrição |
| position |
Int32 |
|
Retorna
size
Retorna largura e altura do vídeo. Use após um open bem-sucedido.
easyar_Vec2I easyar_VideoPlayer_size(easyar_VideoPlayer * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
Retorna
volume
Retorna o volume do vídeo. Use após um open bem-sucedido.
float easyar_VideoPlayer_volume(easyar_VideoPlayer * This)
public func volume() -> Float
public virtual float volume()
Retorna
setVolume
Define o volume do vídeo. Use após um 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