summaryrefslogtreecommitdiff
path: root/src/va.h
diff options
context:
space:
mode:
authorAustin Yuan <shengquan.yuan@intel.com>2009-01-12 06:49:57 -0500
committerAustin Yuan <shengquan.yuan@intel.com>2009-01-12 06:49:57 -0500
commite1b1327bff4d9b524c1eb0f9ed711dee9c6e3927 (patch)
tree6bed725bf00c17ba82fcc0d2abd4706483ee5b33 /src/va.h
parentf08cc6d5b8f0b2b2bb3034e7d846076bfd0966cd (diff)
Apply the patch to split va and display/x11 from Gwenole Beauchesne [mailto:gbeauchesne@splitted-desktop.com]
Bellow is his explanation: > Finally, looking further at <va_x11.h>, I think it should be enough to have > vaInitialize() in display-dependent headers/libs. The va_x11_getDriverName() > suggestion was to factor out the thing at the implementation (source > code/files) level. > > Or we could keep vaInitialize() in common lib and rather have vaGetDisplay() > in the display-specific part? And, while being at it, also rename the > function to vaCreateDisplay(), to be meaningful about the API change? > > Besides, for a different windowing system, we probably would need more than > just the Display (as we have in X11 land) anyway. e.g. what about OpenGL, > OpenGL E|S? I don't know, it's just an idea. > > I read that Canmore/Sodaville are using the same engines as the Poulsbo > (SGX535 and VXD370). However, the former platforms only support OpenGL E|S. > So, how does video acceleration work here? I know it works, I saw it but > since we still haven't received the machines, I just don't know about the > actual API. You'd probably want libVA there too. > > Splitting libVA between a Core API and a Display API would make it possible > to reduce code duplication from a player point of view. i.e. I don't think > it's necessary to have client applications implement > vaBeginPicture()..vaEndPicture() sequences themselves. I think it should be > the role of the codec library (ffmpeg, in my case), and it should be able to > do so without an explicit dependency on X11. > > On the other hand, the Core API won't be useful/functional alone. So, that > could be confusing too. > > In practise, I would like to have it working as follows. It's my ideal > vision, not necessarily the right/correct one. ;-) > > Roles of a codec implementation library: > - Create buffers > - Render the pictures, in the vaBeginPicture()..vaEndPicture(), > vaRenderPicture() sense > > Roles of a player application: > - Create display, surfaces, and decode pipeline for the codec library > - Render the picture, visually, i.e. in the vaPutSurface() sense > > Example use: > VApplication|initialize display > CodecLibrary|characterise bitstream (codec and other useful info) > VApplication|create decode pipeline > VApplication|create surfaces > CodecLibrary|create buffers (1) > CodecLibrary|render picture (2) > VApplication|display picture (3) > repeat (1) -> (3) while the end of stream is not reached > VApplication|destroy everything > > Have CodecLibrary linked against libva-core-VERSION.so.MAJOR, without any > dependency on windowing system library. > > Have VApplication linked against libva-x11-VERSION.so.MAJOR, itself linked > against libva-core-VERSION.so.MAJOR and other windowing system libraries. > > Regards, > Gwenole. > Signed-off-by: Austin Yuan <shengquan.yuan@intel.com>
Diffstat (limited to 'src/va.h')
-rwxr-xr-xsrc/va.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/src/va.h b/src/va.h
index 7acfeaf..c7db47b 100755
--- a/src/va.h
+++ b/src/va.h
@@ -134,10 +134,6 @@ const char *vaErrorStr(VAStatus error_status);
*/
typedef void* NativeDisplay; /* window system dependent */
-VADisplay vaGetDisplay (
- NativeDisplay native_dpy /* implementation specific */
-);
-
/*
* Initialize the library
*/