[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