Package Details: ffmpeg-git 3.4.r86781.gd8f1982639-1

Git Clone URL: (read-only)
Package Base: ffmpeg-git
Description: Complete solution to record, convert and stream audio and video (git version)
Upstream URL:
Keywords: audio codec convert encoder ffmpeg media vaapi video
Licenses: GPL3
Conflicts: ffmpeg, ffmpeg-decklink, ffmpeg-full, ffmpeg-full-git, ffmpeg-full-nvenc, ffmpeg-libfdk_aac, ffmpeg-nvenc, ffmpeg-qsv-git, ffmpeg-semifull-git
Provides: ffmpeg,,,,,,,,,, qt-faststart
Submitter: DrZaius
Maintainer: dbermond
Last Packager: dbermond
Votes: 55
Popularity: 1.283841
First Submitted: 2011-01-17 22:00
Last Updated: 2017-07-16 21:35

Dependencies (45)

Required by (615)

Sources (1)

Latest Comments

dbermond commented on 2017-07-09 16:46

I have adopted this package. It is now updated and building fine.
Please enjoy and have a happy ffmpeg'ing :)

shoober420 commented on 2017-06-05 18:56

"--enable-libschroedinger" on line 60 also needs removed from the PKGBUILD

lazyboy commented on 2017-06-03 18:29

My build fails at linking with "make: *** No rule to make target 'libavcodec/x86/simple_idct.c', needed by 'libavcodec/x86/simple_idct.o'. Stop."

I think it's due to this patch "x86/simple_idct: add explicit sse2 simple_idct_put/add versions." (

nucleos commented on 2017-04-26 13:22

Replace --enable-x11grab with --enable-libxcb in PKGBUILD!

DrZaius commented on 2017-03-19 19:35

Regarding --enable-x11grab, the legacy X11 screen grabber has been removed on March 15. It has effectively been transparently replaced by the XCB screen grabber for some time. XCB is a drop-in replacement and is autodetected, so no additional configure options are required. Usage in ffmpeg cli tool remains unchanged.

dn3s commented on 2017-03-19 09:37

looks like --enable-x11grab is now broken too. Removing it worked, but that only works for me because I happen to not need the feature.

graysky commented on 2016-08-15 18:58

Why is this package flagged out-of-date?

prazola commented on 2016-07-29 21:11

patch needed:

tuankiet65 commented on 2016-07-24 10:37

Looks like the new version of openjpeg2 (2.1.1) breaks FFmpeg build, according to this ticket In the mean time either downgrade openjpeg2 to 2.1.0 or remove the --enable-openjpeg flags from PKGBUILD.

Klyachkivsky commented on 2016-07-23 22:38

sudo pacman -Syu

error: failed to prepare transaction (could not satisfy dependencies)
:: ffmpeg-git: installing x265 (2.0-1) breaks dependency ''

colinkeenan commented on 2016-07-23 22:33

I was successful building ffmpeg-git in a clean chroot:

colinkeenan commented on 2016-07-23 21:43

After forcing the system upgrade which upgraded x265, ffmpeg-git fails to run with:

ffmpeg: error while loading shared libraries: cannot open shared object file: No such file or directory

I tried to rebuild ffmpeg-git, but got:

libavcodec/libopenjpegdec.o: In function `libopenjpeg_decode_frame':
libopenjpegdec.c:(.text+0x1d4): undefined reference to `opj_create_decompress'
libopenjpegdec.c:(.text+0x1f2): undefined reference to `opj_set_error_handler'
libopenjpegdec.c:(.text+0x20c): undefined reference to `opj_set_warning_handler'
libopenjpegdec.c:(.text+0x226): undefined reference to `opj_set_info_handler'
libopenjpegdec.c:(.text+0x251): undefined reference to `opj_setup_decoder'
libopenjpegdec.c:(.text+0x25b): undefined reference to `opj_stream_default_create'
libopenjpegdec.c:(.text+0x276): undefined reference to `opj_stream_set_read_function'
libopenjpegdec.c:(.text+0x285): undefined reference to `opj_stream_set_skip_function'
libopenjpegdec.c:(.text+0x294): undefined reference to `opj_stream_set_seek_function'
libopenjpegdec.c:(.text+0x2a3): undefined reference to `opj_stream_set_user_data'
libopenjpegdec.c:(.text+0x2af): undefined reference to `opj_stream_set_user_data_length'
libopenjpegdec.c:(.text+0x2bf): undefined reference to `opj_read_header'
libopenjpegdec.c:(.text+0x420): undefined reference to `opj_create_decompress'
libopenjpegdec.c:(.text+0x436): undefined reference to `opj_image_destroy'
libopenjpegdec.c:(.text+0x43e): undefined reference to `opj_stream_destroy'
libopenjpegdec.c:(.text+0x446): undefined reference to `opj_destroy_codec'
libopenjpegdec.c:(.text+0x67f): undefined reference to `opj_decode'
libavcodec/libopenjpegdec.o: In function `libopenjpeg_decode_init':
libopenjpegdec.c:(.text.unlikely+0x1c): undefined reference to `opj_set_default_decoder_parameters'
libavcodec/libopenjpegdec.o: In function `libopenjpeg_static_init':
libopenjpegdec.c:(.text.unlikely+0x4c): undefined reference to `opj_version'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_frame':
libopenjpegenc.c:(.text+0x8df): undefined reference to `opj_create_compress'
libopenjpegenc.c:(.text+0x8fd): undefined reference to `opj_set_error_handler'
libopenjpegenc.c:(.text+0x913): undefined reference to `opj_set_warning_handler'
libopenjpegenc.c:(.text+0x944): undefined reference to `opj_stream_destroy'
libopenjpegenc.c:(.text+0x94c): undefined reference to `opj_destroy_codec'
libopenjpegenc.c:(.text+0xdbc): undefined reference to `opj_set_info_handler'
libopenjpegenc.c:(.text+0xdd5): undefined reference to `opj_setup_encoder'
libopenjpegenc.c:(.text+0xe15): undefined reference to `opj_stream_default_create'
libopenjpegenc.c:(.text+0xe39): undefined reference to `opj_stream_set_write_function'
libopenjpegenc.c:(.text+0xe48): undefined reference to `opj_stream_set_skip_function'
libopenjpegenc.c:(.text+0xe57): undefined reference to `opj_stream_set_seek_function'
libopenjpegenc.c:(.text+0xe66): undefined reference to `opj_stream_set_user_data'
libopenjpegenc.c:(.text+0xe75): undefined reference to `opj_start_compress'
libopenjpegenc.c:(.text+0xe84): undefined reference to `opj_encode'
libopenjpegenc.c:(.text+0xed3): undefined reference to `opj_end_compress'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_close':
libopenjpegenc.c:(.text.unlikely+0x1d): undefined reference to `opj_image_destroy'
libavcodec/libopenjpegenc.o: In function `libopenjpeg_encode_init':
libopenjpegenc.c:(.text.unlikely+0x63): undefined reference to `opj_set_default_encoder_parameters'
libopenjpegenc.c:(.text.unlikely+0x12e): undefined reference to `opj_image_destroy'
libopenjpegenc.c:(.text.unlikely+0x568): undefined reference to `opj_image_create'
/usr/bin/ld: libavcodec/ hidden symbol `opj_read_header' isn't defined
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make: *** [library.mak:103: libavcodec/] Error 1
==> ERROR: A failure occurred in build().

colinkeenan commented on 2016-07-23 21:06

In order to do today's system update, which included an update to x265, had to do

sudo pacman -Syudd

because without the "dd" I got

error: failed to prepare transaction (could not satisfy dependencies)
:: ffmpeg-git: installing x265 (2.0-1) breaks dependency ''

Now, with the new x265 installed, I'm rebuilding ffmpeg-git. Is there another way to handle this?

KamranMackey commented on 2016-07-10 10:28

yan12125: Alright, I have added git as a makedepend. Thanks!

yan12125 commented on 2016-07-08 12:11

Hi KamranMackey, could you add 'git' to makedepends?

KamranMackey commented on 2016-07-07 09:00

hepha: Fixed.

hepha commented on 2016-07-07 08:40

provides miss 'ffmpeg' ?

From this version has been deleted

KamranMackey commented on 2016-07-05 00:03

DrZaius: Alright, libdfk-aac has been added to depends. Also fixed a few build issues as well.

KamranMackey commented on 2016-07-04 22:56

Alright, ffmpeg-git has been updated. Broken config options have been removed and I removed dependencies that are no longer needed or used by the base package in the Extra repository. I also revamped pkgver() thanks to dreieck.

Sorry for taking so long to get around to this. Haven't been running Arch Linux lately and I just did a reinstall of it less than two days ago. But I'm back and packages should be back to regular update schedules.

Weby commented on 2016-06-18 14:39

@DrZaius mpv-git sometimes failed to compile only with extra/ffmpeg.

DrZaius commented on 2016-06-01 20:12

@hepha Remove it. See comments below. It appears the maintainer is no longer maintaining. Although why users want use ffmpeg-git in the first place is a mystery to me (perhaps for libfdk_aac?). ffmpeg in Extra should suffice for most.

hepha commented on 2016-06-01 10:04

now build error
can't us this --enable-libdcadec

dreieck commented on 2016-04-22 09:55

It would be nice if the pkgver would contain the upstream version.

Suggested change vor pkgver() function:


pkgver() {
cd "$srcdir/$pkgname"
_ver="$(git describe --tags | sed 's|-[^-]*$||' | sed 's|^n||')"
_rev="$(git rev-list --count HEAD)"
_gitid="$(git rev-parse --short HEAD)"
echo "${_ver}.r${_rev}.g${_gitid}"


DianaProbst commented on 2016-04-12 19:08

@DrZaius Yeah, it was your comment that made me think it would be OK to haul out the configure option. Ta.

DrZaius commented on 2016-04-12 16:18

@DianaProbst The author of libdcadec merged it into the FFmpeg native DCA decoder, then support for the now abandoned libdcadec external library was removed as I mentioned a few comments ago on 2016-01-31. The libdcadec dependency and --enable-libdcadec configure option should be removed (among many other dependencies in my opinion).

DianaProbst commented on 2016-04-12 12:17

I tried to build this today and had an error:

==> Starting build()...
Unknown option "--enable-libdcadec".
See ./configure --help for available options.
==> ERROR: A failure occurred in build().

I took that line out of the build file and the package then built and installed. I couldn't play music, so I hauled it out to replace it with ffmpeg from the extra repo, but if you want me put it back again and play around or generate further errors, I can.

No idea what caused it. Figured you should know.

KamranMackey commented on 2016-02-01 04:38

@Eriner Ok, added you as a co-maintainer. Sorry it took so long.

DrZaius commented on 2016-01-31 22:24

FFmpeg has a new native DCA decoder based on libdcadec, so you can remove the libdcadec dependency.

Eriner commented on 2016-01-15 07:03

@KamranMackey sure, if you add me as a co-maintainer I'll take care of it.

KamranMackey commented on 2016-01-15 05:03

Eriner: Although, did you want to be a co-maintainer?

KamranMackey commented on 2016-01-15 05:03

Eriner: Alright, I'll do it as soon as I can. Currently don't have access to my Arch Linux system right now.

Eriner commented on 2016-01-15 04:14


Add the `--disable-network` flag to the PKGBUILD, as there is a publicly-known vulnerability. See:

mnovick1988 commented on 2016-01-12 22:02

please specify the codec version in the provides. as it breaks compatibility with arch-repo version tools.

libavutil < 54 | breaks
libavcodec < 56 | breaks

or provide compatibility packages as optional depends.

Eriner commented on 2015-12-22 19:28

To clarify, if you change the build process (add/remove depends, makedepends, conflicts) then yes, bump the packagever with that commit. But please don't bump the package version for the sake of bumping the package version. Cheers.

Eriner commented on 2015-12-22 19:26

Right, but this is a -git package. Bumping the package version is more of a hassle than a help for many people. Version bumps for -git packages should indicate an update in the PKGBUILD; bumping it needlessly means people will rebuild the package because upstream (here) has incremented the PKGBUILD version, when in reality, nothing has changed. If they want to rebuild it on their own, they can, but bumping the version is irritating for many who use manual build tools (cower, git clone, etc).

KamranMackey commented on 2015-12-22 06:40

I'm just doing it because the pkgver() function automatically updates the package version anyway, so if it does that, I push the updated version number to the package on the AUR as well.

Eriner commented on 2015-12-22 06:23

What is the point of this commit?

There is no need to ver bump unless something in the build process changes dramatically (C++ ABI rebuild)

DrZaius commented on 2015-12-20 21:02

Yes, libfdk-aac dependency for configure option --enable-libfdk-aac. Less useful in my opinion: --disable-debug, avresample, gnutls, ladspa, libbluray, libgsm, libmodplug, libopencore*, libopenjpeg, libschroedinger, libspeex, libssh, libtheora, libwebp, libxvid, and legacy qt-faststart stuff ("-movflags +faststart" can be used instead). --enable-version3 is not needed if you remove libopencore*.

KamranMackey commented on 2015-12-20 20:48

DrZaius: libfdk-aac? Also, what other not-so-useful stuff are you talking about exactly?

KamranMackey commented on 2015-12-20 19:56

@DrZaius: Okay, thanks for the feedback. Went back to keeping the package lean. Keeping GitHub as the main source though.

DrZaius commented on 2015-12-20 19:46

Github is just a backup mirror and always lags behind

DrZaius commented on 2015-12-20 19:25

I see no reason to attempt to enable everything: if someone wants that they can use one of the impractical ffmpeg-full* packages in AUR. I've never met a user who needs *everything*; this adds needless complexity, adds more compile time, and installs more junk. I recommend keeping this package somewhat lean and users who want to enable less useful components can do so manually.

KamranMackey commented on 2015-12-20 11:27

Okay, that should be the last package release bump until ffmpeg/master gets updated, at which point I'll update my local repo, and bump the package version.

KamranMackey commented on 2015-12-20 10:44

Let me know if something fails to work when trying to use this package. I'm still new to making and maintaining PKGBUILDs, so let me know if anything's broken please!

KamranMackey commented on 2015-12-20 10:36

Removed the orphan tag, and made myself the new maintainer of this package.

richteer commented on 2015-12-10 18:25

Orphaning because I don't have time anymore to maintain this

richteer commented on 2015-08-21 18:01

Appears the error in configure.log was a linker problem with testing libx265. Lacked linking against, which threw the pkg-config error.

Fixed by adding --pkg-config-flags="--static" into the configure options, not sure if this is the best solution yet though, but I updated the package to reflect this quick fix.

richteer commented on 2015-08-21 15:53

This is odd. It works with extra/x265 (after changing the dep), but not with x265-hg. Confirmed x265-hg has /usr/lib/pkgconfig/x265.pc, and with only a minor difference from the version in extra/x265.

Still tracing the issue, will update if I find out more.

motdef commented on 2015-08-21 14:53

I get "ERROR: x265 not found using pkg-config" when build() starts (x265-hg is installed as a dependency)

richteer commented on 2015-05-14 17:16

Yup, it appears so. Just updated the dependency list to include that.

Enverex commented on 2015-05-13 15:59

Does this package require the "x265-hg" package? The core package "x265" is up to date on my system but compilation immediately fails with the message "ERROR: libx265 version must be >= 57" which I can only assume is provided by "x265-hg".

richteer commented on 2015-02-17 21:16

Right, I suppose what I meant was adding in some of the more common codecs, (like libxvid, for example) but taking a second look at the differences between the two, there isn't much that sees a lot of use.

richteer commented on 2015-02-16 01:45

Updated to include gnutls. May update the PKGBUILD later to mirror the libs/protos that the ABS PKGBUILD uses.

IncredibleLaser commented on 2015-02-15 08:02

Thanks for your package, I have a small remark though. Please include the dependency for gnutls and enable the corresponding configure switch, otherwise you'll not be able to watch youtube videos even with youtube-dl installed. YT switches to https by default and ffmpeg cannot get these without the compile option.

richteer commented on 2014-12-16 00:16

Updated to add in --shlibdir=/usr/lib to fix an issue with the libs being placed in wherever the package was being built + /usr/lib (e.g. ~/builds/ffmpeg-git/usr/lib)

Still investigating, but that should fix the poor library placement

misc commented on 2014-12-15 23:29

idk, for me the package ended up with the libraries not in /usr/lib.

misc commented on 2014-12-15 22:05

Also needs (for) now:

richteer commented on 2014-09-27 20:51

I'm keeping the package relatively clean so it could be modified for more specific needs (hence the removal of the *-git dependencies)

I'll be keeping an eye on this in case x265 api changes cause breakages.

Good point, removing the --disable-debug flag.

richteer commented on 2014-09-27 19:16

Adopting package.
Updated to include some of the changes from flu's comment below.

Removed dependency on the *-git versions as they are not required for ffmpeg to be built.

graysky commented on 2014-09-13 16:06

Is anyone able to build this? I cannot in a clean chroot, perhaps due to the commend about the x265-hu package.

ERROR: x265 not found

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 mailing list or IRC #ffmpeg on
Include the log file "config.log" produced by configure as this will help
solve the problem.
==> ERROR: A failure occurred in build().

bluerider commented on 2014-02-19 22:23

FFMPEG now has x265 encoder support. Can you update your PKGBUILD to enable it?

jz_train commented on 2013-10-27 20:04

If you get a libx264 is not found error, go into your x264-git/src directory and:
$ make install libx264.a

justlaputa commented on 2013-01-23 10:40

Hey DrZaius,

Do you have plan to add `libvpx` support in the build?

DrZaius commented on 2013-01-08 01:48

The point of this package is whatever you make it. For example, I use it for FFmpeg development. The repository ffmpeg in Extra is updated frequently and is recent enough that most people shouldn't even need to use this package.

Anonymous comment on 2013-01-07 16:20

If this package is not intended to be a general replacement of ffmpeg from extra, why does it conflict with it? What's the point of this package at all?

buhman commented on 2013-01-02 11:57

commit b448677e6ea734b9f7a57970560f600a2a893a9b (Mon Dec 17 16:11:04 2012 +0100) was the final commit that split documentation up; {ffmpeg-codecs,ffmpeg-filters,ffmpeg-protocols,ffmpeg-scaler,ffmpeg-bitstream-filters,ffmpeg-devices,ffmpeg-formats,ffmpeg-resampler,ffmpeg-utils}.1 (at least) will also need to be built, in addition to {ffmpeg,ffplay,ffprobe,ffserver}.1

misc commented on 2011-10-12 18:45

Immediately breaks off with: Unknown option "--enable-version2".

DrZaius commented on 2011-09-12 19:19

@AerialX: ffmpeg-git is not intended to be used as a general replacement for the ffmpeg package in the Extra repository.

Anonymous comment on 2011-09-09 22:28

Uh, the package is absolutely useless as a replacement to the standard ffmpeg package if --enable-shared isn't set by default.
Definitely needs to go back in. Without it, saying the package provides=(ffmpeg) is a total lie.

thelinx commented on 2011-09-06 18:14

"Removing --enabled-shared doesn't do much at all, because configure will detect your abililty to compile shared libraries automatically."

This isn't true on my system. Please put --enable-shared back in.

Anonymous comment on 2011-06-30 06:12

@DrZaius, the problem is that I need crystalhd :)

Anonymous comment on 2011-06-29 18:50

I have broadcom crystalhd. And I have problem with ffmpeg-git to compile properly. :(

Here is the output:

nixscripter commented on 2011-06-11 22:55

Removing --enabled-shared doesn't do much at all, because configure will detect your abililty to compile shared libraries automatically.

mar77i commented on 2011-06-07 18:49

you gotta be kidding? removing --enable-shared means there are no *.so files. No *.so files means ALL dependending software will break.

Anonymous comment on 2011-03-22 14:42

It looks like since 21st march, ffmpeg-mt was merged into ffmpeg. Good news I guess

Det commented on 2011-02-01 09:23

If people use this package they should also be able to modify it to fit their own needs.

If you ask me, you are free to add like all the stuff from [extra]'s ffmpeg because I'll edit the PKGBUILD anyway to only install the stuff _I_ want.

It's totally your call but you shouldn't just put some random crap to the PKGBUILD just because a single person asks for it (not trying to offend anybody) - at least if you don't agree with that.

ps. one option would be to create a "_IWantABloatedFfmpeg" variable and by enabling it you would then get all that extra stuff that some people like to have - but this is only if you _really_ wanna be helpful.

lucak3 commented on 2011-01-29 14:15

Could I ask for '--enable-postproc' and '--enable-libschroedinger' ?
I lack these from extra/ffmpeg: the first is required to build vlc-git and the second is nice to have...

Anonymous comment on 2011-01-22 21:47

Nice of you to supply an up-to-date git package of ffmpeg.
I've requested the deletion of ffmpeg-svn and would be happy to use this one.

But I wonder why you've included faac and xvidcore despite the fact that ffmpeg has got own codecs for these two afaik.

skottish commented on 2011-01-19 04:35

I didn't see the whole story until now. Flux is an understatement.

skottish commented on 2011-01-18 23:13

FFmpeg's git repo was moved: