Opened 2 years ago

Closed 2 years ago

#5511 closed defect (fixed)

libutvideodec compile error with utvideo 15.4.0 and later.

Reported by: s172262 Owned by:
Priority: normal Component: build system
Version: git-master Keywords: libutvideo
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:UtVideo's Format.h is not include.
How to reproduce:Building ffmpeg with libutvideo 15.0.0 and later.

...
In file included from libavcodec/libutvideodec.cpp:29:
In file included from libavcodec/avcodec.h:31:
In file included from ./libavutil/samplefmt.h:24:
In file included from ./libavutil/avutil.h:288:
In file included from ./libavutil/common.h:467:
In file included from ./libavutil/internal.h:39:
In file included from ./libavutil/timer.h:36:
In file included from /Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/mach_time.h:32:
In file included from /Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/mach_types.h:109:
/Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/kmod.h:45:5: warning: 
      'PRAGMA_MARK' is not defined, evaluates to 0 [-Wundef]
#if PRAGMA_MARK
    ^
/Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/kmod.h:62:5: warning: 
      'PRAGMA_MARK' is not defined, evaluates to 0 [-Wundef]
#if PRAGMA_MARK
    ^
/Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/kmod.h:138:5: warning: 
      'PRAGMA_MARK' is not defined, evaluates to 0 [-Wundef]
#if PRAGMA_MARK
    ^
/Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/kmod.h:160:5: warning: 
      'PRAGMA_MARK' is not defined, evaluates to 0 [-Wundef]
#if PRAGMA_MARK
    ^
/Applications/Xcode.app//Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/mach/kmod.h:168:5: warning: 
      'PRAGMA_MARK' is not defined, evaluates to 0 [-Wundef]
#if PRAGMA_MARK
    ^
libavcodec/libutvideodec.cpp:110:12: warning: 'coded_frame' is deprecated
      [-Wdeprecated-declarations]
    avctx->coded_frame = av_frame_alloc();
           ^
libavcodec/avcodec.h:2945:35: note: 'coded_frame' has been explicitly marked
      deprecated here
    attribute_deprecated AVFrame *coded_frame;
                                  ^
libavcodec/libutvideodec.cpp:116:12: warning: 'coded_frame' is deprecated
      [-Wdeprecated-declarations]
    avctx->coded_frame->interlaced_frame = info.flags & 0x800 ? 1 : 0;
           ^
libavcodec/avcodec.h:2945:35: note: 'coded_frame' has been explicitly marked
      deprecated here
    attribute_deprecated AVFrame *coded_frame;
                                  ^
libavcodec/libutvideodec.cpp:119:12: warning: 'coded_frame' is deprecated
      [-Wdeprecated-declarations]
    avctx->coded_frame->top_field_first = 1;
           ^
libavcodec/avcodec.h:2945:35: note: 'coded_frame' has been explicitly marked
      deprecated here
    attribute_deprecated AVFrame *coded_frame;
                                  ^
libavcodec/libutvideodec.cpp:125:41: error: use of undeclared identifier 'UNFCC'
    utv->codec = CCodec::CreateInstance(UNFCC(avctx->codec_tag), "libavcodec");
                                        ^
libavcodec/libutvideodec.cpp:129:51: error: too many arguments to function call,
      expected 4, have 6
                            CBGROSSWIDTH_WINDOWS, &info, sizeof(UtVideoExtra));
                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/utvideo/Codec.h:47:2: note: 'DecodeBegin' declared here
        virtual int DecodeBegin(unsigned int width, unsigned int height...
        ^
libavcodec/libutvideodec.cpp:145:27: warning: 'coded_frame' is deprecated
      [-Wdeprecated-declarations]
    AVFrame *pic = avctx->coded_frame;
                          ^
libavcodec/avcodec.h:2945:35: note: 'coded_frame' has been explicitly marked
      deprecated here
    attribute_deprecated AVFrame *coded_frame;
                                  ^
libavcodec/libutvideodec.cpp:153:59: error: too few arguments to function call,
      expected 4, have 3
    utv->codec->DecodeFrame(utv->buffer, avpkt->data, true);
    ~~~~~~~~~~~~~~~~~~~~~~~                               ^
/usr/local/include/utvideo/Codec.h:48:2: note: 'DecodeFrame' declared here
        virtual size_t DecodeFrame(void *pOutput, const void *pInput, ut...
        ^
libavcodec/libutvideodec.cpp:247:27: warning: 'coded_frame' is deprecated
      [-Wdeprecated-declarations]
    av_frame_free(&avctx->coded_frame);
                          ^
libavcodec/avcodec.h:2945:35: note: 'coded_frame' has been explicitly marked
      deprecated here
    attribute_deprecated AVFrame *coded_frame;
                                  ^
13 warnings and 3 errors generated.
make: *** [libavcodec/libutvideodec.o] Error 1

Since Utvideo 15.0.0, UNFCC has moved from utvideo.h to Format.h.
So libutvideo.h must linclude Format.h

Change History (5)

comment:1 Changed 2 years ago by s172262

  • Summary changed from defect: libutvideodec compile error with utvideo 15.0.0 and later. to libutvideodec compile error with utvideo 15.0.0 and later.

comment:2 in reply to: ↑ description ; follow-up: Changed 2 years ago by cehoyos

  • Component changed from avcodec to build system
  • Keywords libutvideo added; utvideo removed
  • Version changed from unspecified to git-master

Replying to s172262:

How to reproduce:Building ffmpeg with libutvideo 15.0.0 and later.

FFmpeg compilation with libutvideo 15.1.0 works fine here.

Am I correct that compilation works fine for libutvideo 15.3.0 and starts failing with libutvideo 15.4.0?

comment:3 in reply to: ↑ 2 Changed 2 years ago by s172262

Replying to cehoyos:

Replying to s172262:

How to reproduce:Building ffmpeg with libutvideo 15.0.0 and later.

FFmpeg compilation with libutvideo 15.1.0 works fine here.

Am I correct that compilation works fine for libutvideo 15.3.0 and starts failing with libutvideo 15.4.0?

I'm sorry this error occurs form 15.4.0 to latest 16.1.0. If UNFCC is declared utvideo.h, this error is not occurred. Since 15.4.0 UNFCC was moved from utvideo.h to Format.h which is written with windef.h for windows.

In https://github.com/umezawatakeshi/utvideo/issues/1 (Japanese) Mr. Umezawa says that he didn't support to build library because current version of Utvideo is just a plug-in.
But also he says that there is a few possible to support in the distant future.

Last edited 2 years ago by s172262 (previous) (diff)

comment:4 Changed 2 years ago by s172262

  • Summary changed from libutvideodec compile error with utvideo 15.0.0 and later. to libutvideodec compile error with utvideo 15.4.0 and later.

comment:5 Changed 2 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from new to closed

configure refuses utvideo 15.4.0 or later since 017d42ebc60f66b94d13aeeeabcec284486872e9
It is unlikely that FFmpeg will support a version later than 15.3.0.

Note: See TracTickets for help on using tickets.