FFmpeg git repo
Go to file
Philip Gladstone cde25790ec * New stuff and bug fixes:
* Change to dynamically allocated buffers. Should reduce memory footprint significantly
  as well as eliminate a call to av_abort!
* Better version of WMP rate switching infrastructure. Currently turned off till
  the PTS fixes are in.
* Added a Redirect type feature. This allows URLs served by ffserver to just
  redirect to somewhere else. You might want to do this. Really this needs to
  be enhanced -- say to handle all 404 pages.
* Add mechanism to automatically fire up ffmpeg on ffserver start. This is turned
  on by adding the Launch keyword to the <feed> definition.
* Add logic to take care of non-wmp user agents requesting .asf files. They now get
  a [reference] file with an appropriate mime type. This fixes the mplayer problem.
* Make sure that we have a large buffer for the stats page.
* Add a FaviconURL keyword to the status stream definition. If set, then it
  generates the appropriate HTML so that IE and Mozilla will display the favicon
  as appropriate. OK -- this is a pretty random feature.
* If the ffmpeg is running as a child of ffserver, then report it's CPU usage
  on the status page. [This is linux only -- maybe somebody could do the work for
  another OS. The tricky thing is getting the 'ps' command right.]

Originally committed as revision 630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-30 02:49:07 +00:00
doc update 2002-05-25 22:26:48 +00:00
libav Make sure that the http_proxy environment variable starts with http:// 2002-05-29 21:18:06 +00:00
libavcodec * using unrolled loops seems to help to MMX Celerons 2002-05-29 20:00:10 +00:00
postproc applied 64bit patch from Ulrich Hecht <uli at suse dot de> 2002-05-23 15:40:08 +00:00
tests * added dependency on dsputil_mmx_rnd.h for dsputil test 2002-05-29 20:55:16 +00:00
.cvsignore * cleanup 2002-04-26 07:18:57 +00:00
Changelog updated 2002-05-25 22:18:04 +00:00
configure bsd fixes 2002-05-26 15:08:53 +00:00
COPYING added license 2002-05-25 23:01:48 +00:00
ffmpeg.c * Go faster stripes: don't check to see if the user presses 'q' if stdin 2002-05-30 02:38:57 +00:00
ffserver.c * New stuff and bug fixes: 2002-05-30 02:49:07 +00:00
INSTALL add more info about new configure features 2002-05-25 22:21:14 +00:00
Makefile license/copyright change - use consistent library names 2002-05-25 22:22:57 +00:00
README license/copyright change 2002-05-25 22:23:19 +00:00
VERSION version info for so too 2002-05-09 06:23:37 +00:00

1) Introduction
---------------

ffmpeg is a hyper fast realtime audio/video encoder, a streaming
server and a generic audio and video file converter. 

It can grab from a standard Video4Linux video source and convert it
into several file formats based on DCT/motion compensation
encoding. Sound is compressed in MPEG audio layer 2 or using an AC3
compatible stream.

What makes ffmpeg interesting ?

- Innovative streaming technology : multiformat, real time encoding,
  simple configuration.

- Simple and efficient video encoder: outputs MPEG1, H263, Real
  Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the
  same encoder core.

- Real time encoding (25 fps in 352x288 on a K6 500) using the
  video4linux API.

- Generates I and P frames, which means it is far better than a MJPEG
  encoder.

- Hyper fast MPEG audio layer 2 compression (50 times faster than
  realtime on a K6 500).

- Hyper fast AC3 compatible encoder.

- simple and very small portable C source code, easy to understand and
  to modify. It be may the smallest decent MPEG encoder :-)

- optional non real time higher quality encoding (different motion
  estimators available).

- Audio and Video decoders are in development.

ffmpeg is made of two programs:

* ffmpeg: soft VCR which encodes in real time to several formats. It
  can also encode from any supported input file format to any input
  supported format.

* ffserver: high performance live broadcast streaming server based on
  the ffmpeg core encoders.

2) Documentation
----------------

* Read doc/ffmpeg.txt and doc/ffserver.txt to learn the basic features.

* Read doc/TODO to know what are the know bugs and missing features.

* Read doc/README.dev if you want to contribute or use the codec or
  format libraries.

3) Licensing:
------------

* See the file COPYING. ffmpeg and the associated library EXCEPT
  liba52 are licensed under the Lesser GNU General Public
  License. liba52 is distributed under the GNU General Public License.

* This code should be patent free since it is very simple. I took care
  to use the same video encoder/decoder core for all formats to show
  that they really are mostly the same.

Fabrice Bellard.