Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mingw-w64-ffmpeg does not build #20891

Closed
2 of 7 tasks
ferkulat opened this issue May 13, 2024 · 3 comments
Closed
2 of 7 tasks

mingw-w64-ffmpeg does not build #20891

ferkulat opened this issue May 13, 2024 · 3 comments
Labels
bug reported-upstream Issues reported or fixed in upstream repository

Comments

@ferkulat
Copy link

Description / Steps to reproduce the issue

Hello, I try to build mingw-w64-ffmpeg

  1. pacman -Syu
  2. git clone https://github.com/msys2/MINGW-packages.git
  3. cd MINGW-packages/mingw-w64-ffmpeg
  4. git checkout d9f875f711047a056376a567e0f6b1cfae88f3c0 ( current master by the time of writing)
  5. makepkg -rs --skippgpcheck (failed gpg check is an additional issue)

Expected behavior

should build package

Actual behavior

I get a build failure

D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c: In function 'nvenc_setup_hevc_config':
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1373:9: error: 'NV_ENC_CONFIG_HEVC' has no member named 'pixelBitDepthMinus8'
 1373 |     hevc->pixelBitDepthMinus8 = IS_10BIT(ctx->data_pix_fmt) ? 2 : 0;
      |         ^~
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c: In function 'nvenc_setup_av1_config':CC       libavcodec/pthread_frame.o

D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1458:8: error: 'NV_ENC_CONFIG_AV1' has no member named 'inputPixelBitDepthMinus8'
 1458 |     av1->inputPixelBitDepthMinus8 = IS_10BIT(ctx->data_pix_fmt) ? 2 : 0;
      |        ^~
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1459:8: error: 'NV_ENC_CONFIG_AV1' has no member named 'pixelBitDepthMinus8'
 1459 |     av1->pixelBitDepthMinus8 = (IS_10BIT(ctx->data_pix_fmt) || ctx->highbitdepth) ? 2 : 0;
      |        ^~
CC      libavcodec/pthread_slice.o
CC      libavcodec/ptx.o
CC      libavcodec/qcelpdec.o
CC      libavcodec/qdm2.o
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c: In function 'nvenc_map_buffer_format':
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1692:16: error: 'NV_ENC_BUFFER_FORMAT_YV12_PLCC        libavcodec/qdmc.o
' undeclared (first use in this function); did you mean 'NV_ENC_BUFFER_FORMAT_YV12'?
 1692 |         return NV_ENC_BUFFER_FORMAT_YV12_PL;
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~CC   libavcodec/qdrw.o
CC      libavcodec/qoi_parser.o

      |                NV_ENC_BUFFER_FORMAT_YV12
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1692:16: note: each undeclared identifier is reported only once for each function it appears in
CC      libavcodec/qoidec.o
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1694:16: error: 'NV_ENC_BUFFER_FORMAT_NV12_PL' undeclared (first use in this function); did you mean 'NV_ENC_BUFFER_FORMAT_NV12'?
 1694 |         return NV_ENC_BUFFER_FORMAT_NV12_PL;
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                NV_ENC_BUFFER_FORMAT_NV12
CC      libavcodec/qpeg.o
CC      libavcodec/qoienc.o
CC      libavcodec/qpeldsp.o
CC      libavcodec/qsv.o
D:/devel/vms-mingw-packages/mingw-w64-ffmpeg/src/ffmpeg-6.1.1/libavcodec/nvenc.c:1700:16: error: 'NV_ENC_BUFFER_FORMAT_YUV444_PL' undeclared (first use in this function); did you mean 'NV_ENC_BUFFER_FORMAT_YUV444'?
 1700 |         return NV_ENC_BUFFER_FORMAT_YUV444_PL;
      |                CC       libavcodec/qsv_api.o
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~CC        libavcodec/qsvdec.o

      |                NV_ENC_BUFFER_FORMAT_YUV444
CC      libavcodec/qsvenc.o

Verification

Windows Version

MINGW64_NT-10.0-19045

MINGW environments affected

  • MINGW64
  • MINGW32
  • UCRT64
  • CLANG64
  • CLANG32
  • CLANGARM64

Are you willing to submit a PR?

No response

@ferkulat ferkulat added the bug label May 13, 2024
@Biswa96
Copy link
Member

Biswa96 commented May 13, 2024

There is a compiler error due to gcc 14 update as following.

ffmpeg-6.1.1/libavutil/hwcontext_qsv.c:756:68: error: passing argument 3 of 'devmgr->lpVtbl->LockDevice' from incompatible pointer type [-Wincompatible-pointer-types]
  756 |     hr = IDirect3DDeviceManager9_LockDevice(devmgr, device_handle, &device, TRUE);
      |                                                                    ^~~~~~~
      |                                                                    |
      |                                                                    IDirect3DDevice9Ex **
ffmpeg-6.1.1/libavutil/hwcontext_qsv.c:756:68: note: expected 'IDirect3DDevice9 **' but argument is of type 'IDirect3DDevice9Ex **'

ffmpeg-6.1.1/libavutil/hwcontext_qsv.c:770:49: error: passing argument 2 of 'device->lpVtbl->GetDirect3D' from incompatible pointer type [-Wincompatible-pointer-types]
  770 |     hr = IDirect3DDevice9Ex_GetDirect3D(device, &d3d9ex);
      |                                                 ^~~~~~~
      |                                                 |
      |                                                 IDirect3D9Ex **
ffmpeg-6.1.1/libavutil/hwcontext_qsv.c:770:49: note: expected 'IDirect3D9 **' but argument is of type 'IDirect3D9Ex **'

I am not sure if that should be workaround with a simple type casting or changing the function.

@Biswa96
Copy link
Member

Biswa96 commented May 17, 2024

I have reported the issue in upstream https://ffmpeg.org/pipermail/ffmpeg-user/2024-May/057946.html

The issue was first reported here https://trac.ffmpeg.org/ticket/11004

@Biswa96
Copy link
Member

Biswa96 commented May 20, 2024

Fixed by 87e8350

@Biswa96 Biswa96 closed this as completed May 20, 2024
@Biswa96 Biswa96 added the reported-upstream Issues reported or fixed in upstream repository label May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug reported-upstream Issues reported or fixed in upstream repository
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants