Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Debian build fixes #4354

Closed
wants to merge 4 commits into from

4 participants

@rbalint

Hi,
I needed those changes for building the Debian package and I think they would be useful in vanilla XBMC, too.

@MartijnKaijser

external FFMPEG got removed for a reason. You are trying to bypass that again. We do not want anyone to use external FFMPEG as it can/will cause issues. Besides PRs should always be done to master repo unless one of our release managers says so.

@rbalint

Please note that XBMC (from Debian) 12.3 works pretty well for many users with external ffmpeg:
http://packages.qa.debian.org/x/xbmc.html
Please also note that the I have discussed the support for using external libraries and it is provided in Debian:
http://forum.xbmc.org/showthread.php?tid=177474&pid=1599224#pid1599224
http://balintreczey.hu/blog/introducing-xbmc-from-debian/
I noticed and understand that --enable-external-ffmpeg has been removed from ./configure's parameters to not let XBMC users enable it easily. I have not touched that part, I don't want to get the XBMC project flooded with bug reports.
I still carry a lot of patches in Debian which I don't want to push upstream, but if you check the ones I offered here I think you will find then acceptable.
I have just uploaded Gotham Beta1 to Debian experimental and it works nicely.

I will create a PR against master.

@rbalint rbalint referenced this pull request
Closed

Debian build fixes #4358

@rbalint

@FernetMenta Thanks, it seems sooner or later I can get reasonable answers. :-)

@FernetMenta
Collaborator

as you can see from the commits, support for shared libs is back but we require an up-to-date version of ffmpeg. the wrapper which enabled support for libav and libav-hacks is dropped. this was neither maintained nor tested by anybody.
once you have switched back to ffmpeg at debian we will be back to normal. looking forward to this,

@rbalint

OK. As a side note libav-hacks is being used in Debian and seems to work well.

@FernetMenta
Collaborator

http://forum.xbmc.org/showthread.php?tid=188443

you have just created a piece of crap. ruined great software, well done :(

@rbalint

I have nothing to do with this report.
Debian's official packages' start log looks like this:
14:44:31 T:2998331840 NOTICE: Starting XBMC from Debian (13.0-BETA1 Debian package version:2:13.0~beta1+dfsg1-1). Platform: x86 Linux 32-bit

The log linked in the bug report looks like the official XBMC's one:
21:01:33 T:140173132462080 NOTICE: Starting XBMC (13.0-BETA1 Git:Unknown). Platform: x86 Linux 64-bit

@stefansaraev
Collaborator
21:01:45 T:140172441245440   DEBUG: DllAvUtilBase: Using libavutil system library
21:01:45 T:140172441245440   DEBUG: DllAvCodec: Using libavcodec system library
21:01:45 T:140172441245440   DEBUG: DllAvFormat: Using libavformat system library

whoever built that debian package. it does NOT use xbmc's ffmpeg. it uses EXTERNAL ffmpeg. so yea libavhack "seems to work" != "it works"

@rbalint

@stefansaraev It uses external ffmpeg, but not the libav-hack
@FernetMenta I have just checked and the package I created from XBMC for Debian experimental exits to XBMC menu instead of hanging after the corrupt file becomes totally unusable

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Mar 6, 2014
  1. @rbalint
  2. @rbalint
  3. @rbalint

    Use NULL from cstddef

    rbalint authored
    This fixes build when GIT_REV is not defined.
  4. @rbalint
This page is out of date. Refresh to see the latest.
View
3  configure.in
@@ -874,6 +874,9 @@ elif test "$use_arch" = "arm"; then
fi
fi
fi
+if test "$use_static_ffmpeg" = "yes" -a "$use_external_ffmpeg" = "yes"; then
+ use_static_ffmpeg=no
+fi
if test "$use_static_ffmpeg" = "yes"; then
USE_STATIC_FFMPEG=1
AC_DEFINE([USE_STATIC_FFMPEG], [1], [link ffmpeg statically])
View
2  lib/Makefile.in
@@ -87,12 +87,14 @@ ffmpeg/libswresample/libswresample.a : ffmpeg;
endif
ffmpeg:
+ifneq (@USE_EXTERNAL_FFMPEG@,1)
$(MAKE) -C $@
ifeq ($(findstring osx,$(ARCH)), osx)
-$(AR) d ffmpeg/libavcodec/libavcodec.a log2_tab.o
-$(AR) d ffmpeg/libavformat/libavformat.a log2_tab.o
-$(AR) d ffmpeg/libswresample/libswresample.a log2_tab.o
endif
+endif
clean:
rm -f $(addprefix $(SYSDIR)/, $(LIBS))
View
5 lib/xbmc-libav-hacks/libav_hacks.h
@@ -35,6 +35,11 @@
#error "Your libav version is too old. Please update to libav-10 or git master."
#endif
+// libavcodec
+
+// AVCodecContext does not have pkt_timebase member
+#define pkt_timebase time_base
+
// libavutil
#define AVFRAME_IN_LAVU
View
2  xbmc/GitRevision.cpp
@@ -20,6 +20,8 @@
#include "GitRevision.h"
+#include <cstddef>
+
#if defined(TARGET_DARWIN) || (defined(TARGET_WINDOWS) && !defined(_DEBUG))
#include "../git_revision.h" // generated file
#endif
Something went wrong with that request. Please try again.