Si se desea brindar un reproductor en html5 con más funcionalidades (subtítulos por ejemplo) y posibilidad de personalizarlo al gusto, podemos hacer uso de video-js, aunque hay muchos otros [[http://html5video.org/wiki/HTML5_Video_Player_Comparison|reproductores html5]] disponibles.
* **Web del proyecto**: [[http://videojs.com/]]
* **Descargas**: [[https://github.com/videojs/video.js/releases]]
* **Formato para los vídeos**: mp4 (h264/acc MP4), webm (VP8 o VP9 / Vorbis), ogg y mkv (por ahora solo chrome con type='video/webm')
Descargar el fichero .zip de la última versión y descomprimirlo en una carpeta.
mkdir webvideos
cd webvideos/
unzip ../video-js-v5.12.2.zip
Crear el fichero index.html dentro para utilizar el archivo de vídeo "fichero.mp4".
NOTA: Se pueden incluir múltiples archivos para que el navegador elija el que más le convenga, por norma se ofertan casi siempre el mp4 y webm.
Ahora se puede trasladar la carpeta webvideos o su contenido a cualquier servidor web o arrancar simplemente uno con la terminal ([[servidor_web_por_linea_de_comandos|Leer]]).
python3 -m http.server 8000
**URL**: http://localhost:8000
**Transformar videos a mp4 (h264/acc MP4) y a webm (recomendado para html5)con ffmpeg**.
* **Contenedor MP4 para html5**: Vídeo //avc1.42E01E// (avc1 indica H.264) Audio: //mp4a.40.2// (mp4a.40.2 indica AAAC LC).
* **Contenedor WebM**: Vídeo: //VP8// o //VP9// Audio: //Vorbis//.
# MP4.
ffmpeg -i video.xx -threads 1 -c:v libx264 -c:a aac -preset slow video.mp4
# WEBM (VP8): https://trac.ffmpeg.org/wiki/Encode/VP8
ffmpeg -i video.xx -threads 1 -c:v libvpx -crf 10 -b:v 1M -c:a libvorbis video.webm
# WEBM (VP9): https://trac.ffmpeg.org/wiki/Encode/VP9 / http://wiki.webmproject.org/ffmpeg/vp9-encoding-guide
ffmpeg -i video.xx -threads 1 -c:v libvpx-vp9 -crf 10 -b:v 0 -c:a libvorbis video.webm
# NOTA: Adaptar el parámetro "-threads" con el número de CPUs -1.
Algunos contenedores, como los mov pueden ser compatibles en codecs y solo haría falta cambiar de contenedor sin recodificar.
ffmpeg -i video.mov -vcodec copy -acodec cop video.mp4
NOTA: Con "ffprobe" o simplemente "ffmpeg -i fichero.xx" se puede obtener información sobre los codecs usados por un determinado fichero (contenedor). Es bueno comprobar siempre que el fichero mp4 contiene los "streams" en la codificación compatible antes de usarlo en el reproductor html5.
* **Comparativa de reproductores HTML5**: [[http://html5video.org/wiki/HTML5_Video_Player_Comparison]]
* **Conceptos básicos sobre vídeo en html5**: [[http://www.html5rocks.com/en/tutorials/video/basics/]]