[FFmpeg-trac] #5417(avcodec:new): Cannot build ffmpeg with --enable-libopenh264

FFmpeg trac at avcodec.org
Sat Apr 9 14:54:02 CEST 2016


#5417: Cannot build ffmpeg with --enable-libopenh264
-------------------------------------+-------------------------------------
             Reporter:  Sauron       |                     Type:  defect
               Status:  new          |                 Priority:  important
            Component:  avcodec      |                  Version:  git-
             Keywords:  libopenh264  |  master
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
 Summary of the bug:
 How to reproduce:
 {{{
 $ ./configure --enable-fontconfig --enable-gcrypt --enable-libbluray
 --enable-libcelt --enable-libfreetype --enable-libfribidi --enable-libgsm
 --enable-libmodplug --enable-libmp3lame --enable-libopenh264 --enable-
 libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr
 --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-libvorbis
 --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libxcb
 --enable-libxcb-shm --enable-libxcb-xfixes --enable-libxcb-shape --enable-
 opengl --enable-openssl --enable-gpl --enable-nonfree --enable-version3
 $ make
 }}}
 Output:
 {{{
 libavcodec/libopenh264enc.c:54:85: error: ‘SM_AUTO_SLICE’ undeclared here
 (not in a function)
      { "slice_mode", "set slice mode", OFFSET(slice_mode),
 AV_OPT_TYPE_INT, { .i64 = SM_AUTO_SLICE }, SM_SINGLE_SLICE, SM_RESERVED,
 VE, "slice_mode" },
 ^
 libavcodec/libopenh264enc.c:56:87: error: ‘SM_ROWMB_SLICE’ undeclared here
 (not in a function)
          { "rowmb", "one slice per row of macroblocks", 0,
 AV_OPT_TYPE_CONST, { .i64 = SM_ROWMB_SLICE }, 0, 0, VE, "slice_mode" },
 ^
 libavcodec/libopenh264enc.c:58:68: error: ‘SM_DYN_SLICE’ undeclared here
 (not in a function)
          { "dyn", "Dynamic slicing", 0, AV_OPT_TYPE_CONST, { .i64 =
 SM_DYN_SLICE }, 0, 0, VE, "slice_mode" },
                                                                     ^
 libavcodec/libopenh264enc.c: In function ‘svc_encode_init’:
 libavcodec/libopenh264enc.c:196:23: warning: assignment makes integer from
 pointer without a cast [enabled by default]
          s->slice_mode = SM_DYN_SLICE;
                        ^
 libavcodec/libopenh264enc.c:198:28: error: ‘SSpatialLayerConfig’ has no
 member named ‘sSliceCfg’
      param.sSpatialLayers[0].sSliceCfg.uiSliceMode               =
 s->slice_mode;
                             ^
 libavcodec/libopenh264enc.c:198:38: error: request for member
 ‘uiSliceMode’ in something not a structure or union
      param.sSpatialLayers[0].sSliceCfg.uiSliceMode               =
 s->slice_mode;
                                       ^
 libavcodec/libopenh264enc.c:198:5: warning: statement with no effect
 [-Wunused-value]
      param.sSpatialLayers[0].sSliceCfg.uiSliceMode               =
 s->slice_mode;
      ^
 libavcodec/libopenh264enc.c:199:28: error: ‘SSpatialLayerConfig’ has no
 member named ‘sSliceCfg’
      param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum =
 avctx->slices;
                             ^
 libavcodec/libopenh264enc.c:199:38: error: request for member
 ‘sSliceArgument’ in something not a structure or union
      param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum =
 avctx->slices;
                                       ^
 libavcodec/libopenh264enc.c:199:53: error: request for member ‘uiSliceNum’
 in something not a structure or union
      param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum =
 avctx->slices;
                                                      ^
 libavcodec/libopenh264enc.c:199:5: warning: statement with no effect
 [-Wunused-value]
      param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum =
 avctx->slices;
      ^
 libavcodec/libopenh264enc.c:201:23: warning: comparison between pointer
 and integer [enabled by default]
      if (s->slice_mode == SM_DYN_SLICE) {
                        ^
 libavcodec/libopenh264enc.c:204:36: error: ‘SSpatialLayerConfig’ has no
 member named ‘sSliceCfg’
 param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint =
 s->max_nal_size;
                                     ^
 libavcodec/libopenh264enc.c:204:46: error: request for member
 ‘sSliceArgument’ in something not a structure or union
 param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint =
 s->max_nal_size;
                                               ^
 libavcodec/libopenh264enc.c:204:61: error: request for member
 ‘uiSliceSizeConstraint’ in something not a structure or union
 param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint =
 s->max_nal_size;
                                                              ^
 libavcodec/libopenh264enc.c:204:13: warning: statement with no effect
 [-Wunused-value]
 param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint =
 s->max_nal_size;
              ^
 common.mak:60: ошибка выполнения рецепта для цели
 «libavcodec/libopenh264enc.o»
 }}}

 Used the last snapshot of libopenh264 from
 https://github.com/cisco/openh264.

 ffmpeg version: N-79222-gc9ad357 (from VERSION file)

--
Ticket URL: <https://trac.ffmpeg.org/ticket/5417>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list