FFmpeg git repo
Go to file
Fabrice Bellard d01fe86dac put memory functions in a separate file so that the user can redefinite them without modifying the library
Originally committed as revision 684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-11 13:41:01 +00:00
doc Add the copyright/comment/author/title keywords 2002-06-05 02:19:45 +00:00
libav optimized ticker_tick() if num is big - please test it (should reduce CPU usage - this code is temporary before new PTS handling scheme) 2002-06-11 13:23:09 +00:00
libavcodec put memory functions in a separate file so that the user can redefinite them without modifying the library 2002-06-11 13:41:01 +00:00
postproc applied 64bit patch from Ulrich Hecht <uli at suse dot de> 2002-05-23 15:40:08 +00:00
tests use a local dir for tests 2002-06-05 18:14:21 +00:00
.cvsignore * cleanup 2002-04-26 07:18:57 +00:00
COPYING added license 2002-05-25 23:01:48 +00:00
Changelog updated 2002-05-25 22:18:04 +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
configure mpegaudio decoder is in high precision mode by default (low precision is only interesting for slow/old CPUs) 2002-06-01 14:35:55 +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 * Add code to restart ffmpeg if it crashes 2002-06-10 02:44:36 +00:00

README

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.