
Recherche avancée
Autres articles (63)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Installation en mode ferme
4 février 2011, parLe mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
C’est la méthode que nous utilisons sur cette même plateforme.
L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...) -
La sauvegarde automatique de canaux SPIP
1er avril 2010, parDans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)
Sur d’autres sites (12626)
-
avcodec_encode_video returns 0 as output size
11 juin 2014, par vacetahannaHello what I am doing wrong ? When I try to encode a Frame, the out_size is 0. and if I use the avcodec_encode_video2 the return value is 0, which indicates, that everything went good, but the avpkt.size is 0 after that. What am I missing or doing wrong ? thank you so much here is my code
int EncodeVideoFFMPEG::enc_main( void *istream, void *outstream, int width, int height )
{
avcodec_register_all();
//choose codec
AVCodec *codec = avcodec_find_encoder(CODEC_ID_H264);
//set parameters
AVCodecContext *c = avcodec_alloc_context3(codec);
c->codec_type = AVMEDIA_TYPE_VIDEO;
c->bit_rate = 50000;
c->pix_fmt = PIX_FMT_YUV420P;
c->width = width;
c->height = height;
c->time_base.num = 1;
c->time_base.den = 25;
c->gop_size = 20;
c->max_b_frames = 0;
//open
avcodec_open2(c, codec, NULL);
int got_packet;
int BYTEPIC = width * height * 3;
//prepare for changing color space
struct SwsContext *img_convert_ctx1 =
sws_getContext(width, height, PIX_FMT_BGR24,
width, height, PIX_FMT_YUV420P,
SWS_BICUBIC, NULL, NULL, NULL);
//allocateframesforcolorspacechange
AVFrame *pictureBGR = alloc_pictureBGR24(width, height);
AVFrame *picture = alloc_picture420P(width, height);
//get frame from OGRE and let pictureBGR point to it
unsigned char *image = new unsigned char[BYTEPIC];
memcpy(image, istream, BYTEPIC);
//change from BGR to 420P
sws_scale(img_convert_ctx1, &image, pictureBGR->linesize, 0, height, picture->data, picture->linesize);
delete image;
AVPacket avpkt;
av_new_packet( &avpkt, BYTEPIC );
//encode withthe codec
int out_size = avcodec_encode_video(c, avpkt.data, avpkt.size, picture);
//int success = avcodec_encode_video2(c, &avpkt, picture, &got_packet);
outstream = avpkt.data;
return out_size;
} -
libswresample : swr_convert() returns empty buffer
11 septembre 2019, par Герман ЛиманськийI try to convert audio in format AV_SAMPLE_FMT_S32. I use swr_convert(), but out buffer still empty.
// frame is decoded frame, rframe - is empty frame(out buffer)
if (!main_context->resampler) {
main_context->resampler =
swr_alloc_set_opts(main_context->resampler,
AV_CH_LAYOUT_STEREO, // output
AV_SAMPLE_FMT_S32, // output
44100, // output
audio_codec_context->channel_layout, // input
audio_codec_context->sample_fmt, // input
audio_codec_context->sample_rate, // input
0,
nullptr);
swr_init(main_context->resampler);
}
//int in_samples = frame->nb_samples;
int out_samples = av_rescale_rnd(swr_get_delay(
main_context->resampler, 44100) + 44100,
44100,
44100,
AV_ROUND_UP);
size_t buffSize = av_samples_alloc(rframe->data, NULL,audio_codec_context->channels, out_samples, AV_SAMPLE_FMT_S32, 0);
int len = swr_convert(main_context->resampler, rframe->data, frame->nb_samples, (const uint8_t * *)frame->data, frame->nb_samples);
//here.. rframe->data should have some data, but its empty
while (len > 0)
{
size_t size_ = rframe->nb_samples * av_get_bytes_per_sample(AV_SAMPLE_FMT_S32);
main_context->audio_buf.write(rframe->data[0], size_, 1);
len = swr_convert(main_context->resampler, rframe->data, frame->nb_samples, NULL, NULL);
} -
Flash, Google, VP8, and the future of internet video
This is going to be a much longer post than usual, as it’s going to cover a lot of ground. The internet has been filled for quite some time with an enormous number of blog posts complaining about how Flash sucks–so much that it’s sounding as if the entire internet is crying wolf. But, of [...]