
Recherche avancée
Autres articles (73)
-
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 (...) -
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" ; -
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)
Sur d’autres sites (9558)
-
Fill a BGR Frame Data in FFMPEG
23 février 2016, par mFeinsteinI am following the FFmpeg video enconding example here, but it makes some dummy YUV420P frames and I have a BGR image already captured from a camera.
I am not sure how to use
frame->data[]
andframe->linesize[]
for filling them with my BGR image instead, so I can encode an H264 video.
EDIT :
I have the following code (it’s called for every new picture the camera sends) after Ronald’s answer :
.............
AVFrame *bgrFrame = av_frame_alloc();
bgrFrame->width = originalBGRImage.cols;
bgrFrame->height = originalBGRImage.rows;
ret = av_image_alloc(bgrFrame->data, bgrFrame->linesize, bgrFrame->width, bgrFrame->height, AV_PIX_FMT_BGR24, 32);
/////////////////////////////////////
// This works and prevents memory leak....if I remove it, it consumes all the RAM....but I can't free this memory here, since I will use it later...
av_freep(&bgrFrame->data[0]);
av_frame_free(&bgrFrame);
return;
/////////////////////////////////////
ret = av_image_fill_pointers(bgrFrame->data, AV_PIX_FMT_BGR24, bgrFrame->height, originalBGRImage.data, bgrFrame->linesize);
/////////////////////////////////////
// Here is where I am done using the memory so I will want to free it...but this same code crashes the program.
av_freep(&bgrFrame->data[0]);
av_frame_free(&bgrFrame);
return;
/////////////////////////////////////So if I remove the
av_freep(&bgrFrame->data[0]);
at the end of the code I will have a memory leak...but leaving it there crashes....so what’s the correct way to free the used memory ? -
How to fill AVFrame with audio data
12 décembre 2014, par AndyI use Win32 API to implement a desktop recording program.
The video capture feature works, but I have no idea to put the audio in the FFmpeg encoder’s data structure.The below code will get the data of the default output audio.
// Set wave format when sampling the audio
WAVEFORMATEX wf;
wf->wFormatTag = WAVE_FORMAT_PCM;
wf->nChannels = 1;
wf->nSamplesPerSec = 12000;
wf->nBlockAlign = 1;
wf->wBitsPerSample = 8;
wf->cbSize = 0;
wf->nAvgBytesPerSec = nChannels * nSamplesPerSec * wBitsPerSample / 8;
// Open wave input channel
HWAVEIN hWaveIn;
OpenWaveIn(&hWaveIn,&wf);
// Prepare Wave In Header and allocate memory
WAVEHDR waveHdr;
DWORD dataSize = 240000L;
PrepareWaveIn(&hWaveIn, &waveHdr, dataSize);
// Start recording
StartRecord(&hWaveIn);
// Stop recording
MMTIME mmt;
StopRecord(&hWaveIn, &mmt);waveHdr->lpData
is a pointer to locked data buffer.The question is how can I implement the below function let the
waveHdr->->lpData
can be saved toAVFrame
?static AVFrame *get_audio_frame(OutputStream *ost)
{
AVFrame *frame = ost->tmp_frame;
int j, i, v;
int16_t *q = (int16_t*)frame->data[0];
AVRational arg;
arg.num = 1;
arg.den = 1;
//the transform code should be put here
frame->pts = ost->next_pts;
ost->next_pts += frame->nb_samples;
return frame;
}Does someone know how can implement this ?
-
avfilter/vsrc_testsrc : also fill alpha planes with a test pattern in {rgb,yuv}testsrc
31 mars, par James Almeravfilter/vsrc_testsrc : also fill alpha planes with a test pattern in rgb,yuvtestsrc
And add support for more formats.
Signed-off-by : James Almer <jamrial@gmail.com>