
Recherche avancée
Autres articles (60)
-
Demande de création d’un canal
12 mars 2010, parEn fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...) -
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (7884)
-
Use MANGLE in cavsdsp.c to save two registers using gcc.
19 avril 2014, par Carl Eugen Hoyos -
Revision 4c05a051ab : Move qcoeff, dqcoeff from BLOCKD to per-plane data Start grouping data per-plan
2 avril 2013, par John KoleszarChanged Paths : Modify /vp9/common/vp9_blockd.h Modify /vp9/common/vp9_invtrans.c Modify /vp9/common/vp9_mbpitch.c Modify /vp9/common/vp9_rtcd_defs.sh Modify /vp9/decoder/vp9_decodframe.c Modify /vp9/decoder/vp9_dequantize.c Modify /vp9/decoder/vp9_dequantize.h (...)
-
How to save ffmpeg segmets to disk immediately with sub-second intervals ?
20 octobre 2023, par amfastI'm trying to record video on a raspberry and have it save as much as possible (sub-second resolution) in case of a power cutoff.


I use
-f segment
to save the encoded stream in 100ms segments with the hope that all but the interrupted (by power cutoff) segment will be saved in memory. Unfortunately, when cutting off power, all the destination files (output_0001.mp4, output_0002.mp4, ...) are created, but empty.

To save the files to disk immediately, I added the
-strftime 1
option that allows formatting the output filename as time. It seems weird that this is the (only ?) way to trigger immediate saving of files, but it works - untill I try to have segments smaller than 1 second. The problem seems to be that the format string%d
, that previously added a sequence number in my output filenames, now represents "day" (i.e. date) and the smallest resolution time format string is%S
for second. I saw%f
suggested somewhere for smaller resolutions, but it only prints "%f".

The result is that the
segment
ation part of ffmpeg does create 100ms segments and save them to disk immediately, but thestrftime
feature gives the output files names that only change every second, so all the interim files are overwritten.

Example of the failing command below. Without the
-strftime
option this creates nice segments, but does not save them to disk immediately.

libcamera-vid --flush \
 --framerate ${FRAMERATE} \
 --width ${WIDTH} \
 --height ${HEIGHT} \
 -n \
 -t ${TIMEOUT} \
 --codec yuv420 \
 -o - | 
ffmpeg \
 -fflags nobuffer \
 -strict experimental \
 -loglevel debug \
 -flags low_delay \
 -f rawvideo \
 -pix_fmt yuv420p \
 -s:v ${WIDTH}x${HEIGHT} \
 -r ${FRAMERATE} \
 -i - \
 -c:v h264_v4l2m2m \
 -f segment \
 -segment_time 0.1 \
 -segment_format mp4 \
 -reset_timestamps 1 \
 -strftime 1 \
 -b:v ${ENCODING_BITRATE} \
 -g 1 \
 "output_%04d.mp4"



Question :

Is there another way besides-strftime
to trigger immediate saving ? Or is there a mechanism to feed finer resolution format strings to the output filename ?