Skip to content

Commit

Permalink
build: bump required FFmpeg/Libav libraries
Browse files Browse the repository at this point in the history
The af_lavrresample commit made compilation fail on Libav 10, so I think
it's time to require somewhat more recent dependencies.

Libav 11 is the latest release, and FFmpeg 2.4 seems to correspond to
Libav 11. So use these.

Also adjust the configure failure message. Instead of (accidentally)
printing the pkg-config versions twice, print the release version
numbers too. This is helpful, because the release version numbers are
completely different from the pkg-config ones.

I will probably remove some compatibility hacks in the following commits
too.
  • Loading branch information
wm4 committed Mar 3, 2015
1 parent 7031335 commit 5808f1c
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 17 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -45,7 +45,7 @@ Essential dependencies (incomplete list):
- Audio output development headers (libasound/ALSA, pulseaudio)
- FFmpeg libraries (libavutil libavcodec libavformat libswscale libavfilter
and either libswresample or libavresample)
At least FFmpeg 2.1.4 or Libav 10 is required.
At least FFmpeg 2.4.0 or Libav 11 is required.
- zlib
- iconv (normally provided by the system libc)
- libass (OSD, OSC, text subtitles)
Expand Down
10 changes: 5 additions & 5 deletions old-configure
Expand Up @@ -747,15 +747,15 @@ check_pkg_config "libbs2b audio filter support" $_libbs2b LIBBS2B 'libbs2b'
check_pkg_config "LCMS2 support" $_lcms2 LCMS2 'lcms2 >= 2.6'

check_pkg_config "FFmpeg/Libav" $_ffmpeg FFMPEG \
"libavutil >= 52.48.101 libavcodec >= 55.34.1 libavformat >= 55.12.0 libswscale >= 2.1.2"
"libavutil >= 54.02.0 libavcodec >= 56.1.0 libavformat >= 56.01.0 libswscale >= 2.1.3"
test $(defretval) = no && die "Unable to find development files for some of the required Libav libraries above. Aborting."

check_pkg_config "Libswresample" $_libswresample LIBSWRESAMPLE 'libswresample >= 0.17.104'
check_pkg_config "Libswresample" $_libswresample LIBSWRESAMPLE 'libswresample >= 1.1.100'
_libswresample=$(defretval)

_libavresample=auto
test $_libswresample = yes && _libavresample=no
check_pkg_config "Libavresample" $_libavresample LIBAVRESAMPLE 'libavresample >= 1.1.0'
check_pkg_config "Libavresample" $_libavresample LIBAVRESAMPLE 'libavresample >= 2.1.0'
_libavresample=$(defretval)

if test "$_libswresample" = no && test "$_libavresample" = no ; then
Expand Down Expand Up @@ -831,9 +831,9 @@ api_statement_check \
libavcodec/vdpau.h \
'AVVDPAUContext *x = av_vdpau_alloc_context()'

check_pkg_config "libavfilter" $_libavfilter LIBAVFILTER 'libavfilter >= 3.90.100'
check_pkg_config "libavfilter" $_libavfilter LIBAVFILTER 'libavfilter >= 5.0.0'

check_pkg_config "libavdevice" $_libavdevice LIBAVDEVICE 'libavdevice >= 54.0.0'
check_pkg_config "libavdevice" $_libavdevice LIBAVDEVICE 'libavdevice >= 55.0.0'

check_trivial "TV interface" $_tv TV

Expand Down
4 changes: 2 additions & 2 deletions travis-deps
Expand Up @@ -89,15 +89,15 @@ class Libav < TravisDepsBuilder
{
"libav-stable" => {
:action => :stable,
:url => 'http://libav.org/releases/libav-10.tar.gz'
:url => 'http://libav.org/releases/libav-11.tar.gz'
},
"libav-git" => {
:action => :git,
:url => "git://git.libav.org/libav.git"
},
"ffmpeg-stable" => {
:action => :stable,
:url => 'http://www.ffmpeg.org/releases/ffmpeg-2.1.4.tar.gz'
:url => 'http://www.ffmpeg.org/releases/ffmpeg-2.4.tar.gz'
},
"ffmpeg-git" => {
:action => :git,
Expand Down
19 changes: 10 additions & 9 deletions wscript
Expand Up @@ -370,11 +370,12 @@ iconv support use --disable-iconv.",
]

libav_pkg_config_checks = [
'libavutil', '>= 52.48.101',
'libavcodec', '>= 55.34.1',
'libavformat', '>= 55.12.0',
'libswscale', '>= 2.1.2'
'libavutil', '>= 54.02.0',
'libavcodec', '>= 56.1.0',
'libavformat', '>= 56.01.0',
'libswscale', '>= 2.1.3'
]
libav_versions_string = "FFmpeg 2.4 or Libav 11"

libav_dependencies = [
{
Expand All @@ -383,15 +384,15 @@ libav_dependencies = [
'func': check_pkg_config(*libav_pkg_config_checks),
'req': True,
'fmsg': "Unable to find development files for some of the required \
Libav libraries ({0}). Aborting.".format(" ".join(libav_pkg_config_checks))
FFmpeg/Libav libraries. You need at least {0}. Aborting.".format(libav_versions_string)
}, {
'name': '--libswresample',
'desc': 'libswresample',
'func': check_pkg_config('libswresample', '>= 0.17.104'),
'func': check_pkg_config('libswresample', '>= 1.1.100'),
}, {
'name': '--libavresample',
'desc': 'libavresample',
'func': check_pkg_config('libavresample', '>= 1.1.0'),
'func': check_pkg_config('libavresample', '>= 2.1.0'),
'deps_neg': ['libswresample'],
}, {
'name': 'resampler',
Expand All @@ -403,11 +404,11 @@ Libav libraries ({0}). Aborting.".format(" ".join(libav_pkg_config_checks))
}, {
'name': '--libavfilter',
'desc': 'libavfilter',
'func': check_pkg_config('libavfilter', '>= 3.90.100'),
'func': check_pkg_config('libavfilter', '>= 5.0.0'),
}, {
'name': '--libavdevice',
'desc': 'libavdevice',
'func': check_pkg_config('libavdevice', '>= 54.0.0'),
'func': check_pkg_config('libavdevice', '>= 55.0.0'),
}, {
'name': 'avcodec-chroma-pos-api',
'desc': 'libavcodec avcodec_enum_to_chroma_pos API',
Expand Down

0 comments on commit 5808f1c

Please sign in to comment.