demo-progreestips-multicolors.html 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. <!DOCTYPE html>
  2. <html lang="es">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Reproductor LibreVideoJS basado en VideoJS v4.3.</title>
  8. <link rel="author" type="text/plain" href="humans.txt">
  9. <!-- Favicon Libre -->
  10. <link rel="shortcut icon" href="./images/gnu-linux_libre.png">
  11. <!-- Normalizador -->
  12. <link href="./css/normalize.css" rel="stylesheet" type="text/css">
  13. <!--Begin | Estilos de la Página -->
  14. <style>
  15. body {
  16. background-color: #141517;
  17. color: white;
  18. }
  19. .change_color {
  20. text-align: center;
  21. }
  22. .change_color input[type='Button'] {
  23. display: inline-block;
  24. border-style: none;
  25. cursor: pointer;
  26. font-size: 12px;
  27. text-align: center;
  28. margin-top: 10px;
  29. padding: 5px 10px;
  30. }
  31. .change_color input[onclick="multiColor('teal');"] {
  32. background-color: #2ecc71;
  33. }
  34. .change_color input[onclick="multiColor('blue');"] {
  35. background-color: #3498db;
  36. }
  37. .change_color input[onclick="multiColor('yellow');"] {
  38. background-color: #f1c40f;
  39. }
  40. .change_color input[onclick="multiColor('red');"] {
  41. background-color: #e74c3c;
  42. }
  43. .change_color input[onclick="multiColor('purple');"] {
  44. background-color: #9b59b6;
  45. }
  46. .change_color input[onclick="multiColor('grey');"] {
  47. background-color: #9e9e9e;
  48. }
  49. h1,
  50. h2,
  51. h3 {
  52. text-align: center;
  53. }
  54. a {
  55. text-decoration: none;
  56. color: #189e7d;
  57. }
  58. a:hover {
  59. color: #1de9b6;
  60. }
  61. .clase1 {
  62. margin: 20px;
  63. }
  64. p,
  65. .clase2 {
  66. margin: 20px;
  67. }
  68. footer {
  69. background-color: #1e1b1f;
  70. text-align: center;
  71. margin: 20px;
  72. padding: 10px;
  73. }
  74. </style>
  75. <!-- Ending | Estilos de la Página -->
  76. <!-- Begin | LibreVideoJS -->
  77. <!-- LibreVideoJS ProggresTips -->
  78. <link rel="stylesheet" href="./css/proggrestips/proggrestips.css">
  79. <!-- LibreVideoJS Quality -->
  80. <link rel="stylesheet" href="./css/selector/video-quality-selector.css">
  81. <script>
  82. /*
  83. @licstart The following is the entire license notice for the
  84. JavaScript code in this page.
  85. Copyleft 2017 Jesús Eduardo.
  86. The JavaScript code in this page is free software: you can
  87. redistribute it and/or modify it under the terms of the GNU
  88. General Public License (GNU GPL) as published by the Free Software
  89. Foundation, either version 3 of the License, or (at your option)
  90. any later version. The code is distributed WITHOUT ANY WARRANTY;
  91. without even the implied warranty of MERCHANTABILITY or FITNESS
  92. FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
  93. As additional permission under GNU GPL version 3 section 7, you
  94. may distribute non-source (e.g., minimized or compacted) forms of
  95. that code without the copy of the GNU GPL normally required by
  96. section 4, provided you include this license notice and a URL
  97. through which recipients can access the Corresponding Source.
  98. @licend The above is the entire license notice
  99. for the JavaScript code in this page.
  100. */
  101. </script>
  102. <!-- LibreVideoJS Estilos -->
  103. <script>
  104. var filename = "./css/mix-material/mix-teal.css";
  105. var _color = location.search.split('color=')[1];
  106. if (_color != undefined && _color != "" && _color != "teal")
  107. filename = "./css/mix-material/mix-" + _color + ".css";
  108. var fileref = document.createElement("link");
  109. fileref.setAttribute("rel", "stylesheet");
  110. fileref.setAttribute("type", "text/css");
  111. fileref.setAttribute("href", filename);
  112. document.getElementsByTagName("head")[0].appendChild(fileref);
  113. </script>
  114. <!-- LibreVideoJS JavaScript -->
  115. <script src="./js/cliplibrejs.developer.js"></script>
  116. <!-- Ending | LibreVideoJS -->
  117. </head>
  118. <body>
  119. <header>
  120. <h1>Reproductor LibreVideoJS</h1>
  121. </header>
  122. <section>
  123. <h2>Demo con la funcionalidad de ProgressTips | Requiere jQuery</h2>
  124. <article class="clase1">
  125. <h3>Vídeo de Software Libre</h3>
  126. <video id="example" controls="controls" preload="none" poster="./images/poster.jpg" data-setup="{}">
  127. <source data-res="original" src="https://archive.org/download/libre848x476/libre640x480.ogv" type="video/ogg">
  128. <source data-res="480p" src="https://archive.org/download/libre848x476/libre848x476.ogv" type="video/ogg">
  129. <source data-res="240p" src="https://archive.org/download/libre848x476/libre320x240.ogv" type="video/ogg">
  130. <source data-res="144p" src="https://archive.org/download/libre848x476/libre256x144.ogv" type="video/ogg">
  131. <track kind="captions" src="./subtitles/libre_en.vtt" srclang="en" label="English">
  132. <track kind="captions" src="./subtitles/libre_es.vtt" srclang="es" label="Español" default="">
  133. <track kind="subtitles" src="./subtitles/libre_en.vtt" srclang="en" label="English">
  134. <track kind="subtitles" src="./subtitles/libre_es.vtt" srclang="es" label="Español">
  135. <p class="no_html5">Lo siento, este navegador no soporta HTML 5. Por favor, cambia o actualiza tu navegador Web</p>
  136. </video>
  137. <div class="change_color">
  138. <input type="Button" onclick="multiColor('teal');" value="teal">
  139. <input type="Button" onclick="multiColor('blue');" value="blue">
  140. <input type="Button" onclick="multiColor('yellow');" value="yellow">
  141. <input type="Button" onclick="multiColor('red');" value="red">
  142. <input type="Button" onclick="multiColor('purple');" value="purple">
  143. <input type="Button" onclick="multiColor('grey');" value="grey">
  144. </div>
  145. </article>
  146. </section>
  147. <p>Conferencia de Richard M. Stallman en Retina | España</p>
  148. <p>Puede: <a href="https://archive.org/download/libre848x476/libre640x480.ogv" download="Conferencia-de-Richard-M.-Stallman-en-Retina-España" target="_blank">Descargar el vídeo</a></p>
  149. <aside class="clase2">
  150. <h3>¿Qué es el software Libre?</h3>
  151. <blockquote cite="https://www.gnu.org/home.es.html">
  152. <p>
  153. Software libre significa que los usuarios tienen la libertad de ejecutar, copiar, distribuir, estudiar, modificar y mejorar el software.
  154. </p>
  155. <p>
  156. El software libre es una cuestión de libertad, no de precio. Para entender el concepto, debe pensarse en «Libre» como en «Libertad de expresión», no como en «cerveza gratis».
  157. </p>
  158. </blockquote>
  159. </aside>
  160. <!-- Quality Selector + Hotkeys + ProgreesTips + Cambio de Colores-->
  161. <script type="text/javascript">
  162. // Insert class base
  163. var estilos = document.getElementById("example");
  164. estilos.className += " cliplibre-js-responsive-container librevjs-hd cliplibre-js librevjs-libre-mix-skin";
  165. // funciones
  166. cliplibrejs('#example', {
  167. plugins: {
  168. resolutionSelector: {
  169. force_types: ['video/webm', 'video/ogg'],
  170. default_res: "480p",
  171. }
  172. },
  173. nativeControlsForTouch: false
  174. }).ready(function(){
  175. this.hotkeys({
  176. volumeStep: 0.1,
  177. seekStep: 5,
  178. enableMute: true,
  179. enableFullscreen: true,
  180. enableNumbers: true,
  181. }),/*ProgressTips*/
  182. this.progressTips();
  183. });
  184. function multiColor(_color) {
  185. history.replaceState({}, '', '?color=' + _color);
  186. location.reload();
  187. };
  188. </script>
  189. <!--
  190. Abajo ↓ : Códigos individuales
  191. -->
  192. <!-- Quality Selector -->
  193. <!--
  194. <script type="text/javascript">
  195. cliplibrejs('#example', {
  196. plugins: {
  197. resolutionSelector: {
  198. force_types: ['video/webm', 'video/ogg'],
  199. default_res: "480p"
  200. }
  201. },
  202. nativeControlsForTouch: false
  203. }); /*Cambio de colores*/
  204. function multiColor(_color) {
  205. history.replaceState({}, '', '?color=' + _color);
  206. location.reload();
  207. };
  208. </script>
  209. -->
  210. <!-- Hotkeys -->
  211. <!--
  212. <script>
  213. // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
  214. cliplibrejs('#example').ready(function() {
  215. this.hotkeys({
  216. volumeStep: 0.1,
  217. seekStep: 5,
  218. enableMute: true,
  219. enableFullscreen: true,
  220. enableNumbers: true
  221. });
  222. });
  223. // @license-end
  224. </script>
  225. -->
  226. <!-- ProgressTips -->
  227. <!--
  228. <script>
  229. // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
  230. cliplibrejs( '#example', {}, function() {this.progressTips();} );
  231. // @license-end
  232. </script>
  233. -->
  234. <footer>
  235. Basado en VideoJS, depurado y escrito por Jesús Eduardo en el año 2016 - <span id="year"></span>.
  236. </footer>
  237. <!-- Script NO necesario | solo para la fecha -->
  238. <script src="./js/fecha.js"></script>
  239. <!-- jQuery 3.1.1 requerido por LibreVideoJS ProggresTips -->
  240. <script src="./js/jquery-3.1.1.js"></script>
  241. </body>
  242. </html>