
Recherche avancée
Médias (91)
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#4 Emo Creates
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#2 Typewriter Dance
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#1 The Wires
11 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
ED-ME-5 1-DVD
11 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (99)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
Ajouter notes et légendes aux images
7 février 2011, parPour pouvoir ajouter notes et légendes aux images, la première étape est d’installer le plugin "Légendes".
Une fois le plugin activé, vous pouvez le configurer dans l’espace de configuration afin de modifier les droits de création / modification et de suppression des notes. Par défaut seuls les administrateurs du site peuvent ajouter des notes aux images.
Modification lors de l’ajout d’un média
Lors de l’ajout d’un média de type "image" un nouveau bouton apparait au dessus de la prévisualisation (...)
Sur d’autres sites (10009)
-
avfilter/vf_fps : extend support for expressions
24 février 2021, par James Almeravfilter/vf_fps : extend support for expressions
AV_OPT_TYPE_VIDEO_RATE AVOption types are parsed as expressions, but in a
limited way. For example, name constants can only be parsed alone and not as
part of a longer expression.This change allows usage like
ffmpeg -i IN -vf fps="if(eq(source_fps\,film)\,ntsc_film\,source_fps)" OUT
Suggested-by : ffmpeg@fb.com
Signed-off-by : James Almer <jamrial@gmail.com> -
FFmpeg - generate x264 CBR video transport stream with C-API
6 juillet 2020, par ZeroDefectUsing various posts sprinkled around the Internet, including this one here on SO, I've been able to understand how to use the FFmpeg cli to generate a CBR video bitrate using the x264 codec (wrapped in an MPEG-2 transport stream). Note : I'm concerned with the video bitrate - nothing else.


ffmpeg -i cbr_test_file_input.mp4 -c:v libx264 -pix_fmt yuv420p -b:v 6000000 -preset fast -tune film -g 25 -x264-params vbv-maxrate=6000:vbv-bufsize=6000:force-cfr=1:nal-hrd=cbr -flags +ildct+ilme x264_cbr_test_output.ts



However, I'm trying to approach this from an FFmpeg C-API point of view. I'm having issues. I've knocked together some code to try do something very similar to what is being done in the FFmpeg CLI. I can generate a transport stream of what I think should be CBR, but the profile of the video bitrate is very different from what I thought was the FFmpeg cli equivalent :


The initialisation of the AVCodecContext looks something like :


av_dict_set(&pDict, "preset", "faster", 0);
 av_dict_set(&pDict, "tune", "film", 0);
 av_dict_set_int(&pDict, "rc-lookahead", 25, 0);

 pCdcCtxOut->width = pCdcCtxIn->width;
 pCdcCtxOut->height = pCdcCtxIn->height;
 pCdcCtxOut->pix_fmt = AV_PIX_FMT_YUV420P;
 pCdcCtxOut->gop_size = 25;

 // Going for 6Mbit/s
 pCdcCtxOut->bit_rate = 6000000;
 //pCdcCtxOut->rc_min_rate = pCdcCtxOut->bit_rate;
 pCdcCtxOut->rc_max_rate = pCdcCtxOut->bit_rate;
 pCdcCtxOut->rc_buffer_size = pCdcCtxOut->bit_rate;
 pCdcCtxOut->rc_initial_buffer_occupancy = static_cast<int>((pCdcCtxOut->bit_rate * 9) / 10);

 std::string strParams = "vbv-maxrate="
 + std::to_string(pCdcCtxOut->bit_rate / 1000)
 + ":vbv-bufsize="
 + std::to_string(pCdcCtxOut->bit_rate / 1000)
 + ":force-cfr=1:nal-hrd=cbr";

 av_dict_set(&pDict, "x264-params", strParams.c_str(), 0);

 pCdcCtxOut->field_order = AV_FIELD_TT;
 pCdcCtxOut->flags = (AV_CODEC_FLAG_INTERLACED_DCT | AV_CODEC_FLAG_INTERLACED_ME | AV_CODEC_FLAG_CLOSED_GOP);

 // WARN: Make some assumptions here!
 pCdcCtxOut->time_base = AVRational{1,25};
 pCdcCtxOut->framerate = AVRational{25,1};
 pCdcCtxOut->sample_aspect_ratio = AVRational{64,45};
</int>


The output graphs appear very different :




Above is the FFmpeg CLI output - video bitrate holds fairly steady.




Above is the output of my sample application - some significant dips in the video bitrate.


I've taken this a step further and created a git repo consisting of :


- 

- Code of sample application
- Test input file (.mp4)
- Outputs (.ts file) of tests
- Graphs of output bitrates.










-
FFMpeg- Raw compressed data to video
21 août 2012, par p.streefI'm trying to use FFMpeg to create a video. So far i've been playing with a multiplexing example :
http://ffmpeg.org/doxygen/trunk/muxing_8c-source.html, and i'm able to create a compressed video from an already existing video.Because my program is going to run on an embedded platform I would like to use some custom code (generated by a colleague) to compress the video data and place it into the video file.
So I'm looking for a way to create a video file in c/c++ using ffmpeg in which i have full control over the compression part (to basically circumvent ffmpeg from doing the compression for me and inserting my own code).To clarify i'm planning to use this to save film from an intelligent camera into a compressed h264 mpeg-4 file.