
Recherche avancée
Médias (1)
-
The Great Big Beautiful Tomorrow
28 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Texte
Autres articles (2)
-
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...) -
Déploiements possibles
31 janvier 2010, parDeux types de déploiements sont envisageable dépendant de deux aspects : La méthode d’installation envisagée (en standalone ou en ferme) ; Le nombre d’encodages journaliers et la fréquentation envisagés ;
L’encodage de vidéos est un processus lourd consommant énormément de ressources système (CPU et RAM), il est nécessaire de prendre tout cela en considération. Ce système n’est donc possible que sur un ou plusieurs serveurs dédiés.
Version mono serveur
La version mono serveur consiste à n’utiliser qu’une (...)
Sur d’autres sites (2814)
-
Creating a live, updating video stream with ffmpeg
15 avril 2020, par MattJHoughtonI've set up a data stream from my webcam using the
MediaSource
api and set it to send data from my webcam in webm format, every 4 seconds. I then grab that on a node server, usecreateWriteStream
to set up a pipe and start streaming !


I'm stuck at converting the media from webm to a live m3u8. Below is the ffmpeg command I'm running (It's been through numerous iterations as I've tried things from the docs).



const cmd = `ffmpeg
 -i ${filepath}
 -profile:v baseline
 -level 3.0
 -s 640x360 -start_number 0
 -hls_time 10
 -hls_list_size 0
 -hls_flags append_list
 -hls_playlist_type event
 -f hls ${directory}playlist.m3u8`

 const ls = exec(cmd.replace(/(\r\n|\n|\r)/gm," "), (err, stdout, stderr) => {
 if(err) {
 console.log(error);
 }

 })




I can't remove the
#EXT-X-ENDLIST
at the end of the playlist, to keep the stream live for my web players, so when I hit play - the video plays the playlist in its current state and stops at the end.


Thanks



UPDATE



This may be a quality/speed issue. When I reduced the quality down to ;



const cmd = `ffmpeg
 -i ${filepath}
 -vf scale=w=640:h=360:force_original_aspect_ratio=decrease
 -profile:v main
 -crf 51
 -g 48 -keyint_min 48
 -sc_threshold 0
 -hls_time 4
 -hls_playlist_type event
 -hls_segment_filename ${directory}720p_%03d.ts
 ${directory}playlist.m3u8




I was able to get a pixelated live video. However, it quickly crashed... Maybe this is not possible in Node/Web Browsers yet ?


-
nginx live adaptive bitrate streaming :- not able to switch quality manuallly ?
15 juin 2021, par Ashad NasimI am using Nginx for live adaptive bitrate streaming. My live streaming is working fine.
Also, the chunks are getting created and the master playlist is also getting created as you can see in this image.


My config



 application live {
 live on; # Allows live input

 
 exec_push /usr/bin/ffmpeg -i rtmp://localhost:1935/$app/$name
 -force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 640x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_hi
 -force_key_frames "expr:gte(t,n_forced*3)" -c:v libx264 -vprofile baseline -vlevel 3.1 -s 240x360 -b:v 1200k -strict -2 -c:a aac -ar 44100 -ac 2 -b:a 96k -f flv rtmp://localhost/show/$name_low;

 
 }






This is my master playlist



This is my each playlist m3u8 file



But when I point the master playlist to the videojs (hlsjs) added it is showing the quality


- 

- auto
- undefinedp






But when I use some other test stream from online then it is showing me all available quality


using my live stream generated using nginx ffmpeg







-
Live streaming webvtt subtitles with HLS protocol
5 mai, par Victor RuizI need a tool to generate HLS subtitles in live mode. Specifically, I want to create an HTTP server that serves .m3u8 and .webvtt files which are continuously updated over time.
Such HLS stream could be consumed via HTTP requests by HLS JS/ffplay multimedia players.


The .webvtt files will be generated by an automatic transcriber, so the program must update the .m3u8 playlist accordingly whenever a new subtitle is produced.


I only want to stream subtitle channels—no audio. The video channel can simply display a black chroma background.


I attempted to use FFmpeg with a Linux pipe as input for the streaming .webvtt subtitles, along with a video file for the video stream. The output .webvtt and .m3u8 files were written to a folder and served via an NGINX server. However, FFmpeg fails after it reads the initial content of the .webvtt input from the pipe. If I inject more content afterward, it gets skipped.


How can I achieve HLS subtitle streaming in live mode ? Can FFmpeg be used for this purpose, or do I need a different tool ?