Sha256: 712d4980a0c1191e6385d0f4f7e1a35e3a9c4d7aa92d8f37e84cf70e666fee9c
Contents?: true
Size: 1.52 KB
Versions: 2
Compression:
Stored size: 1.52 KB
Contents
--- --- {% comment %} TODO: Asignar esta variable una sola vez! {% endcomment %} {%- assign radio = site.posts | find: 'layout', 'radio' -%} {% turbolinks %} // Inicia y gestiona el stream const streaming = (element) => { // Cambiar el src para que incluya un timestamp, esto engaña a Firefox // a recargar el video cuando se corta en lugar de pensar que terminó // la descarga y empezar a reproducir desde el principio. element.querySelectorAll('source').forEach(source => { // Obtener la URL completa hasta el ? source.src = source.src.split('?')[0]+'?'+Date.now().toString() }) // Empezar la reproducción element.load() element.play() } // Este es el evento que espera a que cargue todo el sitio document.addEventListener('turbolinks:load', () => { const transmission = document.querySelector('#transmission') if ('mediaSession' in navigator) { navigator.mediaSession.metadata = new MediaMetadata({ title: "{{ radio.description | escape }}", artist: "{{ radio.title | escape }}", artwork: [ { src: '{{ radio.logo.path | thumbnail: 192 }}', sizes: '192x192', type: 'image/{{ radio.logo.path | split: '.' | last }}' }, ], }) navigator.mediaSession.setActionHandler('play', () => transmission.play()) navigator.mediaSession.setActionHandler('pause', () => transmission.pause()) } // Volver a reproducir cuando se corte // TODO: Agregar los tracks transmission.addEventListener('ended', event => streaming(transmission)) })
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
radios-comunitarias-jekyll-theme-0.1.1 | assets/js/script.js |
radios-comunitarias-jekyll-theme-0.1.0 | assets/js/script.js |