[Libav-user] AVFrame necessary fields to create correctly raw Frame
Michael Bradshaw
mbradshaw at sorensonmedia.com
Thu Aug 16 21:40:54 CEST 2012
On Thu, Aug 16, 2012 at 1:26 PM, Jorge Fonseca <jcbfonseca at gmail.com> wrote:
> Hi All,
>
> I have a C program using FFmpeg API that:
> - load bmp files and create a video file.
>
> Its works correctly.
>
> -------------
>
> Now, i need to create the same video from a RAW data (char array).
> I allocating a frame, and try to set AVFrame directly...
>
> Question:
>
> - Which fields a need to fill?
>
> My current code is:
>
> pFrameRaw = avcodec_alloc_frame();
> if (!pFrameRaw) {
> printf("Can't allocate memory for AVFrame\n");
> return NULL ;
> }
>
>
> // Determine required buffer size and allocate buffer
> int numBytes = avpicture_get_size(PIX_FMT_BGR24,FRAME_WIDTH,
> FRAME_HEIGHT);
> uint8_t *buffer = (uint8_t *) av_malloc(numBytes * sizeof(uint8_t));
Not sure if I understand the question, but this can be simplified if
you use avpicture_alloc().
--Michael
More information about the Libav-user
mailing list