[FFmpeg-trac] #3958(avcodec:open): libvpx symbol check missing in configure, build-time error

FFmpeg trac at avcodec.org
Mon Sep 22 15:06:51 CEST 2014


#3958: libvpx symbol check missing in configure, build-time error
-------------------------------------+-------------------------------------
             Reporter:  saste        |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  important    |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  libvpx       |               Blocked By:
  regression                         |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  1            |
-------------------------------------+-------------------------------------

Comment (by benoit):

 I don't know how this could be checked without using the configure script.
 Here is an attempt to do it by adding an 'experimental' libvpx
 configuration:
 {{{
 diff --git a/configure b/configure
 index 9b294f8..388e36a 100755
 --- a/configure
 +++ b/configure
 @@ -1845,6 +1845,7 @@ CONFIG_EXTRA="
      iirfilter
      intrax8
      lgplv3
 +    libvpx_experimental
      llauddsp
      llviddsp
      lpc
 @@ -4863,7 +4864,9 @@ enabled libvpx            && {
      enabled libvpx_vp8_encoder && { check_lib2 "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"; }
      enabled libvpx_vp9_decoder && { check_lib2 "vpx/vpx_decoder.h
 vpx/vp8dx.h" "vpx_codec_vp9_dx" -lvpx || disable libvpx_vp9_decoder; }
 -    enabled libvpx_vp9_encoder && { check_lib2 "vpx/vpx_encoder.h
 vpx/vp8cx.h" "vpx_codec_vp9_cx VP9E_SET_AQ_MODE" -lvpx || disable
 libvpx_vp9_encoder; } }
 +    enabled libvpx_vp9_encoder && { check_lib2 "vpx/vpx_encoder.h
 vpx/vp8cx.h" "vpx_codec_vp9_cx VP9E_SET_AQ_MODE" -lvpx || disable
 libvpx_vp9_encoder; }
 +    check_lib2 vpx/vpx_image.h "VPX_IMG_FMT_I422 VPX_IMG_FMT_I444" &&
 enable libvpx_experimental;
 +}
  enabled libwavpack        && require libwavpack wavpack/wavpack.h
 WavpackOpenFileOutput  -lwavpack
  enabled libwebp           && require_pkg_config "libwebp >= 0.2.0"
 webp/encode.h WebPGetEncoderVersion
  enabled libx264           && require libx264 x264.h x264_encoder_encode
 -lx264 &&
 diff --git a/libavcodec/libvpxdec.c b/libavcodec/libvpxdec.c
 index 8312460..cbb6d0d 100644
 --- a/libavcodec/libvpxdec.c
 +++ b/libavcodec/libvpxdec.c
 @@ -68,12 +68,14 @@ static int set_pix_fmt(AVCodecContext *avctx, struct
 vpx_image *img) {
          case VPX_IMG_FMT_I420:
              avctx->pix_fmt = AV_PIX_FMT_YUV420P;
              return 0;
 +#if CONFIG_LIBVPX_EXPERIMENTAL
          case VPX_IMG_FMT_I422:
              avctx->pix_fmt = AV_PIX_FMT_YUV422P;
              return 0;
          case VPX_IMG_FMT_I444:
              avctx->pix_fmt = AV_PIX_FMT_YUV444P;
              return 0;
 +#endif
  #ifdef VPX_IMG_FMT_HIGHBITDEPTH
          case VPX_IMG_FMT_I42016:
              if (img->bit_depth == 10) {
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/3958#comment:2>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list