
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (84)
-
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)
Sur d’autres sites (11962)
-
FFMPEG screen grab of windows desktop and then exporting to multiple bandwidth ts and m3u8 files with master playlist
26 juillet 2018, par Tank DanielsForgive me as this is my first post as I’m really stuck and need help. My boss needs me to screen capture a windows desktop as input and be able to output at least four outputs dependent on bandwidth. Each output "Stream"(im guessing is the right terminology) must have its own .ts files and .m3u8 files, along with a master m3u8 playlist that lists the four individual m3u8 files.
Every attempt ive made only produces a master m3u8 file with a single listing of an output stream. (Code enclosed below).
The end result I need to produce is to have a master m3u8 that can go into a webpage that can stream mp4 hls of the users screen grab and that video output will be changed dependant upon the users bandwidth available. If you can please help me with any advice I will be eternally grateful as I need to impress my new boss in my new job, and I’ve been working on this for ages now with no joy.
Example :
This is what I need it to look like.What the M3U8 needs to look like
Example :
This is what it actually looks like now.What the current M3U8 actually looks like when i run my code
Below is the code I am currently using. Please help.
ffmpeg -f dshow -i video="UScreenCapture":audio="virtual-audio-capturer" -master_pl_name master.m3u8 -master_pl_publish_rate 30 -tune fastdecode -vf scale=w=640:h=360:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 800k -maxrate 856k -bufsize 1200k -b:a 96k -hls_segment_filename 360p_%03d.ts 360p.m3u8 -master_pl_name master.m3u8 -master_pl_publish_rate 30 -vf scale=w=842:h=480:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 1400k -maxrate 1498k -bufsize 2100k -b:a 128k -hls_segment_filename 480p_%03d.ts 480p.m3u8 -master_pl_name master.m3u8 -master_pl_publish_rate 30 -vf scale=w=1280:h=720:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 2800k -maxrate 2996k -bufsize 4200k -b:a 128k -hls_segment_filename 720p_%03d.ts 720p.m3u8 -master_pl_name master.m3u8 -master_pl_publish_rate 30 -vf scale=w=1920:h=1080:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 5000k -maxrate 5350k -bufsize 7500k -b:a 192k -hls_segment_filename 1080p_%03d.ts 1080p.m3u8
Many Thanks for looking. Chris.
-
FFMPEG - How to transcode and segment to multiple bitrates ?
25 juillet 2014, par ipegasusI would like to know how to use FFMPEG to transcode video (Prores codec) and segment videos to multiple bitrates. Is it possible to do it in one command ?
Current working solution with X264 :
-
Encode Videos Using X264.
/home/ubuntu/bin/ffmpeg -y -i "$video_path" -threads 1 -f mpegts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile baseline -x264opts "fps=12:keyint=36:bitrate=200" -s 416x234 "$DIR_VIDEO_OUTPUT/$filename"/p1.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile baseline -x264opts "fps=12:keyint=36:bitrate=400" -s 480x270 "$DIR_VIDEO_OUTPUT/$filename"/p2.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile baseline -x264opts "fps=24:keyint=72:bitrate=600" -s 640x360 "$DIR_VIDEO_OUTPUT/$filename"/p3.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile baseline -x264opts "fps=24:keyint=72:bitrate=1200" -s 640x360 "$DIR_VIDEO_OUTPUT/$filename"/p4.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile main -x264opts "fps=24:keyint=72:bitrate=1800" -s 960x540 "$DIR_VIDEO_OUTPUT/$filename"/p5.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile main -x264opts "fps=24:keyint=72:bitrate=2500" -s 960x540 "$DIR_VIDEO_OUTPUT/$filename"/p6.ts \
-acodec libfaac -ab 64k -ar 44100 -vcodec libx264 -vprofile main -x264opts "fps=24:keyint=72:bitrate=4500" -s 1280x720 "$DIR_VIDEO_OUTPUT/$filename"/p7.ts -
Using an extrenal segmenter
cd $DIR_VIDEO_OUTPUT/$filename
mkdir M3U8
for p in p1 p2 p3 p4 p5 p6 p7 ; do mkdir $DIR_VIDEO_OUTPUT/$filename/M3U8/$p.seg ; (cd M3U8 ; m3u8-segmenter —input $DIR_VIDEO_OUTPUT/$filename/$p.ts —duration 7 —output-prefix $p.seg/$p —m3u8-file $p.m3u8 —url-prefix "") ; done -
And finally manualy the individual playlists are joined into one
echo ’
EXTM3U
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=264000,RESOLUTION=416x234
p1.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=464000,RESOLUTION=480x270
p2.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=664000,RESOLUTION=640x360
p3.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1264000,RESOLUTION=640x360
p4.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1864000,RESOLUTION=960x540
p5.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2564000,RESOLUTION=960x540
p6.m3u8
EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=4564000,RESOLUTION=1280x720
p7.m3u8’ >> $filename.m3u8
cd "$DIR_VIDEO_OUTPUT/$filename"/
sudo rm *.ts
-
-
Using lcov With FFmpeg/Libav
Last year, I delved into code coverage tools and their usage with FFmpeg. I learned about using GNU gcov, which is powerful but pretty raw about the details it provides to you. I wrote a script to help interpret its output and later found another script called gcovr to do the same, only much better.
I later found another tool called lcov which is absolutely amazing for understanding code coverage of your software. I’ve been meaning to use it to further FATE test coverage for the multimedia projects.
Click for larger image
Basic Instructions
Install the lcov tool, of course. In Ubuntu,'apt-get install lcov'
will do the trick.Build the project with code coverage support, i.e.,
./configure —enable-gpl —samples=/path/to/fate/samples \ —extra-cflags="-fprofile-arcs -ftest-coverage" \ —extra-ldflags="-fprofile-arcs -ftest-coverage" make
Clear the coverage data :
lcov —directory . —zerocounters
Run the software (in this case, the FATE test suite) :
make fate
Let lcov work its magic :
lcov —directory . —capture —output-file coverage.info mkdir html-output genhtml -o html-output coverage.info
At this point, you can aim your web browser at html-output/index.html to learn everything you could possibly want to know about code coverage of the test suite. You can sort various columns in order to see which modules have the least code coverage. You can drill into individual source files and see highlighted markup demonstrating which lines have been executed.
As you can see from the screenshot above, FFmpeg / Libav are not anywhere close to full coverage. But lcov provides an exquisite roadmap.