Blockchain Door Películas
Http Live Streaming - HLS con ffmpeg
Youtube-dl Powered
DescargarReload Cine mode

El vídeo no tiene sonido pero funciona perfectamente en la transmisión
Servidor web como Live Stream usando ffmpeg
Se accede como root por ssh al servidor
se instala ffmpeg
Se añaden addTypes .m3u8 y .ts al servidor
Se hace cd sobre el directorio web donde queremos la salida para HTML5 video src


root@h2883015:~# cd /var/www/vhosts/compostela21.com/vtwitt.com/tv


en ese directorio, como root, se ejecuta el comando ffmpeg sobre el archivo o dispositivo, generando los archivos ts y m3u8 que se especifica en el comando.


Comenzamos la Transmisión con ffmpeg

ffmpeg -i "/var/www/tv/video/v.mp4" -strict experimental -sn -ac 2 -map_metadata -1 -s 640x360 -g 250 -c:v libx264 -pix_fmt yuv420p -flags -global_header -hls_time 10 -hls_list_size 5 -hls_wrap 12 -hls_flags delete_segments -f hls -strftime 1 -segment_time 10 -segment_format mpegts -segment_list_flags +live -hls_allow_cache 0 -segment_wrap 12 -segment_list_size 5 -hls_segment_filename live_0_%02d.ts play.m3u8


Ahora ya se ha generado play.m3u8 sobre el directorio https de salida a y se recoge así en HTML5/Js en este caso https://vtwitt.com/pruebas.php

código html/javascript


<video id="video">
</video>

<script src="https://www.dontubes.com/hls.js/dist/hls.js">

</script>

<script type="text/javascript">
var video = document.getElementById("video");
var m3u8=1;
var videoType = "application/x-mpegURL"
var videoSrc = "https://vtwitt.com/tv/play.m3u8";


if(Hls.isSupported() && (m3u8 || f4m || m3u || mpd)) {
var hls = new Hls();
hls.loadSource(videoSrc);
hls.attachMedia(video);
video.type=videoType
hls.on(Hls.Events.MANIFEST_PARSED,function() {
video.muted = true
});

}

function adds(v, src, type) {
v.src = src;
v.type=type
v.muted=true;
v.play();
}

adds('video',videoSrc,videoType);

</script>
En este ejemplo se captura como input un vídeo pero igualmente
puede ser un dispositivo como una webcam v4l2 video0