Mantener la velocidad de reproducción en los vídeos [Solucionado]

2 respuestas
20/03/2021 16:09
1
Al3x
Cash Project
Nivel 35
621 mensajes
7 premiados

Buenas,

He programado un pequeño script para mantener la velocidad de reproducción en los vídeos de Educa 5.0.

Hasta ahora, cuando cambiabas la velocidad de reproducción del vídeo y lo pausabas, al reanudar el vídeo, la velocidad se cambiaba a la de por defecto (x1). No es un gran problema, pero para los que pausamos muchas veces el vídeo para tomar apuntes y tal puede llegar a ser un poco molesto. Y ya había leído varias quejas al respecto en el hilo de Fallos de la 5.0.

Para solucionarlo tendréis que seguir unos pequeños pasos:

  • Tienes que instalar una extensión del navegador llamada TaperMonkey, es muy conocida. Sirve para ejecutar scripts hechos por los usuarios en una web.

  • Una vez instalada, te debería salir un icono arriba a la derecha del navegador como el que he señalado en rojo:

  • Si no te sale ese icono es porque la extensión está oculta. Haz click justo en el icono del puzle que está justo a la derecha y ahí aparecerán todas las extensiones que tienes instaladas.
  • Haz click en la extensión. Te aparecerá un menú. Le das a "Agregar nuevo script":

  • Te saldrá algo tal que así:

  • Borra todo y pega el siguiente texto tal cual:
// ==UserScript==
// @name         Educa video speed keeper
// @namespace    https://www.educapoker.com/
// @version      0.1
// @description  Maintains educa video speed after play/pause
// @author       Al3x
// @match        https://www.educapoker.com/*
// @grant        none
// ==/UserScript==

(function () {
  window.setTimeout(init, 5000)

  function init() {
    console.log('Running Educa video speed keeper')

    const playBtn = document.querySelector('.shaka-small-play-button')
    const speedBtns = document.querySelectorAll('.shaka-settings-menu')[1]
    setSpeed()

    /** Observe play/pause */
    const observerPlay = new MutationObserver(mutationRecords => {
      let mutation = mutationRecords[0]
      if (mutation && mutation.addedNodes[0].textContent === 'pause') {
        setSpeed()
      }
    })
    observerPlay.observe(playBtn, { childList: true })

    /** Observe speed change */
    speedBtns.addEventListener('click', e => {
      if (e.isTrusted) {
        for (let i = 0; i < speedBtns.children.length; i++) {
          if (speedBtns.children[i].textContent === e.target.textContent) {
            window.localStorage.setItem('educaVideoSpeed', i)
          }
        }
      }
    })

    /** Set video speed */
    function setSpeed() {
      if (window.localStorage.getItem('educaVideoSpeed')) {
        speedBtns.children[window.localStorage.getItem('educaVideoSpeed')].click()
      }
    }
  }
})();

 

  • Pulsa Ctrl + S para guardar el script
  • Refresca la página de Educa (F5)

Y ya debería estar solucionado el tema. La velocidad de reproducción que selecciones se quedará guardada en tu navegador y la recordará para la próxima vez que inicies un vídeo.

Cualquier problema me comentáis. Espero que os sirva.

Un saludo!

PD: para los que sepáis programar, si queréis aportar cualquier mejora es bien recibida :)

 
22/03/2021 01:44
MarioTala…
Cash Project
Nivel 49
1.680 mensajes
92 premiados

No soy de aumentar la velocidad de los videos así que no creo que lo use pero te felicito y aplaudo por el curro y compartirlo.

22/03/2021 10:38
Al3x
Cash Project
Nivel 35
621 mensajes
7 premiados
MarioTala…

22/03/2021 01:44

No soy de aumentar la velocidad de los videos así que no creo que lo use pero te felicito y aplaudo por el curro y compartirlo.

Gracias, se me da bien eso de procrastinar. 

Responder

¿Quieres participar?
Inicia sesión o crea tu cuenta gratis para formar parte de la comunidad de EducaPoker.