summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-11-04vdpau_wrapper: make the fixes initialization thread-safeRémi Denis-Courmont2-7/+4
Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-11-04configure: add test for POSIX threadsRémi Denis-Courmont1-0/+8
Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-11-04vdpau: define some more H.264/AVC decoding profilesRémi Denis-Courmont1-0/+8
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: José Hiram Soltren <jsoltren@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-11-04vdpau.h: improve constant expansion safetyRémi Denis-Courmont1-128/+128
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: José Hiram Soltren <jsoltren@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-10-29test: fix incomplete prototypeRémi Denis-Courmont1-1/+1
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-10-29test: remove assignment-as-truth-value warningRémi Denis-Courmont1-2/+1
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-10-29test: do not clobber CFLAGSRémi Denis-Courmont1-1/+1
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-10-29vdpau_wrapper: remove unused parameter warningsRémi Denis-Courmont1-0/+3
Signed-off-by: Rémi Denis-Courmont <remid@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-10-29vdpau_x11.h: update stale comment about how libvdpau finds driversAaron Plattner1-7/+7
When this comment was written, it wasn't clear how the library was going to figure out which back-end driver to load. Since then, the wrapper has been updated to make DRI2 that "VDPAU-specific X extension." Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: José Hiram Soltren <jsoltren@nvidia.com>
2014-10-28vdpau_x11 - fix typoJosé Hiram Soltren1-1/+1
Signed-off-by: José Hiram Soltren <jsoltren@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-09-08vdpau_trace: Fix GCC 4.8 build warningsRobert Morell1-2/+2
vdpau_trace.cpp: In function 'void _vdp_cap_dump_video_mixer_attribute_value(VdpVideoMixerAttribute, const void*, bool)': vdpau_trace.cpp:539:48: error: cast from type 'const void*' to type 'const float (**)[3][4]' casts away qualifiers [-Werror=cast-qual] ptr = *(VdpCSCMatrix const * *)value; ^ vdpau_trace.cpp: In function 'void _vdp_cap_dump_bitstream_buffer_list(uint32_t, const VdpBitstreamBuffer*)': vdpau_trace.cpp:1175:52: error: cast from type 'const void* const' to type 'uint8_t* {aka unsigned char*}' casts away qualifiers [-Werror=cast-qual] uint8_t * ptr = (uint8_t * )buffers[0].bitstream; ^ Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-08-28Clarify type of source_surface as VDP_INVALID_HANDLEJosé Hiram Soltren1-4/+4
(version 2, supercedes "Clarify type of source_surface") VDPAU takes special action if source_surface is VDP_INVALID_HANDLE, not if it is NULL, in both VdpOutputSurfaceRenderOutputSurface and VdpOutputSurfaceRenderBitmapSurface. Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-07-19vdpau: do not export _vdp_DRI2* functionsEmil Velikov1-4/+11
Neither one is part of the public API, thus should never be used outside of the library itself. Add macro PRIVATE, that is used to annotate the function visibility by setting __attribute__((visibility("hidden"))). v2: Provide only PRIVATE macro. Requested by Aaron. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-07-19trace: properly annotate private functions as staticEmil Velikov1-3/+3
The following three were never a part of the public API and as such should have never been exported by libvdpau_trace.so Correct that by marking them as static, thus allowing the compiler to hide them from the exported namespace. _vdp_cap_init_planes_adapt_surface_video _vdp_cap_init_planes_adapt_surface_bitmap _vdp_cap_init_planes_adapt_surface_output Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-07-01Bump version to 0.8libvdpau-0.8Aaron Plattner2-1/+3
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-05-31Add VDPAU_DRIVER_PATH supportEmil Velikov2-13/+35
Allow the user to specify the location of the backend driver, via the VDPAU_DRIVER_PATH environment variable. This allows easier testing of VDPAU backends without the need to rebuild libvdpau. Inspired by LIBGL_DRIVERS_PATH from mesa. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-02-20Fix incorrect VdpPictureInfo typedef.Reimar Döffinger1-2/+2
VdpPictureInfo should not be a pointer, otherwise the VdpDecoderRender function signature asks for a pointer to a pointer. But it really does expect a pointer directly to e.g. VdpPictureInfoH264. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Tested-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2014-01-28trace: remove trailing whitespaceEmil Velikov1-6/+6
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-08-01Bump version to 0.7libvdpau-0.7Aaron Plattner2-1/+2
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-08-01trace: delete unused _vdp_cap_dump_pointAaron Plattner1-17/+0
Nothing actually uses VdpPoint, so this tracing function was never called. I left the VdpPoint type in vdpau.h for now, just in case anyone actually uses it themselves. Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-08-01Make init_config and init_fixes staticAaron Plattner1-2/+2
Fixes -Wmissing-prototypes warnings. Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-07-25vdpau: add prime support at connection setupDave Airlie1-0/+14
This just ports the code from the mesa glx setup into vdpau, this just picks the correct driver to load on the client side, at least for gallium/vl code we need another similiar change inside the driver code to pick the correct drm device. Signed-off-by: Dave Airlie <airlied@redhat.com> Tested-by: Martin Peres <martin.peres@ensi-bourges.fr> Tested-by: Hohahiu <rakothedin@gmail.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=67283
2013-07-24Don't leak the vdpau_wrapper.cfg file pointerAaron Plattner2-0/+30
init_config opens vdpau_wrapper.cfg and reads its contents, but never closes it. This causes a file descriptor leak if libvdpau is unloaded and reloaded. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Andy Ritger <aritger@nvidia.com> Reviewed-by: Josep Torra <josep@fluendo.com>
2013-07-23init_config: remove unused local variable 'ret'Aaron Plattner1-1/+0
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-02-01trace: fix Coverity dead code warningsKiran Pawar1-4/+2
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-02-01Bump version to 0.6libvdpau-0.6Aaron Plattner2-1/+3
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-01-28test: add a dlclose testAaron Plattner6-1/+74
Closing an X display that had a VDPAU device created on it causes a crash. Work around an identical libXext dlclose bug with the "Generic Event Extension" by dlopening libXext.so.6 and leaving it open. Original bug discovered and fixed by Robert Morell <rmorell@nvidia.com> in commit 3b43955c7324e1d213a3134387767722f34e2356. v2: Don't SKIP if creating the device fails. Just attempting to create the device installs the DRI2 extension that causes the problem. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Robert Morell <rmorell@nvidia.com>
2013-01-24Use AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER to appease automake 1.13Aaron Plattner1-1/+1
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-01-24Fix leaked extension info on library unloadRobert Morell3-2/+23
In this sequence: dlopen(libvdpau.so) vdp_device_create_x11(dpy, ...) dlclose(libvdpau.so) XCloseDisplay(dpy) the process will attempt to call the address at which DRI2CloseDisplay was previously mapped, possibly resulting in a SEGV. Instead of tracking displays to which we've added hooks and cleaning up the extension on library unload or display close, simply clean up after ourselves once we have the data we need. Signed-off-by: Robert Morell <rmorell@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Tested-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2013-01-24Change mailing list to vdpau@lists.freedesktop.orgAaron Plattner1-1/+1
Users should address questions there instead of to xorg@lists.freedesktop.org. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Acked-by: Robert Morell <rmorell@nvidia.com>
2013-01-24Make use of dri2proto_CFLAGS when building.James Le Cuirot1-0/+2
Signed-off-by: James Le Cuirot <chewi@aura-online.co.uk> Reviewed-by: Robert Morell <rmorell@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2012-09-04Bump version to 0.5libvdpau-0.5Aaron Plattner2-1/+3
Also add authors to the AUTHORS file. Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2012-09-04Implement workarounds for Adobe Flash bugsStephen Warren3-2/+174
Implement two workarounds: 1) Swap U and V planes to VdpVideoSurfacePutBitsYCbCr to fix blue-tinged videos. 2) Disable VdpPresentationQueueSetBackgroundColor, so that Flash doesn't set the background to pure black or pure white, which would cause the VDPAU image to bleed through to other parts of the desktop with those very common colors. These workarounds are only enabled when running under Flash player, and may be individually controlled via /etc/vdpau_wrapper.cfg, should they ever need to be disabled. Note that this code stores the VDPAU backend function pointers as global variables, which is technically incorrect. However, the likelihood of any known VDPAU implementation ever returning different values for these pointers within a single process is zero. If this becomes a problem, a hash table of VdpDevice to the stored pointers should be implemented. Signed-off-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com> [aplattner@nvidia.com: fixed distcheck by changing it to dist_libvdpausysconf_DATA]
2011-08-16vdpau_wrapper.c: Track dynamic library handles and free them on exit using ↵Kiran Pawar1-23/+64
__attribute__((destructor)) Signed-off-by: Kiran Pawar <kpawar@nvidia.com> Tested-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-09-08Bump version to 0.4.1libvdpau-0.4.1Aaron Plattner1-1/+1
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-09-07vdpau.h: Clarify video mixer field amount recommendationAnssi Hannula1-1/+1
Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-02-10More doc issues pointed out by Xine authors.Stephen Warren2-6/+11
* Fix Doxygen warning; it gets confused by quotes. * Add subsection names, so part of the title doesn't get swallowed as the subsection name. * Document data required from MPEG-4 Part 2 & DivX bitstream. Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-02-08vpdau.h: Fix typo and clarify wording.Stephen Warren1-5/+5
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28Bump version to 0.4libvdpau-0.4Aaron Plattner1-1/+1
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28trace: Fix a picture info bracket mismatch.Stephen Warren1-1/+1
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28YV12 documentation fix.Stephen Warren1-1/+1
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28Documentation enhancements for Uoti from ffmpeg.Stephen Warren1-24/+35
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28Update the COPYING copyright date to include recent changesAaron Plattner1-1/+2
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2010-01-28Query DRI2 for the driver name.Aaron Plattner5-4/+294
If the VDPAU_DRIVER environment variable is not set, use DRI2Connect to query the VDPAU driver name from the X server. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Stephen Warren <swarren@nvidia.com>
2009-12-14$(docdir) apparently requires autoconf 2.60Aaron Plattner1-1/+1
2009-11-20Bump version to 0.3libvdpau-0.3Aaron Plattner1-1/+1
2009-11-17Update VDPAU_VERSION and add VDPAU_INTERFACE_VERSIONStephen Warren1-4/+25
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2009-11-17Move VDPAU drivers into their own module directory.Aaron Plattner6-18/+38
* Add a --with-module-dir configure parameter. * Pass the moduledir into the wrapper. Use it to construct the path to search for drivers. Require drivers to end in a ".1" version, in case we ever want to rev. the interface between the wrapper and the drivers. * If no driver is found in the new module dir, look for one in the default search paths. This is intended to find libvdpau_nvidia.so for drivers that predate the change to move it, and can be removed in the future. * Stash the moduledir into vdpau.pc. Drivers can find this with `pkg-config --variable=moduledir vdpau`. * Add a version to libvdpau_trace.so in case the interface between it and libvdpau.so ever changes. * Install libvdpau_trace.so.1 to moduledir instead of libdir. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com>
2009-10-23Documentation updates.Stephen Warren1-3/+85
Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
2009-10-23Fix distcheck.Aaron Plattner1-2/+8
* Uninstall the docs if they were installed. * Remember to distribute Doxyfile and vdpau_data_flow.png in the tarball. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Stephen Warren <swarren@nvidia.com>