ffmpeg: detect which ffmpeg headers should be included
Since ffmpeg svn r12865, you have to include libavcodec/avcodec.h instead of avcodec.h. This cannot be checked at compile time, instead we have to add a check to configure.ac. Viliam's original ffmpeg plugin was based on the newer ffmpeg library, while my Debian installation had the older version. My attempt to correct his include statements wasn't correct after all.
This commit is contained in:
11
configure.ac
11
configure.ac
@@ -689,6 +689,17 @@ if test x$enable_ffmpeg = xyes; then
|
||||
enable_ffmpeg=no)
|
||||
fi
|
||||
|
||||
if test x$enable_ffmpeg = xyes; then
|
||||
# prior to ffmpeg svn12865, you had to specify include files
|
||||
# without path prefix
|
||||
old_CPPCFLAGS=$CPPFLAGS
|
||||
CPPFLAGS="$CPPFLAGS $FFMPEG_CFLAGS"
|
||||
AC_CHECK_HEADER(libavcodec/avcodec.h,,
|
||||
AC_DEFINE(OLD_FFMPEG_INCLUDES, 1,
|
||||
[Define if avcodec.h instead of libavcodec/avcodec.h should be included]))
|
||||
CPPCFLAGS=$old_CPPFLAGS
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_FFMPEG, test x$enable_ffmpeg = xyes)
|
||||
|
||||
case $with_zeroconf in
|
||||
|
@@ -29,9 +29,15 @@
|
||||
#include <sys/stat.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#ifdef OLD_FFMPEG_INCLUDES
|
||||
#include <avcodec.h>
|
||||
#include <avformat.h>
|
||||
#include <avio.h>
|
||||
#else
|
||||
#include <libavcodec/avcodec.h>
|
||||
#include <libavformat/avformat.h>
|
||||
#include <libavformat/avio.h>
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
int audioStream;
|
||||
|
Reference in New Issue
Block a user