# HG changeset patch # User arpi # Date 1028050871 0 # Node ID c0a3d33f3245a0ee24ed5e23dddfdf4a204a1673 # Parent f0cb56e4e9865a8e2b545d1b5a7bb2a12332e286 10l - PUT_IMAGE->DRAW_IMAGE diff -r f0cb56e4e986 -r c0a3d33f3245 DOCS/tech/libvo.txt --- a/DOCS/tech/libvo.txt Tue Jul 30 17:32:45 2002 +0000 +++ b/DOCS/tech/libvo.txt Tue Jul 30 17:41:11 2002 +0000 @@ -26,18 +26,18 @@ 0x2 - supported without conversion (define 0x1 too!) 0x100 - driver/hardware handles timing (blocking) also SET sw/hw scaling and osd support flags, and flip, - and accept_stride if you implement put_image (see vfcaps.h) + and accept_stride if you implement VOCTRL_DRAW_IMAGE (see bellow) NOTE: VOCTRL_QUERY_FORMAT may be called _before_ first config() but is always called between preinit() and uninit() VOCTRL_GET_IMAGE libmpcodecs Direct Rendering interface You need to update mpi (mp_image.h) structure, for example, look at vo_x11, vo_sdl, vo_xv or mga_common. - VOCTRL_PUT_IMAGE + VOCTRL_DRAW_IMAGE replacement for the current draw_slice/draw_frame way of passing video frames. by implementing SET_IMAGE, you'll get image in mp_image struct instead of by calling draw_*. - unless you return VO_TRUE for VOCTRL_PUT_IMAGE call, the + unless you return VO_TRUE for VOCTRL_DRAW_IMAGE call, the old-style draw_* functils will be called! Note: draw_slice is still mandatory, for per-slice rendering! VOCTRL_RESET - reset the video device @@ -88,7 +88,7 @@ draw_frame(): this is the older interface, this displays only complete frames, and can do only packed format (YUY2, RGB/BGR). Win32 codecs use this (DivX, Indeo, etc). - If you implement VOCTRL_PUT_IMAGE, you can left draw_frame. + If you implement VOCTRL_DRAW_IMAGE, you can left draw_frame. draw_osd(): this displays subtitles and OSD. It's a bit tricky to use it, since it's a callback-style stuff.