Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 534710 - x11-drivers/ati-drivers-14.12 - (alternatively?) add bundled vaapi support instead of using x11-libs/xvba-video
Summary: x11-drivers/ati-drivers-14.12 - (alternatively?) add bundled vaapi support in...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-04 20:58 UTC by Marek
Modified: 2015-01-06 19:42 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marek 2015-01-04 20:58:42 UTC
Since version 14.12 there is libXvBAW.so which is a wrapper(?) around libAMDXvBA.so
It provides more capabilities than xvba-video. The file should be linked as /usr/lib/va/drivers/fglrx_drv_video.so. 
Note that this conflicts with the latter package since it provides its own fglrx_drv_video.so.

Solution
link 
ln -s /usr/lib64/libXvBAW.so /usr/lib64/va/drivers/fglrx_drv_video.so

or just apply

--- /usr/portage/x11-drivers/ati-drivers/ati-drivers-14.12-r1.ebuild    2015-01-01 13:36:54.000000000 +0100
+++ ./ati-drivers-14.12-r1.ebuild       2015-01-04 21:56:56.472150321 +0100
@@ -502,6 +502,10 @@
 
        # other libs
        exeinto /usr/$(get_libdir)
+        
+        # VA-API internal wrapper
+        dosym /usr/$(get_libdir)/libXvBAW.so.1.0 /usr/$(get_libdir)/va/drivers/fglrx_drv_video.so 
+
        # Everything except for the libGL.so installed some row above
        doexe $(find "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir} \




Reproducible: Always

Actual Results:  
with xvba-video:

vainfo 
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib64/va/drivers/fglrx_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.35 (libva 1.3.1)
vainfo: Driver version: Splitted-Desktop Systems XvBA backend for VA-API - 0.8.0
vainfo: Supported profile and entrypoints
      VAProfileH264High               : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD


Expected Results:  
with the above symlink:

vainfo 
libva info: VA-API version 0.35.1
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib64/va/drivers/fglrx_drv_video.so
libva info: Found init function __vaDriverInit_0_33
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.35 (libva 1.3.1)
vainfo: Driver version: AMD MMD 1.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG4Simple            : VAEntrypointVLD
      VAProfileMPEG4AdvancedSimple    : VAEntrypointVLD
      VAProfileMPEG4Main              : VAEntrypointVLD
      VAProfileH264Baseline           : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
Comment 1 emil karlson 2015-01-06 12:47:18 UTC
Should be fixed in x11 overlay now, thanks
Comment 2 Manuel Rüger (RETIRED) gentoo-dev 2015-01-06 16:27:15 UTC
Hmm why don't we let the user decide which implementation to pick? 
Both seem to work. How about adding IUSE="+propietary-libva" or something like that?
We also have to adjust the dep in x11-libs/libva (thus I'm CC'ing its maintainer here).

equery d xvba-video
 * These packages depend on xvba-video:
x11-libs/libva-1.5.0 (video_cards_fglrx ? >=x11-libs/xvba-video-0.8.0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
Comment 3 Chí-Thanh Christopher Nguyễn gentoo-dev 2015-01-06 16:34:08 UTC
"internal-libva" might be a better name, similar to the existing "internal-glib" flag from pkgconfig.
Comment 4 Alexis Ballier gentoo-dev 2015-01-06 16:51:54 UTC
is there a way to install the libva driver (e.g. by installing it as libXvBAW.so) so that it does not conflict with xvba-video ? this way it could be installed unconditionally and libva could have 'video_cards_... ? ( || ( >=ati-drivers-XXX xvba-video ) )' in its deps. if not, it is probably better to prefer ati-drivers implementation since afaik xvba-video has no upstream since one year or more.

i dont like the "internal-libva" name since this bug seems to be only about the libva driver, not libva itself

otherwise, feel free to add the PDEPEND to libva: those are there since packages pull and "talk" to libva but libva alone without driver is useless...
Comment 5 emil karlson 2015-01-06 17:16:39 UTC
The driver name is hardcoded in libva (though you could modify the source obviously).
Comment 6 emil karlson 2015-01-06 17:18:57 UTC
USE=
internal-va-driver ?
internal-vadrv ?
Comment 7 Marek 2015-01-06 17:26:11 UTC
I would actually deprecate xvba-video, since its development has literally ended in 2011, when the maintainer quitted, see:

http://cgit.freedesktop.org/vaapi/xvba-driver/log/
Comment 8 Manuel Rüger (RETIRED) gentoo-dev 2015-01-06 18:04:01 UTC
(In reply to Marek from comment #7)
> I would actually deprecate xvba-video, since its development has literally
> ended in 2011, when the maintainer quitted, see:
> 
> http://cgit.freedesktop.org/vaapi/xvba-driver/log/

If we want to deprecate xvba-video, these are the deps we need to fix:
media-video/avidemux/avidemux-*.ebuild:    video_cards_fglrx? ( x11-libs/xvba-video:0 )
media-libs/avidemux-core/avidemux-core-*.ebuild:  video_cards_fglrx? ( x11-libs/xvba-video:0 )
x11-libs/libva/libva-*.ebuild:     video_cards_fglrx? ( >=x11-libs/xvba-video-0.8.0-r1[${MULTILIB_USEDEP}] )
Comment 9 Manuel Rüger (RETIRED) gentoo-dev 2015-01-06 18:48:27 UTC
As discussed on IRC, xvba-video will be deprecated (and probably removed from the tree when ati-drivers-14.12 becomes stabilized).

I'll pick the commit from x11 without additional IUSE (I'm sorry for the extra work here) and adjust the deps on the packages above to "|| ( x11-libs/xvba-video:0 >=x11-drivers/ati-drivers-14.12-r3 )".
Comment 10 emil karlson 2015-01-06 18:53:55 UTC
Heh, I already pushed new version, with conditional installation.
Comment 11 Manuel Rüger (RETIRED) gentoo-dev 2015-01-06 19:42:29 UTC
  06 Jan 2015; Manuel Rüger <mrueg@gentoo.org> libva-1.3.1.ebuild,
  libva-1.4.0.ebuild, libva-1.4.1.ebuild, libva-1.5.0.ebuild, libva-9999.ebuild:
  Update xvba dependency to use bundled vaapi in x11-drivers/ati-drivers. See
  bug #534710

  06 Jan 2015; Manuel Rüger <mrueg@gentoo.org> avidemux-core-2.6.5.ebuild,
  avidemux-core-2.6.7.ebuild, avidemux-core-2.6.8.ebuild,
  avidemux-core-9999.ebuild:
  Update xvba dependency to use bundled vaapi in x11-drivers/ati-drivers. See
  bug #534710

  06 Jan 2015; Manuel Rüger <mrueg@gentoo.org> avidemux-2.6.5-r1.ebuild,
  avidemux-2.6.5.ebuild, avidemux-2.6.7.ebuild, avidemux-2.6.8.ebuild,
  avidemux-9999.ebuild:
  Update xvba dependency to use bundled vaapi in x11-drivers/ati-drivers. See
  bug #534710


*ati-drivers-14.12-r3 (06 Jan 2015)

  06 Jan 2015; Manuel Rüger <mrueg@gentoo.org> +ati-drivers-14.12-r3.ebuild:
  Proxy commit for Emil Karlson. Fixes bug #534710 and bug #534398.


Should be all fixed.