XBMC crash with vaapi vdpau
Anonymous
swell.k at gmail.com
Sat Jan 8 14:11:59 UTC 2011
Mickaël Maillot <mickael.maillot at gmail.com> writes:
> Hi,
>
> i just tried the VAAPI / VDPAU option in XBMC (trunk) but i can't play
> video without crash and i don't know what can i do:
>
> (gdb) bt
> #0 0x0000000812e0e079 in __vaDriverInit_0_31_1_sds () from
> /usr/local/lib/va/nvidia_drv_video.so
> #1 0x0000000812e0cd8b in __vaDriverInit_0_31_1_sds () from
> /usr/local/lib/va/nvidia_drv_video.so
Does vainfo crash too? And you've compiled vdpau-video without debug
symbols, so no source lines.
Note, you need to define empty STRIP explicitly unless you apply the
diff in ports/153539. libva and vdpau-video are not the only ports
affected by the issue.
> also, i think we need to add two notes for the VAAPI option:
> - ffmpeg need also vaapi option
> - user need to install a vaapi backend (multimedia/vdpau-video)
A user needs to (manually) install x11/nvidia-driver for VDPAU option, too.
Should I add RUN_DEPENDS options to libvdpau/libva?
%%
Index: multimedia/libvdpau/Makefile
===================================================================
RCS file: /a/.cvsup/ports/multimedia/libvdpau/Makefile,v
retrieving revision 1.1
diff -u -p -r1.1 Makefile
--- multimedia/libvdpau/Makefile 24 Sep 2010 19:06:00 -0000 1.1
+++ multimedia/libvdpau/Makefile 8 Jan 2011 14:07:42 -0000
@@ -21,9 +24,17 @@
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/COPYING
+
+OPTIONS= NVIDIA "install Nvidia VDPAU driver" on
+
+.include <bsd.port.pre.mk>
+
+.if !defined(WITHOUT_NVIDIA)
+RUN_DEPENDS+= ${LOCALBASE}/lib/vdpau/libvdpau_nvidia.so.1:${PORTSDIR}/x11/nvidia-driver
+.endif
post-patch: .SILENT
${REINPLACE_CMD} 's|$$(libdir)/\(pkgconfig\)|$$(prefix)/libdata/\1|' \
${WRKSRC}/Makefile.in
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git multimedia/libva/Makefile multimedia/libva/Makefile
index 9292679..49697d4 100644
--- multimedia/libva/Makefile
+++ multimedia/libva/Makefile
@@ -34,6 +34,8 @@ LDFLAGS+= -L${LOCALBASE}/lib
# prevent types conflict: videodev2.h vs. drm.h
CFLAGS+= -DHAVE_LINUX_INTEGER_TYPES
+OPTIONS= VDPAU "install VDPAU-based VAAPI driver" on
+
.include <bsd.port.pre.mk>
.if !defined(WITH_DEBUG)
@@ -46,6 +48,10 @@ CFLAGS+= -D_DEBUG
INSTALL_TARGET= install-strip
.endif
+.if !defined(WITHOUT_VDPAU)
+RUN_DEPENDS+= ${LOCALBASE}/lib/va/vdpau_drv_video.so:${PORTSDIR}/multimedia/vdpau-video
+.endif
+
post-patch: .SILENT
${REINPLACE_CMD} -e 's|\($$libdir\)/dri|\1/va|' \
-e 's|$${libdir}/\(pkgconfig\)|$${prefix}/libdata/\1|' \
diff --git multimedia/vdpau-video/Makefile multimedia/vdpau-video/Makefile
index 5f02390..d4f340a 100644
--- multimedia/vdpau-video/Makefile
+++ multimedia/vdpau-video/Makefile
@@ -13,8 +13,8 @@ MASTER_SITES= http://www.splitted-desktop.com/~gbeauchesne/${PORTNAME}/
MAINTAINER= swell.k at gmail.com
COMMENT= A VDPAU-based backend for VAAPI
-LIB_DEPENDS= va.1:${PORTSDIR}/multimedia/libva \
- vdpau.1:${PORTSDIR}/multimedia/libvdpau
+BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/libva.pc:${PORTSDIR}/multimedia/libva
+LIB_DEPENDS= vdpau.1:${PORTSDIR}/multimedia/libvdpau
LICENSE= GPLv2 GPLv3
LICENSE_COMB= dual
%%
More information about the freebsd-multimedia
mailing list