Main Page

From FFmpeg on Windows

Jump to: navigation, search

(what the hell is this logo?)



Account creation has been disabled to prevent spam.

E-mail <arrozcru dot org at gmail dot com> if you want an account.



Quick and simple guide to FFmpeg+x264 on Windows

If you kind of know your way around compiling programs on Windows and all you want is a quick guide to have FFmpeg with x264, then follow the guide on this link here. If you have any doubts whatsoever with that guide, please come back and read the entire wiki. All the information contained in that guide is given with greater details around here.

FFmpeg on Windows

The purpose of this wiki is to provide help on everything that involves FFmpeg under Windows. It originated as a step-by-step guide for building under a MSys+MinGW system, but now also includes guides for using FFmpeg's libraries in your projects (C++, C#).

It does not cover Cygwin, since Cygwin is a system that behaves basically like a unix system, and the biggest problems of using FFmpeg occur with people that aren't very familiar with unix systems.

Before you start, these messages must be clearly understood:


First message:

FFMPEG DOES NOT BUILD UNDER MSVC++, AND WILL NOT, EVER, BUILD UNDER MSVC++.

MSVC++ still does not adhere to the C99 standard, and FFmpeg relies on it, because its developers chose to rely on it.

That means the entire build process of FFmpeg must be done with MSys+MinGW.

The libraries created by FFmpeg with MinGW are usable just like any other library (either static or shared), with a C99 compiler. This again means that MSVC++ is not supported. You can, however, modify your build system to behave more closely like a C99 system, and then you will be able to use FFmpeg's libraries with MSVC++.


Second message:

If you have any problems with this guide, please ask in the FFmpeg Windows Help Forum before asking in the ffmpeg-user mailinglist.



Basic Prerequisite

This might be out of the scope of this guide, but I don't want to leave room for any errors. For most people, this step can safely be skipped.

You will need a decompress utility that supports *.tar.gz and *.tar.bz2 files. You will need to extract packages to an specified folder. If you already have such program, and know how to extract packages to a specified folder, skip to Preparing the MSys+MinGW system.

I will show here how to use 7-Zip and WinRAR for such purpose.

7-Zip
WinRAR


Get Started >


Table of Contents

Main Page
Introduction
Preparing the MSys+MinGW system
Getting FFmpeg SVN
Building FFmpeg SVN statically
Building FFmpeg SVN dlls
Building FFplay
Building VHooks
Building documentation
Using External Libraries
Using FFmpeg SVN libraries with your MSVC++ program
Using FFmpeg SVN dlls with your C# program
FFmpeg Windows Help Forum
FFmpeg Windows Links


For FFmpeg on Windows CE, follow the FFmpeg Windows Links page.



Personal tools