diff mbox

[FFmpeg-devel,1/4] configure: require libvpx-1.4.0 for vp[89] support

Message ID 20171118015008.123256-1-jzern@google.com
State Accepted
Commit b765a04550ff6f954a57bf28158511d260f2e087
Headers show

Commit Message

James Zern Nov. 18, 2017, 1:50 a.m. UTC
this will simplify libvpxenc/dec.c and ensure more stable versions of
the codecs are present.

Signed-off-by: James Zern <jzern@google.com>
---
 configure | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

Comments

James Almer Nov. 19, 2017, 2:03 p.m. UTC | #1
On 11/17/2017 10:50 PM, James Zern wrote:
> this will simplify libvpxenc/dec.c and ensure more stable versions of
> the codecs are present.
> 
> Signed-off-by: James Zern <jzern@google.com>
> ---
>  configure | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/configure b/configure
> index c8e2e35192..bfb1d9ab3a 100755
> --- a/configure
> +++ b/configure
> @@ -5895,22 +5895,22 @@ enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
>  
>  enabled libvpx            && {
>      enabled libvpx_vp8_decoder && {
> -        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
> -            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
> -                die "ERROR: libvpx decoder version must be >=0.9.1";
> +        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
> +            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||

VPX_CODEC_CAP_HIGHBITDEPTH seems to be defined in vpx_encoder.h
Is that included in vp8dx.h?

> +                die "ERROR: libvpx decoder version must be >=1.4.0";
>      }
>      enabled libvpx_vp8_encoder && {
> -        check_pkg_config libvpx_vp8_encoder "vpx >= 0.9.7" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp8_cx ||
> -            check_lib libvpx_vp8_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_enc_init_ver VP8E_SET_MAX_INTRA_BITRATE_PCT" -lvpx ||
> -                die "ERROR: libvpx encoder version must be >=0.9.7";
> +        check_pkg_config libvpx_vp8_encoder "vpx >= 1.4.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp8_cx ||
> +            check_lib libvpx_vp8_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_enc_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
> +                die "ERROR: libvpx encoder version must be >=1.4.0";
>      }
>      enabled libvpx_vp9_decoder && {
> -        check_pkg_config libvpx_vp9_decoder "vpx >= 1.3.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp9_dx ||
> -            check_lib libvpx_vp9_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_vp9_dx" -lvpx
> +        check_pkg_config libvpx_vp9_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp9_dx ||
> +            check_lib libvpx_vp9_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_vp9_dx VPX_IMG_FMT_HIGHBITDEPTH" -lvpx
>      }
>      enabled libvpx_vp9_encoder && {
> -        check_pkg_config libvpx_vp9_encoder "vpx >= 1.3.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp9_cx ||
> -            check_lib libvpx_vp9_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_vp9_cx VP9E_SET_AQ_MODE" -lvpx
> +        check_pkg_config libvpx_vp9_encoder "vpx >= 1.4.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp9_cx ||
> +            check_lib libvpx_vp9_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_vp9_cx VPX_IMG_FMT_HIGHBITDEPTH" -lvpx
>      }
>      if disabled_all libvpx_vp8_decoder libvpx_vp9_decoder libvpx_vp8_encoder libvpx_vp9_encoder; then
>          die "libvpx enabled but no supported decoders found"
>
James Zern Nov. 20, 2017, 7:17 p.m. UTC | #2
On Sun, Nov 19, 2017 at 6:03 AM, James Almer <jamrial@gmail.com> wrote:
> On 11/17/2017 10:50 PM, James Zern wrote:
>> this will simplify libvpxenc/dec.c and ensure more stable versions of
>> the codecs are present.
>>
>> Signed-off-by: James Zern <jzern@google.com>
>> ---
>>  configure | 20 ++++++++++----------
>>  1 file changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/configure b/configure
>> index c8e2e35192..bfb1d9ab3a 100755
>> --- a/configure
>> +++ b/configure
>> @@ -5895,22 +5895,22 @@ enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
>>
>>  enabled libvpx            && {
>>      enabled libvpx_vp8_decoder && {
>> -        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>> -            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
>> -                die "ERROR: libvpx decoder version must be >=0.9.1";
>> +        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>> +            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
>
> VPX_CODEC_CAP_HIGHBITDEPTH seems to be defined in vpx_encoder.h
> Is that included in vp8dx.h?
>

Good catch, I forgot this has since moved. I'll make this one
VP9D_GET_FRAME_SIZE like I had when I made a pass at this previously.
James Zern Nov. 20, 2017, 7:38 p.m. UTC | #3
On Mon, Nov 20, 2017 at 11:17 AM, James Zern <jzern@google.com> wrote:
> On Sun, Nov 19, 2017 at 6:03 AM, James Almer <jamrial@gmail.com> wrote:
>> On 11/17/2017 10:50 PM, James Zern wrote:
>>> this will simplify libvpxenc/dec.c and ensure more stable versions of
>>> the codecs are present.
>>>
>>> Signed-off-by: James Zern <jzern@google.com>
>>> ---
>>>  configure | 20 ++++++++++----------
>>>  1 file changed, 10 insertions(+), 10 deletions(-)
>>>
>>> diff --git a/configure b/configure
>>> index c8e2e35192..bfb1d9ab3a 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -5895,22 +5895,22 @@ enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
>>>
>>>  enabled libvpx            && {
>>>      enabled libvpx_vp8_decoder && {
>>> -        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>> -            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
>>> -                die "ERROR: libvpx decoder version must be >=0.9.1";
>>> +        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>> +            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
>>
>> VPX_CODEC_CAP_HIGHBITDEPTH seems to be defined in vpx_encoder.h
>> Is that included in vp8dx.h?
>>
>
> Good catch, I forgot this has since moved. I'll make this one
> VP9D_GET_FRAME_SIZE like I had when I made a pass at this previously.

Actually I misread here. This is checking VPX_IMG_FMT_HIGHBITDEPTH
which was post-1.3.0 and comes from vpx_codec.h -> vpx_image.h which
both vpx_encoder/decoder include. It came in with the same change as
VPX_CODEC_CAP_HIGHBITDEPTH.
James Almer Nov. 20, 2017, 7:51 p.m. UTC | #4
On 11/20/2017 4:38 PM, James Zern wrote:
> On Mon, Nov 20, 2017 at 11:17 AM, James Zern <jzern@google.com> wrote:
>> On Sun, Nov 19, 2017 at 6:03 AM, James Almer <jamrial@gmail.com> wrote:
>>> On 11/17/2017 10:50 PM, James Zern wrote:
>>>> this will simplify libvpxenc/dec.c and ensure more stable versions of
>>>> the codecs are present.
>>>>
>>>> Signed-off-by: James Zern <jzern@google.com>
>>>> ---
>>>>  configure | 20 ++++++++++----------
>>>>  1 file changed, 10 insertions(+), 10 deletions(-)
>>>>
>>>> diff --git a/configure b/configure
>>>> index c8e2e35192..bfb1d9ab3a 100755
>>>> --- a/configure
>>>> +++ b/configure
>>>> @@ -5895,22 +5895,22 @@ enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
>>>>
>>>>  enabled libvpx            && {
>>>>      enabled libvpx_vp8_decoder && {
>>>> -        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>>> -            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
>>>> -                die "ERROR: libvpx decoder version must be >=0.9.1";
>>>> +        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>>> +            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
>>>
>>> VPX_CODEC_CAP_HIGHBITDEPTH seems to be defined in vpx_encoder.h
>>> Is that included in vp8dx.h?
>>>
>>
>> Good catch, I forgot this has since moved. I'll make this one
>> VP9D_GET_FRAME_SIZE like I had when I made a pass at this previously.
> 
> Actually I misread here. This is checking VPX_IMG_FMT_HIGHBITDEPTH
> which was post-1.3.0 and comes from vpx_codec.h -> vpx_image.h which
> both vpx_encoder/decoder include. It came in with the same change as
> VPX_CODEC_CAP_HIGHBITDEPTH.

Ah, my mistake then. I mixed the two defines.

Should be good then.
James Zern Nov. 21, 2017, 12:28 a.m. UTC | #5
On Mon, Nov 20, 2017 at 11:51 AM, James Almer <jamrial@gmail.com> wrote:
> On 11/20/2017 4:38 PM, James Zern wrote:
>> On Mon, Nov 20, 2017 at 11:17 AM, James Zern <jzern@google.com> wrote:
>>> On Sun, Nov 19, 2017 at 6:03 AM, James Almer <jamrial@gmail.com> wrote:
>>>> On 11/17/2017 10:50 PM, James Zern wrote:
>>>>> this will simplify libvpxenc/dec.c and ensure more stable versions of
>>>>> the codecs are present.
>>>>>
>>>>> Signed-off-by: James Zern <jzern@google.com>
>>>>> ---
>>>>>  configure | 20 ++++++++++----------
>>>>>  1 file changed, 10 insertions(+), 10 deletions(-)
>>>>>
>>>>> diff --git a/configure b/configure
>>>>> index c8e2e35192..bfb1d9ab3a 100755
>>>>> --- a/configure
>>>>> +++ b/configure
>>>>> @@ -5895,22 +5895,22 @@ enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
>>>>>
>>>>>  enabled libvpx            && {
>>>>>      enabled libvpx_vp8_decoder && {
>>>>> -        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>>>> -            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
>>>>> -                die "ERROR: libvpx decoder version must be >=0.9.1";
>>>>> +        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
>>>>> +            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
>>>>
>>>> VPX_CODEC_CAP_HIGHBITDEPTH seems to be defined in vpx_encoder.h
>>>> Is that included in vp8dx.h?
>>>>
>>>
>>> Good catch, I forgot this has since moved. I'll make this one
>>> VP9D_GET_FRAME_SIZE like I had when I made a pass at this previously.
>>
>> Actually I misread here. This is checking VPX_IMG_FMT_HIGHBITDEPTH
>> which was post-1.3.0 and comes from vpx_codec.h -> vpx_image.h which
>> both vpx_encoder/decoder include. It came in with the same change as
>> VPX_CODEC_CAP_HIGHBITDEPTH.
>
> Ah, my mistake then. I mixed the two defines.
>
> Should be good then.

Tested some configs locally and then applied. Thanks for having a look.
diff mbox

Patch

diff --git a/configure b/configure
index c8e2e35192..bfb1d9ab3a 100755
--- a/configure
+++ b/configure
@@ -5895,22 +5895,22 @@  enabled libvorbis         && require_pkg_config libvorbis vorbis vorbis/codec.h
 
 enabled libvpx            && {
     enabled libvpx_vp8_decoder && {
-        check_pkg_config libvpx_vp8_decoder "vpx >= 0.9.1" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
-            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_dec_init_ver -lvpx ||
-                die "ERROR: libvpx decoder version must be >=0.9.1";
+        check_pkg_config libvpx_vp8_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp8_dx ||
+            check_lib libvpx_vp8_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_dec_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
+                die "ERROR: libvpx decoder version must be >=1.4.0";
     }
     enabled libvpx_vp8_encoder && {
-        check_pkg_config libvpx_vp8_encoder "vpx >= 0.9.7" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp8_cx ||
-            check_lib libvpx_vp8_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_enc_init_ver VP8E_SET_MAX_INTRA_BITRATE_PCT" -lvpx ||
-                die "ERROR: libvpx encoder version must be >=0.9.7";
+        check_pkg_config libvpx_vp8_encoder "vpx >= 1.4.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp8_cx ||
+            check_lib libvpx_vp8_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_enc_init_ver VPX_IMG_FMT_HIGHBITDEPTH" -lvpx ||
+                die "ERROR: libvpx encoder version must be >=1.4.0";
     }
     enabled libvpx_vp9_decoder && {
-        check_pkg_config libvpx_vp9_decoder "vpx >= 1.3.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp9_dx ||
-            check_lib libvpx_vp9_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_vp9_dx" -lvpx
+        check_pkg_config libvpx_vp9_decoder "vpx >= 1.4.0" "vpx/vpx_decoder.h vpx/vp8dx.h" vpx_codec_vp9_dx ||
+            check_lib libvpx_vp9_decoder "vpx/vpx_decoder.h vpx/vp8dx.h" "vpx_codec_vp9_dx VPX_IMG_FMT_HIGHBITDEPTH" -lvpx
     }
     enabled libvpx_vp9_encoder && {
-        check_pkg_config libvpx_vp9_encoder "vpx >= 1.3.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp9_cx ||
-            check_lib libvpx_vp9_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_vp9_cx VP9E_SET_AQ_MODE" -lvpx
+        check_pkg_config libvpx_vp9_encoder "vpx >= 1.4.0" "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_vp9_cx ||
+            check_lib libvpx_vp9_encoder "vpx/vpx_encoder.h vpx/vp8cx.h" "vpx_codec_vp9_cx VPX_IMG_FMT_HIGHBITDEPTH" -lvpx
     }
     if disabled_all libvpx_vp8_decoder libvpx_vp9_decoder libvpx_vp8_encoder libvpx_vp9_encoder; then
         die "libvpx enabled but no supported decoders found"