Solución a la falta de Picture in Picture de Youtube en iOS 11

Safari dispone de la opción para mostrar contenidos a pantalla completa y en modo “picture in picture”. Que Google lo elimine de Youtube no es ningún problema para seguir usándolo.

Solución a la falta de Picture in Picture de Youtube en iOS 11

Con la llegada de iOS 11.3 me di cuenta rápidamente que la opción de PiP (Picture in Picture o Imagen dentro de Imagen) de los vídeos de Youtube cuando se ven fuera de la aplicación había desaparecido, simplemente el botón ya no estaba allí.

Cuando quiero tener un vídeo de fondo mientras hago otras cosas voy a la aplicación de Youtube y a través de Workflow cargo el vídeo en un HTML dentro de Safari, recordemos que en España todavía no hay manera oficial de escuchar un vídeo mientras la aplicación está en segundo plano. Ahora ya dentro de Safari en el vídeo aparecía el , botón de PiP.

Recordé que Safari había implementado una llamada a su API a través de JavaScript para utilizar una visualización concreta en ciertos elementos del HTML y que es lo que utilizaba Youtube. Así que en una búsqueda rápida por Google no me hizo falta ni llegar a la documentación de Apple, en Cult of Mac ya me daban la solución.

Hay que añadir un marcador y luego editarlo

La idea es utilizar un marcador para ejecutar un pequeño snippet de Javascript que haga la magia. El procedimiento es muy sencillo, solo hay que añadir cualquier web a los marcados, después editar el marcador y modificar el campo de la URL con alguno de estos trozos de código.

Pantalla completa:

javascript:document.querySelector("video").webkitEnterFullScreen ();

Picture in Picture:

javascript:document.querySelector("video").webkitSetPresentationMode("picture-in-picture");

Hecho esto hay que acceder a cualquier vídeo de Youtube desde Safari y pulsar el marcador deseado. En ese momento el vídeo cambiará de visualización.