[MPlayer-users] draw_eosd trouble in building with vaapi

sean darcy seandarcy2 at gmail.com
Sat Oct 2 20:36:31 CEST 2010


I'm trying to build svn with VAAPI. I been hacking the patches found at 
http://www.splitted-desktop.com/~gbeauchesne/mplayer-vaapi/

I'm doing pretty well, but stumped here:

libvo/vo_vaapi.c:2350: error: expected ')' before '*' token
libvo/vo_vaapi.c: In function 'control':
libvo/vo_vaapi.c:2654: warning: implicit declaration of function 'draw_eosd'
make: *** [libvo/vo_vaapi.o] Error 1

I assume this is because draw_eosd has been modified recently. I can't 
find it used anyplace else in mplayer. Is there some easy fix, or should 
I wait for the next mplayer-vaapi release?

A little OT, ffmpeg just builds with --enable-vaapi. So ffmpeg works, 
and only mplayer needs the patch?

sean

vo_vaapi.c:
    2350 static void draw_eosd(mp_eosd_images_t *imgs)
    2351 {
    2352     ass_image_t *img = imgs->imgs;
    2353     ass_image_t *i;
    2354     VAStatus status;
    2355
    2356     if (!va_eosd_draw_alpha)
    2357         return;
    2358
    2359     // Nothing changed, no need to redraw
    2360     if (imgs->changed == 0)
    2361         return;
    2362
    2363     // There's nothing to render!
    2364     if (!img) {
    2365         disable_eosd();
    2366         return;
    2367     }
    2368
    2369     if (imgs->changed == 1)
    2370         goto eosd_skip_upload;
    2371
    2372     status = vaMapBuffer(va_context->display, va_eosd_image.buf,
    2373                          (void *)&va_eosd_image_data);
    2374     if (!check_status(status, "vaMapBuffer()"))
    2375         return;
    2376
    2377     memset(va_eosd_image_data, 0, va_eosd_image.data_size);
    2378
    2379     for (i = img; i; i = i->next)
    2380         va_eosd_draw_alpha(i->bitmap, i->w, i->h, i->stride,
    2381                            i->dst_x, i->dst_y, i->color);
    2382
    2383     status = vaUnmapBuffer(va_context->display, va_eosd_image.buf);
    2384     if (!check_status(status, "vaUnmapBuffer()"))
    2385         return;
    2386     va_eosd_image_data = NULL;



More information about the MPlayer-users mailing list