Summary: | media-tv/xbmc-13.1 - xbmc uses bundled ffmpeg | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sebastian <sebastian_ml> |
Component: | Current packages | Assignee: | Gentoo Xbox project <xbox> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bkohler, krinpaus, media-video, rei4dan |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
ldd tree for xbmc-12.3
ldd tree for xbmc-13.1 xbmc-13.1-build.log.bz2 debian-patches.tar.bz2 xbmc-13.2-add-debian-patches-and-update-depends.patch xbmc-13.2-r1.ebuild |
Description
Sebastian
2014-08-04 18:07:08 UTC
What makes you think a bundled ffmpeg is being used? I think the ebuild may build a copy but it's discarded. AFAIK, XBMC doesn't support external FFmpeg. Although it looks like 14.0 will once again support external FFmpeg (In reply to Sebastian from comment #0) > ldd /usr/lib64/xbmc/xbmc.bin You should use a better tool than ldd. `lddtree' will format the output to make a clear distinction of directly and indirectly linked libraries. `scanelf -n' will show only directly linked libraries. And as said, we need a little more "proof" of vlc using its internal ffmpeg libraries. The ldd output doesn't show that. Created attachment 382356 [details]
ldd tree for xbmc-12.3
Created attachment 382358 [details]
ldd tree for xbmc-13.1
I've added the lddtree output for xbmc-12.3 and xbmc-13.1. When comparing the two it appears that at least the following libraries aren't dynamically linked to anymore: dev-libs/openssl media-video/ffmpeg media-libs/libsamplerate media-video/rtmpdump Kind regards, Sebastian XBMC also requires some custom FFmpeg patches that the Gentoo FFmpeg guys probably wouldn't want to add. On a semi-related note, as of now the bundled ffmpeg ignores the job settings and defaults to -j2. Per tools/buildsteps/README we should set BUILDTHREADS for the configure call to do that. Please attach the entire media-tv/xbmc-13.1 build log to this bug report. https://github.com/xbmc/xbmc/tree/13.1-Gotham/lib/ffmpeg/patches Here are all the patches they apply to the bundled ffmpeg (1.2?) in 13.1. Also: https://github.com/xbmc/xbmc/commit/e211654714b2266b80ba65361bda8f715d47933a I will also add that the current alpha for 14.0 supports external FFmpeg again, but sadly that doesn't really matter since it still requires custom patches. Created attachment 382782 [details]
xbmc-13.1-build.log.bz2
yeah, there's not a whole lot we can do here since xbmc upstream is diverging from ffmpeg so much Basically, they removed support for external ffmpeg while they cleaned up their code base. 14.0+ (aka Kodi) will support external ffmpeg. Currently it still requires at least one extra patch. In my quick test, https://github.com/xbmc/xbmc/blob/13.1-Gotham/lib/ffmpeg/patches/0024-add-public-version-of-ff_read_frame_flush.patch was the only thing that needed to be applied to media-video/ffmpeg-2.2.5. (although my testing was just commenting out the offending XBMC code and seeing it compiled) Created attachment 385674 [details]
debian-patches.tar.bz2
This is a bunch of patches from Debian sid. I didn't change them. I took all their patches except the one where they debianized the version string etc.
Created attachment 385676 [details, diff]
xbmc-13.2-add-debian-patches-and-update-depends.patch
Apply debian's patches. Fix the depends accordingly.
Created attachment 385678 [details]
xbmc-13.2-r1.ebuild
Same thing as before, only as a full ebuild (r1).
With the debian patches xbmc again works fine with external ffmpeg (plus external libsidpay, libhdhomerun and libdvdread). I saw the comment about xbmc's ffmpeg patchset. But using an internal ffmpeg is just too wrong to care :) I just wanted to add a link to an upstream discussion about the entire topic: https://github.com/xbmc/xbmc/pull/4005 media-tv/kodi-14.1 should use the system ffmpeg now. lets see how long that sticks :). |