¿Cómo hacer que mplayer o VLC comiencen a reproducir video en un horario estricto?

¿Cómo hacer que mplayer o VLC comiencen a reproducir video en un horario estricto?

Quiero que mplayer y VLC comiencen a reproducirse en el momento exacto. El jugador debe:

  1. Cargue el archivo de video, guárdelo en buffer, prepare todo;
  2. Espere a que el tiempo de UNIX sea N segundos M milisegundos
  3. Empieza a jugar según la velocidad de fotogramas (sin desviaciones a largo plazo)

¿Cómo es mejor lograr esto?

Respuesta1

Puede utilizar un FIFO como entrada en MPlayer e iniciar la reproducción en el momento especificado.

Copio y pego algunos ejemplos de código mínimo que usé en un script hace años y que se usaban para omitir videos por razones de scripting.

  1. Crea una FIFO:

    [ ! -p /tmp/mplayer-fifo ] && mkfifo /tmp/mplayer-fifo
    
  2. Inicie MPlayer con, por ejemplo

    mplayer myfile.avi -input /tmp/mplayer-fifo
    
  3. Envíe el comando de salto desde otro script con

    echo "seek 10" > /tmp/mplayer-fifo
    

En su lugar, puedes usar FIFO para iniciar y pausar el video. Úselo atpara ejecutar el comando de reproducción en un momento específico.

Si el vídeo se inicia y luego se pausa inmediatamente y luego simplemente espera la "play"directiva, entonces se debe evitar todo almacenamiento en búfer.

información relacionada