Ffmpeg For Mac Os X 10.5
It's possible to play H264 videos (mp4 and maybe QuickTime™) with FFmpeg. The following instructions will guide you in this process.
Mac OS X 10.6 Snow Leopard. Use VLC 2.2.8. Mac OS X 10.5 Leopard. Use VLC 2.0.10. Get it for PowerPC or 32bit Intel. Mac OS X 10.4 Tiger. Mac OS X 10.4.7 or later is required. Use VLC 0.9.10. Get it for PowerPC or Intel. Mac OS X 10.3 Panther. QuickTime 6.5.2 or later is required. Use VLC 0.8.6i. Get it for PowerPC. Mac OS X 10.2.
Prerequisites
Only tested on Mac OS X 10.5.8 Intel and on Mac OS X 10.4.9 Intel Server.
You need a version of TenFourFox (or Firefox) that was build with FFmpeg support (by adding ac_add_options --enable-ffmpeg to .mozconfig). It's the case of TenFourFox versions released here
Backgroud
- Mac users interested in Fan control for os x 10.5.8 generally download: SSD Fan Control 2.13 Free SSD Fan Control is a fan management utility that comes in handy if you're dealing with a noisy hard disk fan.
- Ffmpeg for mac os x 10.4.11 powerpc free download. Gitea Gitea - Git with a cup of tea - is the fastest, easiest, most hassle-free way of setting up a self-h.
Because mozilla never liked the license of H264 (and this license is incompatible with the Mozilla Public License), they never shipped a H264 decoder into Firefox.
Fortunately, Mozilla offers a lot of ways to use a H264 codec made available by third-parties. FFmpeg is one of these.
Due to the behaviour of mozilla with the H264 codec, I don't know if I can ship FFmpeg into TenFourFox, that's why I offer it as a separate component.
There's also other solutions, such as:
- On Mac OS X 10.6 (Snow Leopard) and later, Firefox and TenSixFox both support playing H264 content with the help of a codec furnished by Cisco and which is automatically installed by Firefox/TenSixFox;
- On Mac OS X 10.7 (Lion) and later, Firefox and TenSixFox both support playing H264 content with the help of codecs shipped in Mac OS X by Apple;
Using FFmpeg with FFmpeg Enabler
In order to allow you to play H264 content into TenFourFox, I give you an utility named FFmpeg Enabler that could be freely downloaded here: https://github.com/OlgaTPark/tenfourfox/releases/download/45.9-Intel/FFmpeg.Enabler.app.zip
This utility runs on Mac OS X 10.4 (Tiger) and later, on (32-bits) PowerPC and 32/64-bits Intel Platforms.

On startup, FFmpeg Enabler will ask you to choose the TenFourFox application on which you want to operate. Then four options are available:
- Launch profile manager: launches the Profile Manager of TenFourFox in order to allow you to manage your profiles. This option does not modify the TenFourFox application you selected on startup;
- Launch with FFmpeg support: launches TenFourFox with H264 support, but only for the session that you launched. This option does not modify the TenFourFox application you selected on startup;
- Install FFmpeg: installs FFmpeg inside the TenFourFox application you selected on startup. You'll be able to play H264 content without running (or requiring the presence of) FFmpeg Enabler;
- Use this version for TenFourFoxBox: makes an alias named TenFourFoxBoxRunner inside your
Applicationsfolder in order to allow TenFourFoxBox to use the version of TenFourFox you selected on startup (see: FoxBoxes Instructions). Please notice there's no additional steps to allow FoxBoxes to play H264 content when FFmpeg is already installed;
How to build FFmpeg?
The following instructions will tell you how to build FFmpeg 2.8.15 as an Universal binary (i386, x86_64 and ppc).
You need first Yasm. Download and decompress it from http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz and cdto the decompressed directory. Configure and build yasm with:
Make sure that your PATH environment variable points to the yasm executable.
Then you can download and decompress FFmpeg from https://github.com/FFmpeg/FFmpeg/archive/n2.8.15.tar.gz and cd to the decompressed directory.
If you're building on Leopard (10.5) and want to target Tiger, you need some special hacks in order to build FFmpeg libraries loadable on Tiger. First open libavutil/file.c and add the following before all the #include's:
Then, add to the following after all the #include's:
Yes, this looks dirty! After, you need to link against Tiger's libraries. To do so, just define the following environment variable before building FFmpeg:
and if you don't have the whole MacOSX10.4u.sdk, you can just link against the libiconv of Tiger with the following environment variable:
This is required, at least for libiconv because, on Leopard, the version of this library is 7.0.0 and on Tiger the version number is 5.0.0.
For building FFmpeg, the general configure and make commands are:

along with that, you need some more specific flags to add to the configure script for each wanted architecture. Those are:
| Architecture | Flags |
|---|---|
| i386 | --prefix='$(pwd)/opt-i386' --cc='gcc-4.2 -arch i386' --cxx='g++-4.2 -arch i386' --arch='i386' |
| x86_64 | --prefix='$(pwd)/opt-x86_64' --cc='gcc-4.2 -arch x86_64' --cxx='g++-4.2 -arch x86_64' --disable-yasm --arch='x86_64' --cpu='x86_64' |
| ppc | --prefix='$(pwd)/opt-ppc' --cc='gcc-4.2 -arch ppc' --cxx='g++-4.2 -arch ppc' --disable-yasm --arch='ppc' --cpu='ppc' |
Please notice that:
- We need GCC 4.2 or later;
- We need to specify the target architecture to GCC, the
--archconfigureflag isn't enough and--cpudoesn't work with yasm; - We place each built architecture in a separate directory;
- You have to repeat the 'general' configure and make commands with the specific flags of the previous table for each wanted architecture;
If you're still alive on this step you could fix the install names of the generated libraries and make an Universal one. For each opt-arch directory do:
Then generate the Universal binary:
The resulting binaries are in the opt/lib folder and can be put in TenFourFox.app/Contents/MacOS.
A last note: FFmpeg stores the build path and configure options in the generated libraries. Make sure your files are in a path that doesn't leak sensitive information ;-).
Which modifications were made to TenFourFox in order to run FFmpeg?
Code change are located here.
Basically Firefox uses NSPR to load FFmpeg libraries (in fact it only loads libavcodec.dylib). Under 32-bit Mac OS X, NSPR uses NSAddressOfSymbol in order to get the adresses of the needed symbols inside FFmpeg. Unfornately some of the required symbols are located into other libraries loaded by libavcodec and NSAddressOfSymbol Check for update for mac os x el capitan. doesn't extends its search to those libraries. Fortunately, we don't have this problem with dlsym and code changes take in account behaviour.
As a extra, code changes also look for FFmpeg libraries inside the MacOS folder of the application package in order be able to bundle them into Firefox/TenFourFox (and that's what FFmpeg Enabler does).
Troubbleshooting
FFmpeg is not enabled
Enable it into about:config. Set the media.ffmpeg.enabled setting to trueby double-clicking it.
How to check if I can play H264 movies?
Install Ffmpeg Mac Os
You can freely check for H264 support on the following webpage: http://www.quirksmode.org/html5/tests/video.html