[Libva] VADestroyImage giving segmentation fault [rt.gandalfpc #46]

Varun Dua varundua007 at gmail.com
Sun Oct 17 22:50:16 PDT 2010


On Fri, Oct 15, 2010 at 9:33 PM, Gwenole Beauchesne <
gbeauchesne at splitted-desktop.com> wrote:

> Hi,
>
>
> On Thu, 14 Oct 2010, Varun Dua wrote:
>
>  I am decoding a H.264 video using Nvidia's Graphics Card and Vaapi Library
>> on Ubuntu 10.04. I am able to decode an entire video
>> and display it using vaPutSurface, no problems at all. Now I need the data
>> in RGBA format so I get the data in BRGA format which
>> is supported in my implementation (I can convert it into RGBA).
>>
>
> Note that retrieving the decoded pixels can be a slow operation. Also note
> that only the vdpau-video driver supports BGRA read-back. In particular,
> only the NVIDIA implementation. i.e. I would not rely on that.
>
>
>  VAImage vaimage;
>> unsigned char *imagedata = NULL;
>> FILE *fp1;
>> char file[100];
>> printf("%x\n",myimgfmt.fourcc);
>> vastatus =
>> pfn_vaCreateImage(vaapi->display,&myimgfmt,avcc->width,avcc->height,&vaimage);
>> checkVaStatus();
>> pfn_vaGetImage
>> (vaapi->display,va_surface_ids[current_surface],0,0,avcc->width,avcc->height,vaimage.image_id);
>> checkVaStatus();
>> imagedata = (char *)malloc(vaimage.data_size*sizeof(char));
>> pfn_vaMapBuffer(vaapi->display,vaimage.buf,(void *)&imagedata);
>>
>
> vaMapBuffer() returns the mapped region in imagedata. i.e. you must not
> allocate, neither free that pointer;
>
>
>  sprintf(file,"brga/frame%d.raw",framenumber++);
>> fp1 = fopen(file,"wb");
>> fwrite(imagedata,vaimage.data_size*sizeof(unsigned char),1,fp1);
>> fclose(fp1);
>> free(imagedata);
>> imagedata = NULL;
>> vastatus = pfn_vaUnmapBuffer(vaapi->display,vaimage.buf);
>> checkVaStatus();
>> vastatus = vaDestroyImage(vaapi->display,vaimage.image_id);
>>
>> Everthing is working fine except that I am getting Segmentaion fault at
>> vaDestroyImage. I am unable to correct this error. Can
>> anybody help me with that ?
>>
>
> Drop the imagedata = ...; and free(imagedata); lines.
>
> Regards,
> Gwenole.
>

Thanks a lot.

Varun Dua
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libva/attachments/20101018/099f3e64/attachment.htm>


More information about the Libva mailing list