Commit Graph

100 Commits

Author SHA1 Message Date
Stefano Sabatini
0b99215c0e Move eval.c and eval.h from libavcodec to libavutil, and make the eval
API public.

Originally committed as revision 23485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-05 12:01:28 +00:00
Stefano Sabatini
9ace13b416 Make ff_parse_expr() and ff_parse_and_eval_expr() return an int
containing an error code.

Allow these functions to convey the reason of the failure to the
calling function, failure which is not always due to a parsing error
but it may depend for example on a memory problem.

Also fix several potential memleaks.

Originally committed as revision 23402 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-01 08:07:07 +00:00
Michael Niedermayer
2b65bb45b5 Change eval API to take parent log context and log level offset.
this is based on stefanos work, especially all bugs are his fault ;)

Originally committed as revision 23201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-19 22:55:29 +00:00
Stefano Sabatini
edd259f92f Change the order of parameters for ff_eval_expr() and
ff_parse_and_eval_expr(), place the names for constants/functions
before the corresponding values.

This looks more readable, as the user is expected to know the names
before the values.

Originally committed as revision 23149 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-16 23:00:22 +00:00
Diego Biurrun
ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Stefano Sabatini
1235429c27 Rename ff_parse() to ff_parse_expr().
The new name is more expressive and fits better in the overall naming
scheme for the revisited eval API.

Originally committed as revision 22858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-12 19:21:15 +00:00
Stefano Sabatini
4565caf120 Rename ff_parse_eval() to ff_eval_expr().
The new name expresses better what the function does.

Originally committed as revision 22844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-11 22:32:01 +00:00
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