
Recherche avancée
Autres articles (72)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Configuration spécifique d’Apache
4 février 2011, parModules spécifiques
Pour la configuration d’Apache, il est conseillé d’activer certains modules non spécifiques à MediaSPIP, mais permettant d’améliorer les performances : mod_deflate et mod_headers pour compresser automatiquement via Apache les pages. Cf ce tutoriel ; mode_expires pour gérer correctement l’expiration des hits. Cf ce tutoriel ;
Il est également conseillé d’ajouter la prise en charge par apache du mime-type pour les fichiers WebM comme indiqué dans ce tutoriel.
Création d’un (...) -
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...)
Sur d’autres sites (6520)
-
Evolution #2798 : Notification mise à jour SPIP
9 avril 2015, par b bEt hop, voici le patch à jour avec la proposition de Cedric.
Reste à améliorer le lien. Je pense qu’on pourrait mettre en place sur spip.net une page dont le fonctionnement serait similaire à celle des téléchargements avec une url comme http://www.spip.net/fr_update
Pour cela, il faut créer un article en fr (pour commencer) qui reprend les propositions de Nicolas par ici :
http://www.spip.net/ecrire/?exec=rubrique&id_rubrique=151
Puis modifier le squelette pour qu’il prenne en charge l’url /xx_update par ici :
Ça vous semble convenable ? gogogo ?
-
Updated the Zip.php to reflect the latest version from PHPZip with changes for added compatibility to for instance the Mac OSX Archive Utility.
10 mars 2012, par Asbjørn Grandtm Zip.php Updated the Zip.php to reflect the latest version from PHPZip with changes for added compatibility to for instance the Mac OSX Archive Utility.
-
How to get the latest frames in ffmpeg, not the next frame
6 novembre 2014, par LawfulEvilI have an application which connects to an RTSP camera and processes some of the frames of video. Depending on the camera resolution and frame rate, I don’t need to process all the frames and sometimes my processing takes a while. I’ve designed things so that when the frame is read, its passed off to a work queue for another thread to deal with. However, depending on system load/resolution/frame rate/network/file system/etc, I occasionally will find cases where the program doesn’t keep up with the camera.
I’ve found that with ffmpeg(I’m using the latest git drop from mid october and running on windows) that being a couple seconds behind is fine and you keep getting the next frame, next frame, etc. However, once you get, say, 15-20 seconds behind that frames you get from ffmpeg occasionally have corruption. That is, what is returned as the next frame often has graphical glitches (streaking of the bottom of the frame, etc).
What I’d like to do is put in a check, somehow, to detect if I’m more than X frames behind the live stream and if so, flush the caches frames out and start fetching the latest/current frames.
My current snippet of my frame buffer reading thread (C++) :
while(runThread)
{
av_init_packet(&(newPacket));
int errorCheck = av_read_frame(context, &(newPacket));
if (errorCheck < 0)
{
// error
}
else
{
int frameFinished = 0;
int decodeCode = avcodec_decode_video2(ccontext, actualFrame, &frameFinished, &newPacket);
if (decodeCode <0)
{
// error
}
else
if (decodeCode == 0)
{
// no frame could be decompressed / decoded / etc
}
else
if ((decodeCode > 0) && (frameFinished))
{
// do my processing / copy the frame off for later processing / etc
}
else
{
// decoded some data, but frame was not finished...
// Save data and reconstitute the pieces somehow??
// Given that we free the packet, I doubt there is any way to use this partial information
}
av_free_packet(&(newPacket));
}
}I’ve google’d and looked through the ffmpeg documents for some function I can call to flush things and enable me to catch up but I can’t seem to find anything. This same sort of solution would be needed if you wanted to only occasionally monitor a video source(eg, if you only wanted to snag one frame per second or per minute). The only thing I could come up with is disconnecting from the camera and reconnecting. However, I still need a way to detect if the frames I am receiving are old.
Ideally, I’d be able to do something like this :
while(runThread)
{
av_init_packet(&(newPacket));
// Not a real function, but I'd like to do something like this
if (av_check_frame_buffer_size(context) > 30_frames)
{
// flush frame buffer.
av_frame_buffer_flush(context);
}
int errorCheck = av_read_frame(context, &(newPacket));
...
}
}