[FFmpeg-devel] [PATCH]configure: Fix libopus detection
Aaron Levinson
alevinsn at aracnet.com
Wed May 3 01:01:46 EEST 2017
On 4/25/2017 1:19 AM, Carl Eugen Hoyos wrote:
> 2017-04-13 1:08 GMT+02:00 Carl Eugen Hoyos <ceffmpeg at gmail.com>:
>> 2017-03-30 1:52 GMT+02:00 James Almer <jamrial at gmail.com>:
>>> On 3/29/2017 7:47 PM, Carl Eugen Hoyos wrote:
>>>> Hi!
>>>>
>>>> Attached patch fixes a compilation error here.
>>>>
>>>> Please test for success, Carl Eugen
>>>>
>>>>
>>>> 0001-configure-Fix-libopus-detection.patch
>>>>
>>>>
>>>> From 600b568651c60f8de609f211c814b5cd0640e584 Mon Sep 17 00:00:00 2001
>>>> From: Carl Eugen Hoyos <cehoyos at ag.or.at>
>>>> Date: Thu, 30 Mar 2017 00:45:06 +0200
>>>> Subject: [PATCH] configure: Fix libopus detection.
>>>>
>>>> Avoids a compilation error for old libopus.
>>>> Regression since 37941878
>>>> ---
>>>> configure | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/configure b/configure
>>>> index a84b126..76a287e 100755
>>>> --- a/configure
>>>> +++ b/configure
>>>> @@ -5797,7 +5797,7 @@ enabled libopenjpeg && { { check_lib openjpeg-2.1/openjpeg.h opj_version -
>>>> { check_lib openjpeg.h opj_version -lopenjpeg -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } ||
>>>> die "ERROR: libopenjpeg not found"; }
>>>> enabled libopenmpt && require_pkg_config "libopenmpt >= 0.2.6557" libopenmpt/libopenmpt.h openmpt_module_create
>>>> -enabled libopus && require_pkg_config opus opus_multistream.h opus_multistream_decoder_create
>>>> +enabled libopus && require_pkg_config opus opus_multistream.h opus_multistream_surround_encoder_create
>>>
>>> Should be ok,
>>
>>> but strictly speaking, this function is needed by the
>>> encoder and not the decoder. Something like
>>>
>>> enabled libopus && {
>>> enabled libopus_decoder && {
>>> require_pkg_config opus opus_multistream.h opus_multistream_decoder_create
>>> }
>>> enabled libopus_encoder && {
>>> use_pkg_config "opus >= 1.1" opus_multistream.h opus_multistream_surround_encoder_create ||
>>> disable libopus_encoder;
>>> }
>>> }
>>
>> Please commit this if you prefer it.
>
> Ping.
Perhaps you could submit a new patch that modifies configure in the
fashion suggested by James Almer. Technically, it is possible to enable
the libopus decoder independently of the libopus encoder, and if that is
done, it won't build libopusenc.c. But, with your original patch, it
won't even permit configure to succeed even though such a build would be
possible. It is true that the approach currently taken in configure
doesn't distinguish between encoding and decoding, but the patch as
originally proposed just trades decoding API requirements for encoding
API requirements.
Aaron Levinson
More information about the ffmpeg-devel
mailing list