
Recherche avancée
Médias (3)
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
-
GetID3 - Boutons supplémentaires
9 avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
Autres articles (53)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Pas question de marché, de cloud etc...
10 avril 2011Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
sur le web 2.0 et dans les entreprises qui en vivent.
Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...) -
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
Sur d’autres sites (6573)
-
Smart y coordinate to make vertical alignment for the text with typewriting effect
31 août 2021, par Макс ШульдинерI'm doing animation for the typewriting effect. Here is my ffmpeg string :


-i ffmpeg_inputs/output-onlinegiftools.gif -vf "[in]drawtext=fonts/RobotoMono-Regular.ttf:text='h':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+0:y=h-th-400:enable='between(t,0.00, 7.80)', drawtext =fonts/RobotoMono-Regular.ttf:text = 'i':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+25:y=h-th-400:enable='between(t,0.80, 7.80)', drawtext =fonts/RobotoMono-Regular.ttf:text = 'g':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+75:y=h-th-400:enable='between(t,1.60, 7.80)', drawtext =fonts/RobotoMono-Regular.ttf:text = 'u':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+100:y=h-th-400:enable='between(t,2.40, 7.80)', drawtext =fonts/RobotoMono-Regular.ttf:text = 'y':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+125:y=h-th-400:enable='between(t,3.20, 7.80)', drawtext =fonts/RobotoMono-Regular.ttf:text = 's':fontcolor=orange:fontsize=35:x=(w-text_w)/2-200+150:y=h-th-400:enable='between(t,4.00, 7.80)'[out]" ffmpeg_outputs/test2.gif -y 



Here is the results with different y values :






As i understand, to make smooth sentence, for some letters i need top vertical alignment, and for others i need bottom vertical alignment. How can i make this "smart alignment", or the only one method is to hardcode y values for different letters ?


-
C++ smart pointers to FFmpeg objects
15 octobre 2024, par ElijaCan I create and use C++ smart pointers for different pointer types from FFmpeg ?


- 

- "AVCodecContext *" which is used only as a pointer in all functions except deallocation.




Alloc :


AVCodecContext *avcodec_alloc_context3(const AVCodec *codec);



Free :


void avcodec_free_context(AVCodecContext **avctx);



Use :


int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVDictionary **options);



Then the smart pointer :


std::shared_ptr<avcodeccontext> av_codec_context(avcodec_alloc_context3(av_codec),
[](AVCodecContext* _context)
{
 if (_context) avcodec_free_context(&_context);
});
avcodec_open2(av_codec_context.get(), av_codec, NULL)
</avcodeccontext>


Is this correct ?


- 

- "AVDictionary **" which is used in all functions only as a pointer to a pointer.




Alloc and use :


int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags);



where pm is a Pointer to a pointer to a dictionary struct. If *pm is NULL a dictionary struct is allocated and put in *pm.


Free :


void av_dict_free(AVDictionary **m);



Then a smart pointer :


std::shared_ptr av_dict(new (AVDictionary*),
[](AVDictionary** _dict)
{
 if (_dict)
 {
 if(*_dict)
 av_dict_free(_dict);
 delete _dict;
 }
});
av_dict_set(av_dict.get(), "key", "value", 0);



Is this correct ?


- 

- "AVFormatContext *" which is used both as a pointer and as a pointer to a pointer.




Alloc :


AVFormatContext *avformat_alloc_context(void);



Free :


void avformat_free_context(AVFormatContext *s);



Use :


int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options);



or


int avformat_open_input(AVFormatContext **ps, const char *url, const AVInputFormat *fmt, AVDictionary **options);



where ps is a Pointer to user-supplied AVFormatContext (allocated by avformat_alloc_context). May be a pointer to NULL, in which case an AVFormatContext is allocated by this function and written into ps.


Then a smart pointer :


std::shared_ptr<avformatcontext> av_format_context(avformat_alloc_context(),
[](AVFormatContext* _context)
{
 if(_context)
 avformat_free_context(_context);
});
avformat_find_stream_info(av_format_context.get(), NULL);
</avformatcontext>


Is this correct ? But how can I use it with the avformat_open_input() function, which needs a pointer to a pointer and may want to create an object by this pointer ?


-
avcodec/amfenc : add smart access video option
11 mars, par Evgeny Pavlovavcodec/amfenc : add smart access video option
This commit adds option for enabling SmartAccess Video (SAV)
in AMF encoders. SAV is an AMD hardware-specific feature which
enables the parallelization of encode and decode streams across
multiple Video Codec Engine (VCN) hardware instances.