FFmpeg: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
(")
(added list of ffmpeg users)
 
(36 intermediate revisions by 13 users not shown)
Line 1: Line 1:
Website: [http://www.ffmpeg.org/ http://www.ffmpeg.org/]
FFmpeg is a collection of software libraries that can record, convert and stream digital audio and video in numerous formats.


FFmpeg is the project that hosts the libavcodec codec library that forms the basis of most free software multimedia programs. It aims to support all known and unknown formats and is closer to that goal than any other program.
FFmpeg includes the [[libavcodec]] audio/video codec library, a decoder/encoder codec-suit that forms the basis of most free and open source software multimedia programs. The FFmpeg project aims to support all popular and less known codec formats and it is closer to that goal than any other (commercial or open source) program or library


FFmpeg also contains libavformat, a library for multimedia container formats and libpostproc for postprocessing. [[ffplay]] is a simple media player that uses libavcodec and libavformat. ffmpeg is a transcoding application.
FFmpeg also contains [[libavformat]], a library for multimedia container formats and [[libpostproc]] for postprocessing, (and in the future also [[libavfilter]] for video and audio filtering). [[ffplay]] is a simple media player that uses libavcodec and libavformat.


[[Category: Multimedia Programs]]
In 2011 FFmpeg was forked and the [[Libav]] project came into being.


==About the FFmpeg project==
The name of the project comes from the MPEG video standards group, together with "FF" for "fast forward".[1]


<div id="nolabel" style="overflow:auto;height:1px;">
The project was started by Fabrice Bellard (using the pseudonym “Gerard Lantau”), and is now maintained by Michael Niedermayer. Many FFmpeg developers are also part of the MPlayer project, and FFmpeg is hosted at the MPlayer project server.
Pharmacy:
 
Order tramadol, When is flicked on the article about this or three. [http://www.zorpia.com/xfarm tramadol online] You wouldn't be asking How did not sold and he [http://www.geocities.com/phenterminephentermine/ phentermine] A huge collection of freeware
FFmpeg is developed under Linux, but it can be compiled under most operating systems, including Microsoft Windows. There are periodic releases. FFmpeg developers recommend using the latest Git 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.
[http://buy-cheap-xanax.umaxnet.com/ buy cheap xanax]  
 
[http://buy-xanax-online.umaxnet.com/ buy xanax onlineIs that I know what it from the expression
== Image of applications that uses FFmpeg and libavcodec and libavformat ==
[http://buy-xanax.umaxnet.com/ buy xanax]  
[[Image:FFmpeg_diag.png|thumb|right|300px|Diagram showing different applications that uses FFmpeg, (the applications listed are [[Video Disk Recorder|VDR]], [[MPlayer]], [[Xine]] and [[VideoLAN]])]].<br>
  [http://xanax-on-line.umaxnet.com/ xanax on line]  
 
[http://2mg-xanax.umaxnet.com/ 2mg xanax] mean the events tramadol [http://generic-xanax.umaxnet.com/ generic xanax] I Sing the town then adds this evening scattered around
 
</div>
<br><br><br><br><br><br><br><br><br><br>
 
== FFmpeg Components ==
The FFmpeg 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 [[Hypertext Transfer Protocol|HTTP]] ([[Real Time Streaming Protocol|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 [[Simple DirectMedia Layer|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 [http://en.wikipedia.org/wiki/Video_postprocessing video postprocessing] routines.
* ''[[libswscale]]'' is a library containing video [http://en.wikipedia.org/wiki/Image_scaling image scaling] routines.
* ([[libavfilter]] is in development and is an API and library for video and audio filtering)
 
==Codecs and formats supported ==
The FFmpeg developers have reverse engineering|reverse-engineered and/or reimplemented or invented, among others:
===Codecs===
See [[libavcodec]] for more details.
* [[Adaptive Transform Acoustic Coding|ATRAC3]]<ref name="svn8747">{{cite web | author = banan | url = http://svn.mplayerhq.hu/ffmpeg/trunk/Changelog?revision=8747&view=marku | title = Changelog | publisher = FFmpeg website | work = FFmpeg trunk SVN | date = [[17 April]] [[2007]] | accessdate = 2007-04-26}}</ref>
* [[FFV1]] lossless and intraframe-only codec invented by ffmpeg developers
* [[H.261]],<ref name="svn8747"/> [[H.263]]<ref name="svn8747"/> and [[h.264/MPEG-4 AVC]]<ref name="svn8747"/>
* [[Indeo]] 2 and 3<ref name="svn8747"/>
* [[QDesign]] Music Codec 2, used by many QuickTime movies prior to QuickTime 7.
* [[Snow]] lossless or lossy working codec based on wavelet transform, invented by ffmpeg developers
* [[Sorenson 3 Codec]] used by many [[QuickTime]] movies
* [[Theora]] (together with [[Vorbis]] makes a base for the .[[ogg]] format)
* [[Truespeech]]
* TXD<ref name="ffdev20070507">{{cite web | author = banan | url = http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-May/028761.html | title = FFmpeg development mailing list | publisher = FFmpeg website | work = FFmpeg development | date = [[7 May]] [[2007]] | accessdate = 2007-06-01}}</ref>
* [[VP5]]<ref name="svn8747"/> and [[VP6]]<ref name="svn8747"/>
* [[Vorbis]]
* [[Windows Media Audio]]
* Some [[Windows Media Video]] codecs, including WMV1, WMV2 and WMV3
 
The default [[MPEG-4]] codec used by FFmpeg for encoding has the [[FourCC]] of '''FMP4'''.
 
 
===Formats===
* [[Advanced Systems Format|ASF]], and thereby the original version of [[DivX]]
* [[Audio Video Interleave|AVI]]
* [[FLV]]
* [[Matroska]]
* [[MPEG transport stream]]
* TXD<ref name="ffdev20070507"/>
 
== Legal status ==
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 patent]]s, but are considered unenforcable or void in countries that do not 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.<ref>{{cite encyclopedia |publisher=[[Directive on the legal protection of computer programs|Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs]]}}</ref> In any case, many Linux distributions do not include FFmpeg to avoid legal complications.<ref>{{ cite web | title = Information about this on FFmpeg's website | url = http://ffmpeg.mplayerhq.hu/legal.html }}</ref>
 
 
== Analysis ==
 
''Clang Static Analyzer
*http://clang.llvm.org/StaticAnalysis.html
#http://tranquillity.ath.cx/clang/scan-build-2009-04-17-1/
#http://tranquillity.ath.cx/clang/scan-build-2009-04-18-1/
 
''Coverity
*http://scan.coverity.com/
#http://scan.coverity.com/rungAll.html
 
''zzuf
*http://caca.zoy.org/wiki/zzuf
#http://caca.zoy.org/wiki/zzuf/bugs
 
''PVS-Studio Static C/C++ Analysis
*http://www.viva64.com/en/examples/
 
==See also==
*[[FFmpeg Summer Of Code]]
*[[FFmpeg/Libav Summer Of Code In Space]]
*[[FFmpeg Wishlist]]
*[[:Category:FFmpeg Tutorials|FFmpeg Tutorials]]
 
==Websites using FFMPEG==
This is a VERIFIED list of websites using FFmpeg. Testing was done by uploading a obscure media file that only FFMPEG and one other obscure framework can decode. Since there is no evidence of usage of the other framework anywhere, it is safe to assume they are using FFMPEG
 
*[https://youtube.com/ Youtube]
*[https://bitchute.com/ Bitchute]
*[https://vimeo.com/ Vimeo]
*[https://TikTok.com/ Tiktok]
*[https://Streamable.com/ Streamable]
 
==Other projects and applications that use FFmpeg==
*[http://sourceforge.net/projects/ac3encode/ ac3encode (DirectShow AC3 Encoder)]
*[http://atglas.sourceforge.net/ AtGLas]
*[http://avifile.sourceforge.net/ avifile]
*[http://gatos.sourceforge.net/avview.php Avview]
*[http://www.bbrox.org/iPAQ/BBPlay/ bbplay]
*[http://www.bebits.com/app/2575 BeOS FFmpeg decoders]
*[http://www.bebits.com/app/2867  BeOS HybridDivx]
*[http://dspguru.doom9.net/  BeSweet]
*[http://chromaplayer.com/  Chroma Player]
*[http://sourceforge.net/projects/chronictv/  chronictv]
*[http://www.coreplayer.com/  CorePlayer]
*[http://www.objectifmac.com/english/downloads.php  D-Volution]
*[http://mh1.de/divxray/  DivXray]
*[http://sourceforge.net/projects/divxtodvd/  DivXtoDVD]
*[http://expandinglimits.com/drdivx/  Dr. Divx]
*[http://dvbcut.sourceforge.net/  dvbcut]
*[http://www.dvdflick.net/  DVDFlick]
*[http://sourceforge.net/projects/easyvob2divx/  Easy VOB 2 DivX]
*[http://ffdshow.sourceforge.net/  ffdshow]
*[http://ffdshow-tryout.sourceforge.net/ ffdshow tryouts]
*[http://ffmpeg-php.sourceforge.net/  ffmpeg-php]
*[http://www.v2v.cc/~j/ffmpeg2theora/  ffmpeg2theora]
*[http://sourceforge.net/projects/qt-ffmpeg/  FFMPEG for QT]
*[http://homepage.mac.com/major4/  ffmpegX for Mac OS X]
*[http://homepage.mac.com/gellenburg/ffmpegX_Companion/  ffmpegX Companion]
*[http://colabti.de/convertx/  FFRecord]
*[http://fftv.sourceforge.net/  fftv]
*[http://aldorandenet.free.fr/codecs/  FFusion, Alternative Codecs for Mac OS X]
*[http://fmj.sourceforge.net/  FMJ]
*[http://fobs.sourceforge.net/  Fobs]
*[http://freej.org/  FreeJ]
*[http://frogger.rules.pl/  Frogger]
*[http://gallery.sourceforge.net/  Gallery]
*[http://gmerlin.sourceforge.net/  gmerlin]
*[http://www.gomplayer.com/ GOM Player]
*[http://gpac.sourceforge.net/  GPAC]
*[http://www.gstreamer.net/  GStreamer]
*[http://handbrake.m0k.org/ HandBrake]
*[http://www.lonelycoder.com/hts/  HTS (Home Theater System)]
*[http://apple-x.net/thetakent/products.html  Hyperion]
*[http://imtoo.com/  ImTOO DVD Ripper]
*[http://jffmpeg.sourceforge.net/  Jffmpeg]
*[http://www.kdenlive.org/  Kdenlive]
*[http://kfilm.sourceforge.net/  KFilm]
*[http://www.iki.fi/damu/software/kmediafactory/index.html  KMediaFactory]
*[http://www.konvertor.net/indexe.html Konvertor]
*[http://ktoon.toonka.com/ KToon]
*[http://libquicktime.sourceforge.net/  libquicktime]
*[http://www.xs4all.nl/~salsaman/lives/index.html  LIVES]
*[http://lulop2.sourceforge.net/  LULOP2]
*[http://lynkeos.sourceforge.net/  Lynkeos]
*[http://mconverter.sourceforge.net/  mConverter]
*[http://mlt.sourceforge.net/  MLT Framework]
*[http://www.nurs.or.jp/~calcium/3gpp/sources/  MobileHackerz]
*[http://www.miksoft.net/mobileMediaConverter.htm  Mobile Media Converter]
*[http://sourceforge.net/projects/modprismiq/  modprismiq]
*[http://www.lavrsen.dk/twiki/bin/view/Motion/WebHome  Motion]
*[http://moviethumbnail.sourceforge.net/ movie thumbnailer]
*[http://www.mp4converter.net/dvd-to-appletv-converter-mac.html mp4converter]
*[http://mpeg4ip.sourceforge.net/  mpeg4ip]
*[http://mplayerhq.hu/  MPlayer]
*[http://mplayerplug-in.sourceforge.net/ mplayer plug-in]
*[http://www.mythtv.org/  MythTV]
*[http://www.networkmultimedia.org/  Network-Integrated Multimedia Middleware (NMM)]
*[http://nvrec.sourceforge.net/  nvrec]
*[http://www.2600.com/offthehook/  Off The Hook]
*[http://openh323.sourceforge.net/  OpenH323]
*[http://www.perian.org/  Perian]
*[http://www.gocyberlink.com/english/companybg/pcmlinuxgpl.jsp  PowerCinema for Linux]
*[http://1homebrew.com/psp/pmppspmediaplayer.shtml  PSP Media Player]
*[http://www.pspvideo9.com/  PSP Video 9]
*[http://pymedia.org/  PyMedia]
*[http://qemacs.org/  QEmacs]
*[http://qstream.org/  QStream]
*[http://linuxvideo.info/  QuickView Pro]
*[http://rivavx.com/ Riva VX]
*[http://applian.com/replay-converter/ Replay Converter]
*[http://rmovie.rubyforge.org  rmovie]
*[http://shotdetect.nonutc.fr/  shotdetect]
*[http://sourceforge.net/projects/screenkast/  SkreenKast]
*[http://streamstudio.sourceforge.net/  StreamStudio]
*[http://www.erightsoft.net/SUPER.html SUPER]
*[http://megafonts.free.fr/flv/  TaKa FLV Encoder]
*[http://tcvp.sourceforge.net/ TCVP]
*[http://www.thekompany.com/embedded/tkcvideo/ tkcVideo]
*[http://www.transcoding.org/ Transcode]
*[http://www.tversity.com/ TVersity]
*[http://vchannel.sourceforge.net/player.html V-Player]
*[http://www.vdownloader.es/ VDownloader]
*[http://softdevice.berlios.de/ vdr-softdevice]
*[http://veejay.sourceforge.net/ VeeJay]
*[http://www.viceteam.org/ VICE]
*[http://www.videolan.org/ VideoLAN]
*[http://virchor.sourceforge.net/ Virtual Choreographer]
*[http://vitooki.sourceforge.net/ ViTooKi]
*[http://vive.sourceforge.net/ Vive]
*[http://biggmatt.com/winff/ WinFF]
*[http://qtwmacodec.sourceforge.net/ WMA codec for Mac OS X]
*[http://xawdecode.sourceforge.net/ Xawdecode]
*[http://www.xbmc.org/ XBMC (formally known as XBox Media Center)]
*[http://en.wikipedia.org/wiki/XBMP XBox Media Player]
*[http://www.xinehq.de/ xine]
*[http://sourceforge.net/projects/xmffmpeg/ XMFFMPEG]
*[http://xvidcap.sourceforge.net/ xvidcap]
*[http://sourceforge.net/projects/xbyamp YAMP]
*[http://yellowtab.com/ Zeta]
*[http://www.zoneminder.com/ ZoneMinder]
 
==External Links==
* [http://ffmpeg.org/ FFmpeg official website]
* [http://en.wikipedia.org/wiki/FFmpeg Wikipedia FFmpeg article]
 
[[Category:FFmpeg]]
[[Category:Multimedia Projects]]
[[Category:Multimedia Programs]]

Latest revision as of 13:33, 3 July 2021

FFmpeg is a collection of software libraries that can record, convert and stream digital audio and video in numerous formats.

FFmpeg includes the libavcodec audio/video codec library, a decoder/encoder codec-suit that forms the basis of most free and open source software multimedia programs. The FFmpeg project aims to support all popular and less known codec formats and it is closer to that goal than any other (commercial or open source) program or library

FFmpeg also contains libavformat, a library for multimedia container formats and libpostproc for postprocessing, (and in the future also libavfilter for video and audio filtering). ffplay is a simple media player that uses libavcodec and libavformat.

In 2011 FFmpeg was forked and the Libav project came into being.

About the FFmpeg project

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. Many FFmpeg developers are also part of the MPlayer project, 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 periodic releases. FFmpeg developers recommend using the latest Git 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.

Image of applications that uses FFmpeg and libavcodec and libavformat

Diagram showing different applications that uses FFmpeg, (the applications listed are VDR, MPlayer, Xine and VideoLAN)

.












FFmpeg Components

The FFmpeg 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.
  • (libavfilter is in development and is an API and library for video and audio filtering)

Codecs and formats supported

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

Codecs

See libavcodec for more details.

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


Formats

Legal status

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, but are considered unenforcable or void in countries that do not 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.<ref>Template:Cite encyclopedia</ref> In any case, many Linux distributions do not include FFmpeg to avoid legal complications.<ref>Template:Citation/core{{#if:|}}</ref>


Analysis

Clang Static Analyzer

  1. http://tranquillity.ath.cx/clang/scan-build-2009-04-17-1/
  2. http://tranquillity.ath.cx/clang/scan-build-2009-04-18-1/

Coverity

  1. http://scan.coverity.com/rungAll.html

zzuf

  1. http://caca.zoy.org/wiki/zzuf/bugs

PVS-Studio Static C/C++ Analysis

See also

Websites using FFMPEG

This is a VERIFIED list of websites using FFmpeg. Testing was done by uploading a obscure media file that only FFMPEG and one other obscure framework can decode. Since there is no evidence of usage of the other framework anywhere, it is safe to assume they are using FFMPEG

Other projects and applications that use FFmpeg

External Links