qmake: correct the backslash from string. use '/' for qmake

qmake knows how to deal with '/'. '\' is only used for win command.
if '\' appears in qmake file, qmake will give a warning
remove unnecessary includes
examples: show error dialog if d2d not availabe if you use it
Merge branch 'gl'
rename ImageRenderer to QPainterRenderer
README: add GL support
README: auto build direct2d
add duration() for AVPlayer.
examples: add -vo option
factory: id must static and defined. extern results in a link error

So vaules in XXXTypes.h and XXXOO.cpp must be the same
TODO: why can not find out extern value in dll?
Add renderer factory
gl: vc does not have glext.h
examples: use factory instead of macro. we don't know macro value

HAVE_FEATURE should be used in library internally for building the
library. Those macros are not provided for users. Users can choose a
FEATURE in runtime. If the FEATURE is compiled into library, then you
can.
some notes for id
examples: renderer can be selected by player name
pro: refine code
remove dependency of version.h. add runtime version string functions
add osd
return if no osd etc.
shortcut change: O is OSD, Ctrl+O is open a file