Commit Graph

143 Commits

Author SHA1 Message Date
Stefano Sabatini
f8fea468b2 Rename ff_eval_free() to ff_free_expr().
Originally committed as revision 22834 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-11 11:47:33 +00:00
Måns Rullgård
94ca624fbc Move ff_sqrt() to libavutil/intmath.h
Originally committed as revision 22345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:19:56 +00:00
Michael Niedermayer
25ef00720b Remove 2 useless assignments from ff_rate_control_init() found by CSA.
Originally committed as revision 18573 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-17 17:52:58 +00:00
Michael Niedermayer
956177fb1d Remove unused variable in modify_qscale() found by CSA.
Originally committed as revision 18563 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-17 15:08:00 +00:00
Diego Biurrun
bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Aurelien Jacobs
b250f9c66d Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Baptiste Coudurier
3bff4d8b7a Implement the fields rc_max_available_vbv_use and
rc_min_vbv_overflow_use in AVCodecContext, and use their values in the
ratecontrol code rather than hardcoded ones.

See the thread: "[RFC] ratecontrol buffer size magic".
Patch by Baptiste Coudurier.

Originally committed as revision 15955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-29 14:08:48 +00:00
Reimar Döffinger
9b5ede5b64 Add (additional) const to many global tables.
Originally committed as revision 15515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-02 15:52:04 +00:00
Michael Niedermayer
3cffbe090a Fix rc_eq mem leak.
Originally committed as revision 14788 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-16 14:46:31 +00:00
Stefan Gehrer
cf2baeb338 mark read-only data as const
Originally committed as revision 13947 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-24 20:01:31 +00:00
Diego Biurrun
842eabc5f9 cosmetics: XviD is now called Xvid.
Originally committed as revision 13465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-27 12:32:59 +00:00
Diego Biurrun
170c0b455c Fix typo in variable name: blured --> blurred.
Originally committed as revision 12556 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-22 17:34:29 +00:00
Diego Biurrun
04932b0d97 cosmetics: typo fixes
Originally committed as revision 12554 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-22 16:46:36 +00:00
Aurelien Jacobs
9701840bb5 add FF_ prefix to all (frame)_TYPE usage
Originally committed as revision 12399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-09 23:31:02 +00:00
Reimar Döffinger
e3cb2c4a08 Missing const
Originally committed as revision 12147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-19 21:37:53 +00:00
Michael Niedermayer
90901860c2 stupid code (casting of void*) found by checktree.sh
Originally committed as revision 11117 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-01 00:19:44 +00:00
Michael Niedermayer
f612801465 fix timestamps used for ratecontrol
these were wrong (in pts vs dts sense) when b frames were in use
they were also wrong if the average framerate was smaller than 1/timebase
resulting in totally wrong final bitrate

Originally committed as revision 10477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-11 22:46:41 +00:00
Michael Niedermayer
2711cb28f4 prevent assert failure with negative quant_offset
Originally committed as revision 9830 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-29 21:34:31 +00:00
Diego Biurrun
df3a80b50a cosmetics: misc typo fixes
Originally committed as revision 9815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-28 12:46:26 +00:00
Diego Biurrun
82634feeb5 CONFIG_XVID --> CONFIG_LIBXVID
Originally committed as revision 9466 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-03 09:12:55 +00:00
Diego Biurrun
755bfeabcc misc spelling fixes
Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 09:29:25 +00:00
Michael Niedermayer
0fa9a5ddc7 check qblur > 1 (prevent assert failure / segfault)
fixes sf bug #797610

Originally committed as revision 9166 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-31 21:40:22 +00:00
Diego Biurrun
e42dba481f typos/grammar
Originally committed as revision 8641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-07 14:09:20 +00:00
Reimar Döffinger
f66e4f5f9e Add av_ prefix to clip functions
Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 10:27:12 +00:00
Diego Biurrun
eafcac6ac8 cosmetics: Fix another common typo, dependAnt --> dependEnt.
Originally committed as revision 8114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-24 09:41:43 +00:00
Oded Shimon
bb0f1ea72f update ratecontrol to new ff_eval API
Originally committed as revision 6808 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-27 20:16:26 +00:00
Diego Biurrun
c26abfa541 Rename ABS macro to FFABS.
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Diego Biurrun
b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Panagiotis Issaris
0de9926f62 Move the ratecontrol related code from mpegvideo.h to a separate header file.
Originally committed as revision 6386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-29 19:39:19 +00:00
Panagiotis Issaris
4d7b4613a1 Pull out the ff_eval* from the mpegvideo header, as it doesn't belong there and
put it in a separate file.

Originally committed as revision 6383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-29 19:33:04 +00:00
Panagiotis Issaris
d80f243ae9 Make ratecontrol use ff_eval2().
Originally committed as revision 6354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-27 19:46:19 +00:00
Panagiotis Issaris
4156a436e3 Handle possible failure of ff_eval.
Originally committed as revision 6338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-26 14:04:36 +00:00
Corey Hickey
577cd173e3 second pass encoding changes:
- warn rather than fail when specified bitrate need not be used
- fail with a useful message when specified bitrate is too low
- print potentially useful information if verbose

patch based mostly on suggestions from Michael Niedermayer and Loren Merritt

Originally committed as revision 6176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-05 15:46:06 +00:00
Michael Niedermayer
353e433b96 seems the output of that code is never used
Originally committed as revision 6170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-04 21:11:54 +00:00
Corey Hickey
29b372b9e9 error message spelling typo
Originally committed as revision 6168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-04 17:08:20 +00:00
Michael Niedermayer
2fefd23b96 fabs is better then abs for floats ...
Originally committed as revision 5422 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-29 16:50:37 +00:00
Michael Niedermayer
5fe4cf7b9f fix frametypes with xvid_rc
Originally committed as revision 5180 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-18 20:43:48 +00:00
Corey Hickey
022fad4833 make ff_rate_control_init() bail out if rc_strategy==1 and lavc wasn't
compiled with xvid support.

Originally committed as revision 5176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-17 16:40:10 +00:00
Michael Niedermayer
1953105102 10l forgot #ifdef CONFIG_XVID
Originally committed as revision 4895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-25 02:16:27 +00:00
Michael Niedermayer
64b7c5b6f6 xvid ratecontrol support
Originally committed as revision 4894 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-24 21:57:26 +00:00
Diego Biurrun
5509bffa88 Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Michael Niedermayer
82b019cefd better f_code guessing in 2nd pass
Originally committed as revision 4766 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 22:48:09 +00:00
Michael Niedermayer
8ed9f9ab32 use correct qp & lambda for ME on the second pass
Originally committed as revision 4757 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-19 13:41:27 +00:00
Diego Biurrun
115329f160 COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Michael Niedermayer
c0df9d75bd switch to native time bases
Originally committed as revision 4168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-30 21:43:59 +00:00
Mike Melanson
160d679c07 Ministry of English Composition, reporting for duty (and the word is "skipped", not "skiped"; "skiped" would rhyme with "hyped")
Originally committed as revision 4153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-24 17:21:11 +00:00
Michael Niedermayer
6e0d8c06c7 mb_lmin/max to limit the per mb quality for the ratecontrol independant from the frame limits
Originally committed as revision 3928 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 19:33:48 +00:00
Christophe Massiot
957c743a23 Border processing adaptive quant patch by (Christophe Massiot |cmassiot freebox fr)
Originally committed as revision 3927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 18:49:04 +00:00
Michael Niedermayer
2fc8ea249f dissallow sprintf
Originally committed as revision 3823 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-12 00:59:42 +00:00
Michael Niedermayer
0ecca7a49f various security fixes and precautionary checks
Originally committed as revision 3822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-12 00:16:25 +00:00
Michael Niedermayer
e9a4834a7d normalize adaptive quantizatiuon fix (based upon a patch by (Jindrich Makovicka <makovick at kmlinux dot fjfi dot cvut dot cz>))
Originally committed as revision 2780 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-14 13:37:58 +00:00
Michael Niedermayer
8f2ab83318 copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise
Originally committed as revision 2686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-10 16:04:55 +00:00
Michael Niedermayer
bb198e198a interlaced motion estimation
interlaced mpeg2 encoding
  P & B frames
  rate distored interlaced mb decission
  alternate scantable support
4mv encoding fixes (thats also why the regression tests change)
passing height to most dsp functions
interlaced mpeg4 encoding (no direct mode MBs yet)
various related cleanups
disabled old motion estimaton algorithms (log, full, ...) they will either be fixed or removed

Originally committed as revision 2638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-30 16:07:57 +00:00
Michael Niedermayer
1031fabd14 picture number fixes
Originally committed as revision 2634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-29 22:25:08 +00:00
Michael Niedermayer
d60a8f85d7 vbv_delay
Originally committed as revision 2623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-17 19:53:05 +00:00
Michael Niedermayer
d55f7b6521 cleanup
Originally committed as revision 2605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-13 20:41:33 +00:00
Michael Niedermayer
11dffbe1da stuffing to stay above min_bitrate
Originally committed as revision 2602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-12 21:30:47 +00:00
Michael Niedermayer
fb0666392c CBR improvements
Originally committed as revision 2601 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-12 19:26:55 +00:00
Michel Bardiaux
9b87956678 av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:26:22 +00:00
Michael Niedermayer
158c7f059c use lagrange multipler instead of qp for ratecontrol, this may break some things, tell me ASAP if u notice anything broken
quality which was 1..31 float is now a 1..FF_LAMBDA_MAX int, and FF_QP2LAMBDA * qp can be used to convert to the new range

Originally committed as revision 2348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-07 11:32:40 +00:00
Fabrice Bellard
b160941221 removed warnings
Originally committed as revision 2248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-09-09 22:59:16 +00:00
Michael Niedermayer
fa12b5469d fix qmin==qmax==1 && msmpeg4 && intra bug
Originally committed as revision 2051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-16 11:48:59 +00:00
Michael Niedermayer
d8085ea727 cleanup
Originally committed as revision 1882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-14 23:08:01 +00:00
Michael Niedermayer
2f5feea48b 10l (adaptve quant fix)
Originally committed as revision 1752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-11 09:20:45 +00:00
Michael Niedermayer
c5a9ab69c2 qmin/qmax cleanup
Originally committed as revision 1689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-17 11:02:33 +00:00
Michael Niedermayer
14bea432f1 per context frame_rate_base, this should finally fix frame_rate related av sync issues
Originally committed as revision 1666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-12 15:16:19 +00:00
Michael Niedermayer
983e3246b7 per file doxy
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 11:32:04 +00:00
Zdenek Kabelac
5c91a6755b * static,const,compiler warning cleanup
Originally committed as revision 1567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-10 09:35:32 +00:00
Fabrice Bellard
8e1e6f31c1 use av_malloc() functions - added av_strdup and av_realloc()
Originally committed as revision 1505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-23 23:03:09 +00:00
Fabrice Bellard
f08ce7fe3b suppressed redundant math.h - suppressed M_PI redefinition
Originally committed as revision 1419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 22:43:16 +00:00
bubu
ccfddafbd9 warnings patch by (bubu <bubu at bubu dot net>)
Originally committed as revision 1386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-01 15:10:45 +00:00
Michael Niedermayer
17a70fdeef mb qp limits
Originally committed as revision 1340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-18 10:09:43 +00:00
Michael Niedermayer
59b571c1e4 more debug output
Originally committed as revision 1338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-17 11:25:29 +00:00
Michael Niedermayer
0d1e924668 fixing 2pass assert failure
better dynamic b frame selection, still not very good though allthough it works fine without 2pass now

Originally committed as revision 1316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-06 13:30:13 +00:00
Michael Niedermayer
1e491e29c2 cleanup
adding AVVideoFrame
 moving quality, pict_type, key_frame, qscale_table, ... to AVVideoFrame
 removing obsolete variables in AVCodecContext
 skiping of MBs in b frames
 correctly initalizing AVCodecContext
 picture buffer cleanup

Originally committed as revision 1302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-04 10:04:03 +00:00
Michael Niedermayer
b8a78f419d reversing header game
MIN/MAX -> FFMIN/FFMAX

Originally committed as revision 1184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-10 11:46:59 +00:00
Fabrice Bellard
ec6a375248 removed warnings
Originally committed as revision 1038 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-14 18:25:58 +00:00
Michael Niedermayer
23e54f6927 renaming variable
Originally committed as revision 981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-29 23:21:13 +00:00
Michael Niedermayer
5e746b9995 darkness masking (lumi masking does only bright stuff now)
Originally committed as revision 967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-24 10:53:59 +00:00
Michael Niedermayer
c5d309f2d5 adaptive quantization (lumi/temporal & spatial complexity masking)
Originally committed as revision 964 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-23 14:56:11 +00:00
Michael Niedermayer
6a1f7e7b6b better min/max rate handling
cleanup

Originally committed as revision 952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-18 18:28:11 +00:00
Michael Niedermayer
946c8a1281 fixing
fixing max_rate/min_rate

Originally committed as revision 951 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-18 09:08:03 +00:00
Michael Niedermayer
471d7dc3d0 undefined M_PI / M_E fix
Originally committed as revision 881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-30 16:16:30 +00:00
Dominik Mierzejewski
0778718635 warning patch by (Dominik Mierzejewski <dominik at rangers dot eu dot org>)
Originally committed as revision 872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-28 08:15:30 +00:00
Michael Niedermayer
405469cefd forgot the const bits in 2pass curve matching (patch (with rounding removed) by Rémi Guyomarch <rguyom at pobox dot com>)
Originally committed as revision 866 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-26 08:14:36 +00:00
Michael Niedermayer
c695ca3bce fixing qmin==qmax && qsquish==1
Originally committed as revision 865 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-25 23:49:50 +00:00
Michael Niedermayer
3aa102be84 new ratecontrol code
Originally committed as revision 862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-25 21:19:50 +00:00
D Richard Felker III
90864f2712 10l found&patch by D Richard Felker III <dalias at aerifal.cx>
Originally committed as revision 649 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 15:49:21 +00:00
Michael Niedermayer
9effc0c71b b_quant_offset (unfinished, should be 0 for now)
Originally committed as revision 645 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 12:24:26 +00:00
Fabrice Bellard
2ef0f2b269 consistent include usage
Originally committed as revision 598 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-25 22:42:45 +00:00
Fabrice Bellard
6000abfa89 removed useless header includes - use av memory functions
Originally committed as revision 522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-18 23:03:29 +00:00
Michael Niedermayer
4b7b196005 qmin==1 bugfix
Originally committed as revision 511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-17 15:31:33 +00:00
Michael Niedermayer
8b4c7dbc55 fixed ratecontrol & b-frames
2pass ratecontrol
fixed hq with 2pass
inceased build num (a few more vars for the rc stuff)
hopefully no new bugs

Originally committed as revision 408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-21 21:18:17 +00:00