1. 04 Sep, 2012 1 commit
    • Stephen Warren's avatar
      Implement workarounds for Adobe Flash bugs · ca9e637c
      Stephen Warren authored
      
      
      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: default avatarStephen Warren <swarren@wwwdotorg.org>
      Reviewed-by: default avatarAaron Plattner <aplattner@nvidia.com>
      Signed-off-by: default avatarAaron Plattner <aplattner@nvidia.com>
      [aplattner@nvidia.com: fixed distcheck by changing it to dist_libvdpausysconf_DATA]
      ca9e637c