FFmpeg

From Wikipedia, the free encyclopedia

(Redirected from Libavformat)
Jump to: navigation, search
FFmpeg
Developer: FFmpeg team
Latest release: 0.4.9-pre1
OS: Cross-platform
Genre: Multimedia framework
License: GNU Lesser General Public License
Website: http://ffmpeg.mplayerhq.hu/

FFmpeg is a collection of software libraries that can record, convert and stream digital audio and video in numerous formats. It includes libavcodec, an audio/video codec library used by several other projects, and libavformat, an audio/video container mux and demux library. The name of the project comes from the MPEG video standards group, together with "FF" for "fast forward".[1]

The project was started by Fabrice Bellard (using the pseudonym “Gerard Lantau”), and is now maintained by Michael Niedermayer. Most FFmpeg developers are also part of the MPlayer and VideoLAN projects, and FFmpeg is hosted at the MPlayer project server.

FFmpeg is developed under Linux, but it can be compiled under most operating systems, including Microsoft Windows. There are no formal releases. Instead, FFmpeg developers recommend using the latest Subversion snapshot as development maintains a constantly stable trunk. Released under the GNU Lesser General Public License or GNU General Public License (depending on which sub-libraries one would include), FFmpeg is free software.

Contents

Diagram showing different applications (VDR, Mplayer, Xine and VideoLAN) using FFmpeg
Diagram showing different applications (VDR, Mplayer, Xine and VideoLAN) using FFmpeg

The project is made of several components:

  • ffmpeg is a command line tool to convert one video file format to another. It also supports grabbing and encoding in real time from a TV card.
  • ffserver is an HTTP (RTSP is being developed) multimedia streaming server for live broadcasts. Time shifting of live broadcast is also supported.
  • ffplay is a simple media player based on SDL and on the FFmpeg libraries.
  • libavcodec is a library containing all the FFmpeg audio/video encoders and decoders. Most codecs were developed from scratch to ensure best performance and high code reusability.
  • libavformat is a library containing demuxers and muxers for audio/video container formats.
  • libavutil is a helper library containing routines common to different parts of FFmpeg.
  • libpostproc is a library containing video postprocessing routines.
  • libswscale is a library containing video image scaling routines.

The FFmpeg developers have reverse-engineered and/or reimplemented, among others:

See libavcodec for more details.

The default MPEG-4 codec used by FFmpeg for encoding has the FourCC of FMP4.

FFmpeg's legal status varies by country. Some included codecs, (such as Sorenson 3), are claimed by patent owners. Such claims may be enforceable in countries like the United States which recognize software patents. Furthermore, many of these codecs are only released under terms that forbid reverse engineering, even for purposes of interoperability. However, these terms of use are forbidden in certain countries. For example, some European Union nations do not recognize software patents and/or have laws expressly allowing reverse engineering for purposes of interoperability[4]. In any case, many Linux distributions do not include FFmpeg to avoid legal complications. You can read FFmpeg team statement here.

  1. ^ Bellard, Fabrice (18 February 2006). FFmpeg naming and logo. FFmpeg developer mailing list. Mplayer website. Retrieved on 2007-03-29.
  2. ^ a b c d e f g banan (17 April 2007). Changelog. FFmpeg trunk SVN. FFmpeg website. Retrieved on 2007-04-26.
  3. ^ a b banan (7 May 2007). FFmpeg development mailing list. FFmpeg development. FFmpeg website. Retrieved on 2007-06-01.
  4. ^ . Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs. 

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.