Create new video driver API that has a per-instance context structure
and does not rely on keeping status in global or static variables.
Existing drivers are not yet converted to this API; instead there is a
wrapper which translates calls to them.
In the new API, an old API call vo_functions->xyz(args) is generally
replaced by vo_xyz(vo_instance, args).
The changes to keep the vesa, dxr2 and xover drivers compiling have
not been tested.
These were the only voctrl types with more than one argument. The
second argument was passed using variable arguments. Change them to
use a single argument (address of a struct containing both old
arguments). This makes forwarding the arguments to other functions
easier and allows simplifying code.
patch replaces '()' for the correct '(void)' in function
declarations/prototypes which have no parameters. The '()' syntax tell
thats there is a variable list of arguments, so that the compiler cannot
check this. The extra CFLAG '-Wstrict-declarations' shows those cases.
Comments about a similar patch applied to ffmpeg:
That in C++ these mean the same, but in ANSI C the semantics are
different; function() is an (obsolete) K&R C style forward declaration,
it basically means that the function can have any number and any types
of parameters, effectively completely preventing the compiler from doing
any sort of type checking. -- Erik Slagter
Defining functions with unspecified arguments is allowed but bad.
With arguments unspecified the compiler can't report an error/warning
if the function is called with incorrect arguments. -- Måns Rullgård
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17567 b3059339-0415-0410-9bf9-f77b7e298cf2
return values can be negative (VO_ERROR, VO_NOTAVAIL and VO_NOTIMPL), so it's
changed to int now.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16172 b3059339-0415-0410-9bf9-f77b7e298cf2
Based on a patch by Sebastian Hegler <s_hegler at gmx dot de>.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13788 b3059339-0415-0410-9bf9-f77b7e298cf2
the upper left corner like in vo fbdev[2].
Reason: vo cvidix does not know the screen resolution unlike you specify
it with screen[w/h], resulting in the video being displayed on a random
position.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13356 b3059339-0415-0410-9bf9-f77b7e298cf2