Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Is there a good place or bash script I can use (or at least a version I can build myself) for FFmpeg on OS X?

I have Xcode installed as well as the CLI for Xcode (gcc etc).

I have a version of FFmpeg currently installed, but somehow I get a segmentation error on libx264 as well as the libvpx (I can't convert to MP4 and WebM).

All I want to do is batch convert video files to HTML5 compatible videos. All my source videos consist of .mov .mp4 and .wmv files. .ogv works fine by the way.

So the real question:

  1. How to uninstall everything of FFmpeg on my Mac now
  2. Reinstall a FFmpeg version that can convert to .mp4, .webm, and .ogv

I also tried the precompiled version of Miro video converter but somehow that doesn't work either.

share|improve this question

migrated from stackoverflow.com Jul 26 '13 at 13:48

This question came from our site for professional and enthusiast programmers.

1 Answer 1

up vote 11 down vote accepted

There are three options, sorted by complexity:

  • Homebrew (or other package managers)
  • Static builds
  • Compile yourself

To follow this you need to have a bit of knowledge using a terminal/shell under OS X.


1. Homebrew

Homebrew has a formula for stable FFmpeg releases. This will get you running pretty fast. First, install Homebrew by opening Terminal.app and and pasting this. Follow all the instructions closely!

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Then install FFmpeg through the ffmpeg formula:

brew install ffmpeg

This will download a lot of dependencies such as x264, LAME, FAAC, et cetera, but after that you should be good to go. You can also brew install ffmpeg --HEAD to get the absolute latest version.

For additional options, check the output of brew info ffmpeg. You can, for example, add the following options, which are normally disabled:

brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-libass --with-libquvi --with-libvorbis --with-libvpx --with-opus --with-x265

To update ffmpeg later on, run:

brew update && brew upgrade ffmpeg

2. Static Builds

The FFmpeg project, on the download page, offers links to static builds for ffmpeg, which you can just download, extract, and use in a terminal.

At the moment, you can get them from here:

Static builds cannot contain every possible encoder, mostly due to licensing issues. This is why I don't recommend using them unless you don't really care about which specific features you need.

Once downloaded, extract the file, open up Terminal.app, and navigate to the directory where you unzipped the files, i.e. where you find a file called ffmpeg. Copy this file to /usr/local/bin:

cd ~/Downloads/
sudo mkdir -p /usr/local/bin/
sudo cp ./ffmpeg /usr/local/bin
sudo chmod 644 /usr/local/bin/ffmpeg

Now, if you use Bash (which is the default shell), add it to your $PATH:

open -e ~/.bash_profile

Add this to the file at the end:

export PATH="/usr/local/bin:$PATH"

Save it, and close the editor. Now restart your Terminal and which ffmpeg should return /usr/local/bin/ffmpeg.


3. Compiling yourself

You can of course build FFmpeg tools yourself, following the OS X compilation guide. This guide will always be up to date, and by manually compiling you may be able to tweak a few parameters.


To uninstall whatever version of FFmpeg you installed we'd need to know how you've installed it in the first place. Since Homebrew will install to /usr/local/Cellar, and symlink to /usr/local/bin/ffmpeg, it probably won't cause any problems with other libraries. However, check the make install scripts of the versions you (supposedly) built yourself and see where they placed FFmpeg. Then just delete them from there — it won't interfere with Homebrew.

The segmentation fault could be due to improper linking between the x264 or libvpx libraries. Since Homebrew will take care of this, you shouldn't run into any issues.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.