1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
Go to file
Philip Gladstone cb09b2ed92 * Go faster stripes: don't check to see if the user presses 'q' if stdin
returns EOF -- e.g. it is connected to /dev/null
* Make the 1MB video buffer only allocated once rather than on each frame.
  The allocation and deallocation causes significant performance loss as the
  kernel remaps the address space each time.

Originally committed as revision 629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-30 02:38:57 +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 * Add first cut of code to handle Windows Media Player rate switching 2002-05-26 03:36:34 +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.