AVProVideo Shu AVProVideo de aprendizaje cero

Consejo: Seleccione el lado derecho del directorio, puede encontrar rápidamente lo que necesita

A, AVProVideo función práctica:

  • WebGL reproducir vídeo (Unidad no es suficiente apoyo para el juego de video WebGL)
  • clips de vídeo del cliente y la unidad del jugador de PC en los archivos del cliente de Android (Mac, IOS, TVOS, Windows Phone, UWP, plataforma de PS4)
  • Reproducción de una secuencia de salida de fotogramas de vídeo
  • El procesamiento de vídeo objetos 3D (3D de la malla)
  • 360 ° círculo / cuadrado que rodea vídeo (similar al ojo abierto Tahití)
  • 180 grados alrededor del vídeo (la mitad del mundo ver el video, no la otra mitad)
  • Vídeo transparente (AR mariposa similar)
  • ...

configuración anterior, la documentación de referencia P36.

 

 

Dos, Notas AVProVideo

AVProVideo  no compatibles Internet Explorer 11 (anyversion), usar en su lugar en el borde del Navegador de Microsoft. (A partir de la documentación)

 

 

Dos, la configuración rápida AVProVideo

StreamingAssets crear la carpeta.

1, la reproducción de vídeo a pantalla completa

una, la escena preforma FullscreenVideo arrastre (por encima de esta banda DisplayIMGUI )

b, establecer la ruta de vídeo

c, completa

 

2, el jugador puede ajustar el tamaño del vídeo, la ubicación

una, haga Nivel Grupo Nuevo: AVpro Video-Media Player

b, nuevo nivel panel de la lona y EventSystem, nueva UI-AVpro vídeo Ugui (por encima de esta banda inferior de la lona DisplayUGUI )

c, el MediaPlayer arrastró AVpro vídeo

d, ajustar ahora AVpro vídeo se puede ajustar el tamaño del vídeo, la orientación

 

 

En tercer lugar, explicar la propiedad

Texto de referencia P41

1, MediaPlayer Guión:

Principal

Auto Open: debe estar abierta para el juego de inicio automático.

Velocidad de reproducción: velocidad de reproducción

Persistente: El DontDestroyOnLoad aplica al objeto, de modo que no se destruye en la escena / Carga Nivel

Audio

Volumen: el volumen

Silenciado: ¿Quieres que silenciar el video

Evento

explique a continuación

específico de la plataforma

Estos le permiten configurar diferentes atributos para cada plataforma, incluyendo el establecimiento de una ruta de archivo diferente.

 

2, DisplayIMGUI Guión

Este es un video de pantalla completa traído a script de configuración rápida.

Pantalla en el Editor: si se muestra un rectángulo (AVProVideo icono interfaz juego) en el editor

Color: el color del vídeo, que incluye un canal transparente

Modo de escala:

  • StretchToFill: vídeo escalable llenó toda la interfaz gráfica de usuario (puede mostrar el vídeo, pero deformada)
  • ScaleAndCrop: mantener la forma de vídeo original, que aparece en la interfaz gráfica de usuario (tamaño del vídeo original, esta pantalla de modo de fallo de vídeo)
  • ScaleToFit: tales GUI adaptación de vídeo (para mostrar el vídeo completo, ninguna deformación, pero no puede ser superior e inferior barras negras)

FullScreen: si se ignoran, altura, anchura x y la influencia, el uso de la pantalla completa.

x: la distancia desde el extremo izquierdo

y: distancia desde el lado superior

Anchura: relación de anchura de la de vídeo

relación de la altura del vídeo: Altura

 

3, DisplayUGUI Guión

DefaultTexture: Cuando el vídeo no ha estado jugando para ver la imagen por defecto (requerido NoDefaultTexture elimine la marca)

NoDefaultTexture: si la imagen por defecto (DefaultTexture)

 

 

En cuarto lugar, la API principal

1, la interfaz

MediaPlayer mp;
mp.Info.GetVideoWidth();

disponible:

  • GetDurationMs: devuelve la longitud de vídeo (en milisegundos)
  • GetVideoWidth: Ancho de vídeo de retorno (en píxeles)
  • la altura del vídeo: GetVideoHeight
  • GetVideoFrameRate: devuelve la velocidad de cuadros medios (fotogramas por segundo de vídeo)
  • GetVideoDisplayRate: devuelve la corriente alcanza la velocidad de visualización, en fotogramas por segundo (imágenes por segundo en la reproducción de vídeo actual en)
  • HasVideo: Si los medios de comunicación tiene pista de vídeo, de vuelta verdad
  • HasAudio: pista de audio, devuelve verdadero
  • IsPlaybackStalled: Comprobar el jugador está en un estado detenido
  • ... ...

2, la interfaz de control

MediaPlayer mp;
mp.Control.Pause();

Se puede lograr:

  • SetLooping (bool blooping): Establecer si el bucle de vídeo
  • CloseVideo (): apagar el vídeo, libera la memoria
  • Jugar()
  • Pausa()
  • Detener()
  • Rewind (): Replay
  • Seek (Timems float): establece el progreso
  • MuteAudio (bool B MUTE): Permite establecer si se muda
  • SetVolume (volumen float): establecer el volumen
  • flotar getVolume (): Obtener el volumen
  • flotar GetCurrentTimeMs (): Obtener el progreso de reproducción actual (en milisegundos)
  • bool isMuted: obtener si desea silenciar
  • bool IsLooping: obtener si el bucle de vídeo
  • bool canplay: ¿Se puede conseguir la reproducción de vídeo
  • bool isPlaying: la obtención de juego si el vídeo
  • bool isPaused: usted está obteniendo la posibilidad de suspender
  • ... ...

3, de interfaz de Textura

MediaPlayer mp;
Texture videoTexture = mp.TextureProducer.GetTexture();

4, Eventos

Devolución de llamada aparecerá debajo del reproductor de vídeo.

 

Cinco funciones para lograr:

Origen: Jugar con la configuración de vídeo y diferentes plataformas para reproducir el vídeo correspondiente

reproductor lado default / PC:

    public MediaPlayer mediaPlayer;

    void Start()
    {
        //PC端
        mediaPlayer.m_VideoPath = "vedioURL";
        mediaPlayer.OpenVideoFromFile(
                    MediaPlayer.FileLocation.AbsolutePathOrURL,
                     "视频路径",
                     false);//加载视频。false,取消自动播放
        mediaPlayer.Control.Play();//播放视频
    }

 

Andrews establece los extremos de juego:

    public MediaPlayer mediaPlayer;

    void Start()
    {
        //安卓端
        mediaPlayer.PlatformOptionsAndroid.path = "vedioURL";
        mediaPlayer.OpenVideoFromFile(
                   MediaPlayer.FileLocation.AbsolutePathOrURL,
                   mediaPlayer.PlatformOptionsAndroid.path,
                   false);//加载视频
        mediaPlayer.Control.Play();//播放视频
    }

 

1, URL de reproducción de vídeo o de vídeo carpeta local

configuración del Panel

una, SourcePath: ruta absoluta o URL

b, relleno URL de reproducción en: "http://myserver.com/myvideo.mp4" o "rtsp: //myserver.com: 8080 / mystream.rtsp"

Rellene cuando se reproduce el vídeo local:

  • C: /MyFolder/AnotherFolder/MyVideo.mp4 (Windows)
  • /Users/Mike/downloads/MyVideo.mp4(Mac/Linux)
  • /Storage/SD/Videos/MyVideo.mp4(Android SDCARD externo)
  • /Storage/emulated/0/MyFolder/MyVideo.mp4(Android sistema de archivos local)
  • /mnt/sdcard/MyFolder/MyVideo.mp4(Android Oculus Go)

c, comprobar AutoOpen, función de reproducción automática

 

2, jugando con los activos, pares Biblioteca de vídeo

configuración del Panel

a, los activos externos (carpeta extranjero o nuevos activos) para poner el vídeo

b, SourcePath: Relativa Para Proyecto de carpetas, en Examinar para seleccionar el vídeo

c, AutoOpen, función de reproducción automática

 

3, StreamingAssets juego de vídeo

configuración del Panel

una, SourcePath: Relativa Para Transmisión de Activos Carpeta

b, Examinar para seleccionar la carpeta de vídeo correspondientes StreamingAssets

c, comprobar AutoOpen, función de reproducción automática

 

4, dentro del reproductor de vídeo Activos

El video no debe StreamingAssets carpeta.

1) para configurar el panel

una, crear una nueva carpeta en el Activo, poner el vídeo

b, SourcePath: Carpeta de datos relativa a, Navegar respectiva de vídeo

c, AutoOpen, función de reproducción automática

 

5, la reproducción de vídeo progreso de devolución de llamada

//可以通过上面按键绑定,也可通过下面代码绑定监听。
//_mediaPlayer.Events.AddListener(Skode_OnVideoEvent);
   
 public void Skode_OnVideoEvent(MediaPlayer mp, MediaPlayerEvent.EventType et, ErrorCode er)
    {
        switch (et)
        {
            case MediaPlayerEvent.EventType.MetaDataReady:
                Debug.Log("视频数据准备完成。当元数据(宽度,持续时间等)可用时触发");
                break;
            case MediaPlayerEvent.EventType.ReadyToPlay:
                Debug.Log("加载视频并准备播放时触发");
                break;
            case MediaPlayerEvent.EventType.Started:
                Debug.Log("播放开始时触发");
                break;
            case MediaPlayerEvent.EventType.FirstFrameReady:
                Debug.Log("渲染第一帧时触发");
                break;
            case MediaPlayerEvent.EventType.FinishedPlaying:
                Debug.Log("当非循环视频播放完毕时触发");
                break;
            case MediaPlayerEvent.EventType.Closing:
                Debug.Log("媒体关闭时触发");
                break;
            case MediaPlayerEvent.EventType.Error:
                Debug.Log("发生错误时触发");
                break;
            case MediaPlayerEvent.EventType.SubtitleChange:
                Debug.Log("字幕更改时触发");
                break;
            case MediaPlayerEvent.EventType.Stalled:
                Debug.Log("媒体停顿/暂停?时触发(例如,当媒体流失去连接时)-当前仅在Windows平台上受支持");
                break;
            case MediaPlayerEvent.EventType.Unstalled:
                Debug.Log("当介质从停止状态恢复时触发(例如,重新建立丢失的连接时)");
                break;
            case MediaPlayerEvent.EventType.ResolutionChanged:
                Debug.Log("当视频的分辨率改变(包括负载)时触发");
                break;
            case MediaPlayerEvent.EventType.StartedSeeking:
                Debug.Log("寻找开始时触发");
                break;
            case MediaPlayerEvent.EventType.FinishedSeeking:
                Debug.Log("搜索完成时触发");
                break;
            case MediaPlayerEvent.EventType.StartedBuffering:
                Debug.Log("缓冲开始时触发");
                break;
            case MediaPlayerEvent.EventType.FinishedBuffering:
                Debug.Log("缓冲完成后触发");
                break;
            case MediaPlayerEvent.EventType.PropertiesChanged:
                Debug.Log("当任何属性(例如,立体声包装改变)时触发-必须手动触发");
                break;
            case MediaPlayerEvent.EventType.PlaylistItemChanged:
                Debug.Log("在播放列表中播放新项目时触发");
                break;
            case MediaPlayerEvent.EventType.PlaylistFinished:
                Debug.Log("播放列表结束时触发");
                break;
        }

        Debug.Log("Event: " + et.ToString());
    }

 

Publicados 320 artículos originales · ganado elogios 77 · vistas 170 000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_38239050/article/details/104414130
Recomendado
Clasificación