Package Details: ffmpeg-full 6.1.1-6

Git Clone URL: https://aur.archlinux.org/ffmpeg-full.git (read-only, click to copy)
Package Base: ffmpeg-full
Description: Complete solution to record, convert and stream audio and video (all possible features including libfdk-aac)
Upstream URL: https://www.ffmpeg.org/
Keywords: audio codec convert cuda cuvid decklink encoder fdk-aac fdkaac hwaccel libnpp media nvenc svt video
Licenses: LicenseRef-nonfree-and-unredistributable
Conflicts: ffmpeg
Provides: ffmpeg, libavcodec.so, libavdevice.so, libavfilter.so, libavformat.so, libavutil.so, libpostproc.so, libswresample.so, libswscale.so
Submitter: rpolzer
Maintainer: dbermond
Last Packager: dbermond
Votes: 134
Popularity: 0.50
First Submitted: 2013-01-24 11:17 (UTC)
Last Updated: 2024-05-02 21:46 (UTC)

Dependencies (122)

Required by (1852)

Sources (15)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 .. 54 Next › Last »

dbermond commented on 2023-11-18 23:28 (UTC)

@boesi Yes, there was a need for using ffnvcodec-headers-git for providing av1_nvenc. But the reason for installing is not relevant in this case. What is important is that you should keep track of all your AUR packages, specially the VCS ones (-git, -hg, -svn, etc), as they usually does not get regular version bumps. VCS packages should be regularly updated by the user, as the package maintainer is not required to do version bumps in these type of packages. When you install an AUR package (whatever the reason for installing it), you are completely responsible for it. If you installed it without noticing due to the use of an AUR helper, chances increases for you to have problems. Using makepkg is the right method, is a manual process, and the only supported one. When you delegate all AUR tasks to a helper and simply ignore that you have regular tasks to do with every single installed AUR package, you have a higher chance to encounter a problem sooner or later. If you are already using the makepkg method, that's good, and you just cannot forget about your AUR packages, none of them. I cannot speak if other users are having the same issue as you. What I can say is that the users that are acting like the Arch Wiki recommends (by doing the needed tasks on their AUR packages) should not have such issue.

boesi commented on 2023-11-18 21:49 (UTC)

@dbermond Well, I certainly didn't install it on purpose. But in the commit logs of ffmpeg-full you can see that in version 6.0-1 the make dependency for ffnvcodec-headers was changed to ffnvcodec-headers-git and in version 6.0-2 it was changed back to ffnvcodec-headers. On this occasion I must have missed to remove the make dependencies as I usually do. Do I understand correctly that everyone who has done the same is now having this problem?

Please note that I am not blaming anyone. I just want to learn how to keep my system healthy.

dbermond commented on 2023-11-18 16:11 (UTC)

@Milor123 The package is building fine. The nvcc issue has been discussed several times in ffmpeg-full-git. See there the comments from previous couple of years. By your log, it looks like you are using an AUR helper, and this is not supported, use makepkg.

dbermond commented on 2023-11-18 16:06 (UTC)

@boesi If you have installed ffnvcodec-headers-git for some reason, it's up to you to keep track of it and either update it regularly or switch to the stable version when not needing the -git one anymore. There is no special solution for finding outdated AUR packages. You need to keep track of all your packages that are not handled by pacman and act accordingly to each one of them. Please see: https://wiki.archlinux.org/title/Arch_User_Repository#Updating_packages .

Milor123 commented on 2023-11-18 15:18 (UTC) (edited on 2023-11-18 15:25 (UTC) by Milor123)

Cant install it bro I have a gtx 1050 ti with propriety drivers

ERROR: failed checking for nvcc.

==> Making package: ffmpeg-full-git 6.2.r112782.g07c303b708-1 (sáb 18 nov 2023 10:12:18)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting pkgver()...
==> Starting build()...
  -> Running ffmpeg configure script...
ERROR: failed checking for nvcc.

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the

ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.libera.chat.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: ffmpeg-full-git-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
ffmpeg-full-git - exit status 4

I try install ffnvcodec-headers with pacman and all the alternatives versions in AUR repo, but nothing allow compile this package

What should i do guys?

boesi commented on 2023-11-18 10:51 (UTC) (edited on 2023-11-18 10:52 (UTC) by boesi)

@dbermond Thanks, that helped. I had the package ffnvcodec-headers-git (version 8.2.15) installed. Is there any way to find this solution myself? ffnvcodec-headers is a make dependency for ffmpeg-full - how do I find out that the wrong version is installed on my system?

dbermond commented on 2023-11-17 16:57 (UTC)

@boesi The package is building fine. The error you're getting looks like to be related to ffnvcodec-headers. Make sure to have an up-to-date Arch Linux system with the latest version of the mentioned package (latest version currently is 12.1.14.0-1).

boesi commented on 2023-11-17 04:17 (UTC)

Installation fails for me:

In file included from libavutil/hwcontext_cuda.c:27:
libavutil/hwcontext_cuda.c: In function 'cuda_context_init':
libavutil/hwcontext_cuda.c:365:28: error: 'CudaFunctions' has no member named 'cuCtxGetCurrent'; did you mean 'cuCtxPopCurrent'?
  36n5 |         ret = CHECK_CU(cu->cuCtxGetCurrent(&hwctx->cuda_ctx));
      |                            ^~~~~~~~~~~~~~~
libavutil/cuda_check.h:65:114: note: in definition of macro 'FF_CUDA_CHECK_DL'
   65 | #define FF_CUDA_CHECK_DL(avclass, cudl, x) ff_cuda_check(avclass, cudl->cuGetErrorName, cudl->cuGetErrorString, (x), #x)
      |                                                                                                                  ^
libavutil/hwcontext_cuda.c:365:15: note: in expansion of macro 'CHECK_CU'
  365 |         ret = CHECK_CU(cu->cuCtxGetCurrent(&hwctx->cuda_ctx));
      |               ^~~~~~~~
make: *** [ffbuild/common.mak:81: libavutil/hwcontext_cuda.o] Error 1
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: ffmpeg-full-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
ffmpeg-full - exit status 4

I suspect I have some library in the wrong version or need to reinstall one. But which one?

Thanks for your help.

dbermond commented on 2023-09-25 21:50 (UTC)

@qdii The nvenc "issue" has been discussed several times already. For a more detailed discussion, see the ffmpeg-full-git package and scroll back the comments to some years ago.

qdii commented on 2023-09-17 07:09 (UTC)

Build phase breaks for me:

$ makepkg -f
==> Making package: ffmpeg-full 6.0-4 (dim. 17 sept. 2023 09:03:27)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found ffmpeg-6.0.tar.xz
  -> Found ffmpeg-6.0.tar.xz.asc
  -> Found 010-ffmpeg-add-svt-hevc-geb24a06.patch
  -> Found 030-ffmpeg-add-svt-vp9-gaaa8140.patch
  -> Found 040-ffmpeg-add-av_stream_get_first_dts-for-chromium.patch
  -> Found 060-ffmpeg-fix-segfault-with-avisynthplus.patch
  -> Found 070-ffmpeg-binutils2.41-fix.patch
  -> Found LICENSE
==> Validating source files with sha256sums...
    ffmpeg-6.0.tar.xz ... Passed
    ffmpeg-6.0.tar.xz.asc ... Skipped
    010-ffmpeg-add-svt-hevc-geb24a06.patch ... Passed
    030-ffmpeg-add-svt-vp9-gaaa8140.patch ... Passed
    040-ffmpeg-add-av_stream_get_first_dts-for-chromium.patch ... Passed
    060-ffmpeg-fix-segfault-with-avisynthplus.patch ... Passed
    070-ffmpeg-binutils2.41-fix.patch ... Passed
    LICENSE ... Passed
==> Verifying source file signatures with gpg...
    ffmpeg-6.0.tar.xz ... Passed
==> Extracting sources...
  -> Extracting ffmpeg-6.0.tar.xz with bsdtar
==> Starting prepare()...
patching file configure
Hunk #4 succeeded at 6687 (offset 6 lines).
patching file libavcodec/Makefile
Hunk #1 succeeded at 1128 (offset 2 lines).
patching file libavcodec/allcodecs.c
Hunk #1 succeeded at 814 (offset 2 lines).
patching file libavcodec/libsvt_hevc.c
patching file configure
Hunk #2 succeeded at 1848 (offset 1 line).
Hunk #3 succeeded at 3391 (offset 2 lines).
Hunk #4 succeeded at 6728 (offset 10 lines).
patching file libavcodec/Makefile
patching file libavcodec/allcodecs.c
patching file libavcodec/libsvt_vp9.c
patching file libavformat/avformat.h
patching file libavformat/utils.c
patching file libavformat/avisynth.c
patching file libavcodec/x86/mathops.h
==> Removing existing $pkgdir/ directory...
==> Starting build()...
  -> Running ffmpeg configure script...
fgrep: warning: fgrep is obsolescent; using grep -F
fgrep: warning: fgrep is obsolescent; using grep -F
ERROR: nvenc requested but not found

I'm not sure where nvenc is supposed to come from, but it is not (no longer?) included in extra/nvidia-utils.

A workaround is to edit the PKGBUILD file and replace --enable-nvenc with --disable-nvenc. Of course this disables NVENC, but if you don't need it then it's fine.

It could also be my system being broken, in which case please ignore this comment :)