[MPlayer-dev-eng] lidbha/dhahelper/vidix future

Alex Beregszaszi alex at naxine.org
Thu Feb 6 20:02:12 CET 2003


Hi,

I've great plans with the above:
 * new structure of libdha (more readable, selectable ways, ...)
 * implementing mapdev.vxd in GPL with source ;)
 * merging MPlayer dhahelper + MPXP dhahelper + svgalib_helper
 * libdha (w/dhahelper) as an individual project!
   (so all the players should include it as an external library)
 * vidix as an individual project (with an api redesign ;)

New structure of libdha:
 There are several ways of detecting PCI stuff on Linux, you can
 use the general proc/pci, machine specific, and os specific
 codes, .. and probably the same on other architectures too.
 Also user should be able to select the way, and automatically
 it should also select the easiest, fastest, reliablest one ;)

 And I also want to eleminate all the probably non-GPL pieces
 of code.

Individual Vidix & Redesign:
(I have named it SVO - Smart/Simple Video Overlay)
 New goals:
  * easier api
  * only exporting one or two global functions
  * control() function:
     Current ideas: GET_MEM_SIZE, SET_MEM_SIZE, CARD_LIST, CARD_SELECT

--- including my draft ---

Brief explanation of the controls
---------------------------------

INIT (void)
----
 o Initializes basic stuff needed for further operation
 o Get list of available (and supported) cards
 o Set the first supported card as default (it can be resetted by
CARD_SELECT) o ...

CLOSE (void)
-----
 o Close all stuff opened in init
 o Destroy overlay
 o ...

QUERY_FORMAT
------------
 o checks if format is supported at given dimensions (w,h)
 o returns which capabilites are supported with the given format

CONFIG (*config_info)
------
 o Setup an overlay with the given dimension and image format
 o Setup scaler
 o Return memory addresses and other requested stuff

OVERLAY_ON (void)
----------
 o Switch the overlay to be visible

OVERLAY_OFF (void)
----------
 o Switch the overlay off

CARD_LIST (*svo_card_list)
---------
 o Return the list of available cards (in your current configuration)
   and also return their capabilities

CARD_SELECT (card_id)
-----------
 o Select the requested card

EQUALIZER_GET (*equalizer_info)
-------------
 o Get current contrast, brightness, hue, etc values

EQUALIZER_SET (*equalizer_info)
-------------
 o Set contrast, brigthness, hue, etc

MEMSIZE_GET (memsize)
-----------
 o Set on-board memory size on selected card

MEMSIZE_SET (memsize)
-----------
 o Set on-board memory size on selected card

GET_IMAGE
---------
 o Get the bufs and values for directrendering

DRAW_IMAGE
----------
 o Draw the given image

--- eof --

Note: i have written that on 27 Sep 2002, so long time ago ;)
I also plan to support busmastering (the draft should be extended
with this)

Note2: i've also an another project plan, going futher... :)

Btw, rezso, could you send your patches in diff? (read
mplayer/docs/patches ;)

-- 
Alex Beregszaszi  <alex at naxine.org>
(MPlayer Core Developer -- http://www.mplayerhq.hu/)
  ZDNet.au: "Where do you see Linux in 5 years?"
  Alan Cox: "Hopefully world domination! (laughs)."


More information about the MPlayer-dev-eng mailing list