Class VideoPlayer
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)
+ (easyar_VideoPlayer *) create
public convenience init()
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
public static func isAvailable() -> Bool
public static bool isAvailable()
Rückgabewert
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
Rückgabewert
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
Rückgabewert
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
Rückgabewert
close
void easyar_VideoPlayer_close(easyar_VideoPlayer * This)
public func close() -> Void
public virtual void close()
Rückgabewert
play
Startet oder setzt video playback fort.
bool easyar_VideoPlayer_play(easyar_VideoPlayer * This)
public func play() -> Bool
public virtual bool play()
Rückgabewert
stop
void easyar_VideoPlayer_stop(easyar_VideoPlayer * This)
public func stop() -> Void
public virtual void stop()
Rückgabewert
pause
void easyar_VideoPlayer_pause(easyar_VideoPlayer * This)
public func pause() -> Void
public virtual void pause()
Rückgabewert
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
updateFrame
Aktualisiert texture-Daten. Diese Methode muss im rendering thread aufgerufen werden, wenn isRenderTextureAvailable true zurückgibt.
void easyar_VideoPlayer_updateFrame(easyar_VideoPlayer * This)
public void updateFrame()
public func updateFrame() -> Void
public virtual void updateFrame()
Rückgabewert
duration
Gibt die Videolänge zurück. Nach erfolgreichem open verwenden.
int easyar_VideoPlayer_duration(easyar_VideoPlayer * This)
public func duration() -> Int32
public virtual int duration()
Rückgabewert
currentPosition
Gibt die aktuelle playback-Position des Videos zurück. Nach erfolgreichem open verwenden.
int easyar_VideoPlayer_currentPosition(easyar_VideoPlayer * This)
public int currentPosition()
fun currentPosition(): Int
public func currentPosition() -> Int32
public virtual int currentPosition()
Rückgabewert
seek
Passt die playback-Position auf position an. Nach erfolgreichem open verwenden.
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)
Parameter
| Name |
Typ |
Beschreibung |
| position |
Int32 |
|
Rückgabewert
size
Gibt Breite und Höhe des Videos zurück. Nach erfolgreichem open verwenden.
easyar_Vec2I easyar_VideoPlayer_size(easyar_VideoPlayer * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
Rückgabewert
volume
Gibt die Videolautstärke zurück. Nach erfolgreichem open verwenden.
float easyar_VideoPlayer_volume(easyar_VideoPlayer * This)
public func volume() -> Float
public virtual float volume()
Rückgabewert
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