Click here to Skip to main content
11,429,382 members (69,080 online)
Click here to Skip to main content

Using FFMpeg in the Microsoft Visual C++ Environment

, 28 Jan 2007 CPOL
Rate this:
Please Sign up or sign in to vote.
Integrate the FFMpeg library into your Visual C++ project.

Sample Image - ffmpeglogo.jpg

Introduction

FFMpeg is a free video library that can record and convert audio and video data. FFMpeg is under GNU Lesser General Public License, but FFMpeg also uses some third party library which maybe under GNU General Public License. So before using FFMpeg library, you'd better spend some time on the license.

FFMpeg includes the following libraries:

  • libavcodec: All of the video and audio encoders and decoders.
  • libavformat: Demuxers and muxers for audio and video formats.
  • libavutil: Useful utils of FFMpeg.

Get FFMpeg Source Code

There are no formal releases of FFMpeg; however, you can get the FFMpeg source code on a daily basis.

svn://svn.mplayerhq.hu/ffmpeg/trunk

For example, you can checkout the source code using TortoiseSVN,

Checkout FFMpeg Source Code

Compiling FFMpeg

FFmpeg is developed under Linux, but it can be compiled under most Operating Systems.

For Windows, FFMpeg can be compiled with MSYS and MingGW. If you have setup MSYS and MingGW systems correctly, you can compile FFMpeg under its folder.

  1. Cleanup former build results.
  2. make distclean
  3. Setup build parameters.
  4. ./configure --enable-shared --disable-static --enable-memalign-hack

    If there are no errors, and config.mak and config.h were generated, you can build the library, and then, if you want, you can install them into the MSYS environment.

    make
    make install

Using FFMpeg in Your Visual C++ Environment

  1. Create inttypes.h and stdint.h if you don't have them. Provided in the above link is a copy of these two files. You can get them from another place if you want.
  2. Set up additional include directories and additional library directories. By default, these folders are under your MSYS folder, for example:
  3. /usr/local/include
    /usr/local/lib
  4. Add FFmpeg's shared libraries, including libavutil.lib, libavcodec.lib, and libavformat.lib.
  5. Include the FFMpeg header:
  6. #include <ffmpeg/avformat.h>
    #include <ffmpeg/avcodec.h>

Using the FFMpeg code

There is an example within FFMpeg, output_example.c. But if you have copied code from this example, following tips may ensure you compile successfully.

  1. Add the required casts.
  2. Change snprintf to _snprintf.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Denny50
Software Developer (Senior)
Australia Australia
No Biography provided

Comments and Discussions

 
GeneralMy vote of 1 Pin
jshaa6-Jan-11 3:44
memberjshaa6-Jan-11 3:44 
GeneralThe procedure entry point url_fclose could not be located in the dynamic link library avcodec-52.dll exception Pin
ndquangr9-Nov-10 17:29
memberndquangr9-Nov-10 17:29 
GeneralRe: The procedure entry point url_fclose could not be located in the dynamic link library avcodec-52.dll exception Pin
llllskywalker13-Jun-11 13:10
memberllllskywalker13-Jun-11 13:10 
GeneralVideo Encoding with FFMPEG using avcodec Pin
GPUToaster4-Jul-10 2:19
memberGPUToaster4-Jul-10 2:19 
GeneralUsing FFmpeg article Pin
soft_support30-Mar-10 13:56
membersoft_support30-Mar-10 13:56 
GeneralRe: Using FFmpeg article Pin
lsyueh25-Oct-10 17:05
memberlsyueh25-Oct-10 17:05 
Generalno lib files Pin
Ayman Alterawi17-Jan-10 7:41
memberAyman Alterawi17-Jan-10 7:41 
GeneralRe: no lib files Pin
Member 9800116-Mar-10 10:03
memberMember 9800116-Mar-10 10:03 
GeneralRe: no lib files Pin
Ayman Alterawi16-Mar-10 10:14
memberAyman Alterawi16-Mar-10 10:14 
GeneralRe: no lib files - Instructions for Generating the dynamic libs from dll files. Pin
Quickshot17-Mar-10 6:39
memberQuickshot17-Mar-10 6:39 
GeneralRe: no lib files - main.cpp file that this was tested and verified with. Pin
Quickshot17-Mar-10 11:48
memberQuickshot17-Mar-10 11:48 
GeneralRe: no lib files - swscale lib and configure command Pin
Quickshot17-Mar-10 11:53
memberQuickshot17-Mar-10 11:53 
GeneralRe: no lib files Pin
JaydeepB17-Mar-10 14:11
memberJaydeepB17-Mar-10 14:11 
QuestionHow to convert .wma format data to mp3 format, on the fly? Pin
semaphore125-Dec-09 0:10
membersemaphore125-Dec-09 0:10 
GeneralLink error Pin
metalmonkey16-Jun-09 14:53
membermetalmonkey16-Jun-09 14:53 
GeneralRe: Link error Pin
metalmonkey16-Jun-09 18:15
membermetalmonkey16-Jun-09 18:15 
GeneralMy vote of 1 Pin
squibman25-Mar-09 12:52
membersquibman25-Mar-09 12:52 
AnswerRe: My vote of 1 Pin
squibman26-Mar-09 12:40
membersquibman26-Mar-09 12:40 
GeneralRe: My vote of 1 Pin
RajaManikandan_R16-Sep-10 18:38
memberRajaManikandan_R16-Sep-10 18:38 
Generalexecute configure Pin
JlkBrgr24-Jul-08 0:32
memberJlkBrgr24-Jul-08 0:32 
GeneralRe: execute configure Pin
JlkBrgr24-Jul-08 0:56
memberJlkBrgr24-Jul-08 0:56 
GeneralRe: execute configure Pin
squibman26-Mar-09 12:48
membersquibman26-Mar-09 12:48 
QuestionIs it possible to compile the ffmpeg under VC++? Pin
Shuang. Wu22-Jun-08 19:21
memberShuang. Wu22-Jun-08 19:21 
AnswerRe: Is it possible to compile the ffmpeg under VC++? Pin
RajaManikandan_R16-Sep-10 19:09
memberRajaManikandan_R16-Sep-10 19:09 
Generalask about the features in this project Pin
mulyky1-Dec-07 19:17
membermulyky1-Dec-07 19:17 
QuestionCould you explain in detail ? Pin
Doh Kim26-Nov-07 6:00
memberDoh Kim26-Nov-07 6:00 
QuestionHow could I use ffmpeg library in my MFC application? Pin
Hemang Raval6-Nov-07 0:12
memberHemang Raval6-Nov-07 0:12 
AnswerRe: How could I use ffmpeg library in my MFC application? Pin
sillvyy16-Jun-10 22:39
membersillvyy16-Jun-10 22:39 
QuestionHow to compile FFMpeg? Pin
tuananh_do3-Jul-07 18:35
membertuananh_do3-Jul-07 18:35 
AnswerRe: How to compile FFMpeg? Pin
Denny Wang3-Jul-07 18:46
memberDenny Wang3-Jul-07 18:46 
GeneralRe: How to compile FFMpeg? Pin
tuananh_do3-Jul-07 19:09
membertuananh_do3-Jul-07 19:09 
GeneralRe: How to compile FFMpeg? Pin
Denny Wang3-Jul-07 19:22
memberDenny Wang3-Jul-07 19:22 
GeneralRe: How to compile FFMpeg? Pin
tuananh_do3-Jul-07 20:34
membertuananh_do3-Jul-07 20:34 
GeneralRe: How to compile FFMpeg? Pin
cruz.fernandez24-Jun-08 7:21
membercruz.fernandez24-Jun-08 7:21 
GeneralRe: How to compile FFMpeg? Pin
RajaManikandan_R29-Jul-10 22:34
memberRajaManikandan_R29-Jul-10 22:34 
Generalought to write some about how to debug in windows Pin
ikohl28-Apr-07 17:15
memberikohl28-Apr-07 17:15 
AnswerRe: ought to write some about how to debug in windows Pin
PigeonRat30-Jun-07 15:09
memberPigeonRat30-Jun-07 15:09 
Generalyes, i found that also Pin
ikohl2-Jul-07 16:52
memberikohl2-Jul-07 16:52 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.150428.2 | Last Updated 28 Jan 2007
Article Copyright 2007 by Denny50
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid