Lukasz Marek
b54effba4f
lavu/opt: update tests
...
In general this commit prepares opt tests to be added to fate.
The commit set some non-zero defaults for test options.
It allows to check if defaults are really set.
Added printing of default values.
Added more cases for testing av_set_options_string
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
2014-11-11 21:52:26 +01:00
Lukasz Marek
4efc79649b
lavu/opt: add support for binary defaults
...
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
2014-11-11 21:52:26 +01:00
Lukasz Marek
bb60142f56
lavu/opt: check for NULL before parsing
...
set_string_binary crashes when called with val==NULL
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
2014-11-11 21:52:26 +01:00
Lukasz Marek
4e179436b6
lavu/opt: copy dict in av_opt_copy
...
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
2014-11-09 17:56:08 +01:00
James Almer
71718de814
avutil: remove obsolete FF_API_FIND_OPT cruft
...
Signed-off-by: James Almer <jamrial@gmail.com>
2014-10-05 17:09:53 -03:00
Philip DeCamp
857fc0a71f
libavutil/opt: fix av_opt_set_channel_layout() to access correct memory address
...
Signed-off-by: Philip DeCamp <decamp@mit.edu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-24 22:57:40 +02:00
Michael Niedermayer
60dbed6067
Merge commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867'
...
* commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867':
cosmetics: Write NULL pointer inequality checks more compactly
Conflicts:
libavcodec/dvdsubdec.c
libavcodec/h263dec.c
libavcodec/libxvid.c
libavcodec/rv10.c
libavcodec/utils.c
libavformat/format.c
libavformat/matroskadec.c
libavformat/segment.c
libavutil/opt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 21:26:12 +02:00
Gabriel Dume
4b1f5e5090
cosmetics: Write NULL pointer inequality checks more compactly
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-08-15 05:34:13 -07:00
Michael Niedermayer
8b6cbc3c33
avutil/opt: remove disabled old ABI compatibility code
...
Fixes some unused variable warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-14 20:42:53 +02:00
Michael Niedermayer
2ba4577809
Merge commit 'a8c104a511f97e4ea617df73b31737e28a8a5126'
...
* commit 'a8c104a511f97e4ea617df73b31737e28a8a5126':
AVOption: add support for dictionary types.
Conflicts:
libavutil/opt.c
libavutil/opt.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-13 22:39:54 +02:00
Andrew Stone
a8c104a511
AVOption: add support for dictionary types.
...
In order to support metadata being set as an option, it's necessary to be able
to set dictionaries as values.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-08-13 16:07:40 +00:00
Michael Niedermayer
24327706e1
avutil/opt: ensure the right buffer is used in set_string_number()
...
Fixes use of uninitialized memory
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-25 21:29:43 +02:00
Michael Niedermayer
bbc5adfb94
avutil/opt: Fix parsing regression with constants starting with numbers
...
Fixes parsing "3dnow"
Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 08:42:52 +02:00
Michael Niedermayer
539e72727f
avutil/opt: simplify set_string_number()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 17:38:06 +02:00
Muhammad Faiz
4852a88dfb
avutil/opt: set_string_number(): remove unneeded copy
...
also remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:58:41 +02:00
Michael Niedermayer
265dadbe7d
avutil/opt: Support general expressions involving AVOption constants in set_string_number()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 17:00:37 +02:00
Michael Niedermayer
88efc013b1
avutil: move QP2LAMBDA constant to eval
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 15:30:45 +02:00
Michael Niedermayer
2c5c7f1089
avutil/opt: remove dead code from set_string_number()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 15:28:53 +02:00
Muhammad Faiz
4927c0a988
avutil/opt.c: fix bug when parsing option
...
fix these strange behavior:
-af flanger=delay=10 [OK]
-af flanger=delay=1e1 [OK]
-af flanger=delay=1e+1 [Error]
-af flanger=delay=0.1 [OK]
-af flanger=delay=1e-1 [Error]
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 15:20:39 +02:00
Michael Niedermayer
7cd6d61da5
avutil/opt: try to fix the case where src==dst in av_opt_copy()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 06:21:42 +02:00
Michael Niedermayer
00759d71a2
avutil/opt: add av_opt_copy()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-01 20:49:18 +02:00
Michael Niedermayer
f028b7af7b
avutil/opt: add opt_size()
...
If people want, this could be exported as av_opt_size()
2014-06-01 20:47:50 +02:00
Lukasz Marek
ba52fb11dc
lavu/opt: add av_opt_set_dict2() function
...
Existing av_opt_set_dict doesn't accept flags.
It doesn't allow to pass options to nested structs.
New function alllows that.
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
2014-05-02 18:04:05 +02:00
Lukasz Marek
3aac5fcfa9
lavu/opt: validate range before dereference
...
This change make error handling simplier.
av_opt_freep_ranges may be called when some ranges are NULL,
for example after memory allocation fail.
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-04 22:09:57 +02:00
Lukasz Marek
8c27292373
lavu/opt: dont crash on freeing NULL AVOptionRanges
...
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-03 19:05:19 +02:00
Lukasz Marek
eaed4da96a
lavu/opt: extend AVOptionRange by extra values
...
AVOptionRange is not flexible enough to store AV_OPT_TYPE_IMAGE_SIZE
ranges. Current implementation can only store pixel count.
This patch aims to keep backward compatibility and extend
AVOptionRange with possibility to store width/height ranges.
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
2014-04-03 13:28:13 +02:00
Michael Niedermayer
d9a3501c33
avutil/opt: dont crash on av_opt_set_dict() with NULL
...
This allows calling the function without the need to check if the
dictionary contains any entries
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-30 15:00:03 +02:00
Michael Niedermayer
52d928daf9
avutil/opt: allow max=min=0 for pixel formats
...
This is neccessary for maintaining ABI compatibility with FFmpeg 2.1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-01 00:31:38 +01:00
Michael Niedermayer
6a24d77929
Merge commit 'c3ecd968f0e78da6e77f0c06c2f785b266d83cf1'
...
* commit 'c3ecd968f0e78da6e77f0c06c2f785b266d83cf1':
AVOptions: add flags for read/read-only options
Conflicts:
libavutil/opt.c
libavutil/opt.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-20 02:01:13 +01:00
Anton Khirnov
c3ecd968f0
AVOptions: add flags for read/read-only options
2014-02-19 21:52:17 +01:00
Michael Niedermayer
8f853159f6
avutil/opt: preserve fractions in set_string_number()
...
This avoids going over a double precission float, which may loose precission
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-18 21:49:56 +01:00
João Bernardo
290326711b
avutil/opt: Better print representation of number limits
...
Signed-off-by: João Bernardo Oliveira <jbvsmo@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 21:14:02 +01:00
Stefano Sabatini
334e2e2363
lavu,lavc,lswr: do not hardcode AV_SAMPLE_FMT_NB value when setting sample format max value
...
The constant may change in libavutil but the library may be compiled
against an older version, thus rejecting a value which is otherwise
supported by the new libavutil.
INT_MAX is used here to denote the max allowed value for a sample format.
The opt-test code is changed to provide a valid reference example.
2013-12-26 11:35:27 +01:00
Stefano Sabatini
3b8c7da7a3
lavu,lavfi,lavd: do not hardcode AV_PIX_FMT_NB value when setting pixel format max value
...
The constant may change in libavutil but the library may be compiled
against an older version, thus rejecting a value which is otherwise
supported by the new libavutil.
INT_MAX is used here to denote the max allowed value for a pixel format.
The opt-test code is changed to provide a valid reference example.
2013-12-26 11:35:27 +01:00
Stefano Sabatini
55f046be11
lavu/opt: apply range checks also when setting format string value
...
Previously when setting a pixel/sample format as a string range checks
were not performed. This is consistent with the
av_opt_set_pixel/sample_fmt() interface.
2013-12-26 11:35:27 +01:00
Stefano Sabatini
1575a96b3a
lavu/opt: factorize setting of format values from string
...
Simplify incoming patch.
2013-12-26 11:35:27 +01:00
Stefano Sabatini
e2b54464c6
lavu/opt: fix range check logic in set_format()
...
In particular, allow to reject undefined values. Previously the code
was only accepting values in the range -1 .. NB_FORMATS-1.
2013-12-26 11:35:26 +01:00
Michael Niedermayer
792845e436
Merge commit '3bc2e89c76e88ae6f1fd5287e0b11abcfc3c601c'
...
* commit '3bc2e89c76e88ae6f1fd5287e0b11abcfc3c601c':
Bump libavutil major version to account for the LLS API/ABI changes.
Conflicts:
libavutil/version.h
Bump done to stay compatible with libav, its not neccessary otherwise for ffmpeg
as we have the new ABI/API under LLS2 and the old (unused) under LLS
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-16 21:52:51 +01:00
Michael Niedermayer
e8ac905dae
avutil/opt: Implement av_opt_set_defaults* in O(N) instead of O(N²) time
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-07 14:09:36 +01:00
Michael Niedermayer
0aedf90e62
avutil/opt: factor set_string_color() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-07 14:08:20 +01:00
Michael Niedermayer
758d4e4067
avutil/opt: factor set_string_video_rate() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-07 14:08:19 +01:00
Michael Niedermayer
9648c4fe9c
avutil/opt: factor set_string_image_size() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-07 14:07:52 +01:00
Michael Niedermayer
15b1b08874
avutil/opt: fix flags check on non x86
...
This should fix several fate failures
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-29 21:07:45 +01:00
Michael Niedermayer
162126bb17
avutil/opt: check flags validity in write_number()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 18:03:29 +01:00
Michael Niedermayer
f0e43e60cd
Merge commit '0b357a8095e72b092cc5c2aacc2f806db75ecae3'
...
* commit '0b357a8095e72b092cc5c2aacc2f806db75ecae3':
AVOptions: do not range check flag options.
Conflicts:
libavutil/opt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 11:26:48 +01:00
Anton Khirnov
0b357a8095
AVOptions: do not range check flag options.
...
It does not make sense in the vast majority of use cases, no currently
defined AV_OPT_TYPE_FLAGS options in Libav set the range to anything
nontrivial, and many of those get it wrong (the "correct" range is
INT_MIN to INT_MAX so that the builtin constant "all" works).
2013-10-27 21:40:33 +01:00
Michael Niedermayer
2d8ccf0adc
avutil/opt: initialize ret
...
Fixes CID1108610
Fixes use of uninitialized variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-20 18:38:48 +02:00
Stefano Sabatini
8696e51baf
lavu/opt: add AV_OPT_TYPE_CHANNEL_LAYOUT and handler functions
...
The new type is compatible with AV_OPT_TYPE_INT64, but allows to specify
channel layouts using the format accepted by av_get_channel_layout().
2013-10-17 18:09:29 +02:00
Stefano Sabatini
98e7c1eed5
lavu/opt-test: use automatic set and free handlers
...
In particular, do not set default string value by hand and use
av_opt_free() to free context.
2013-10-17 18:02:54 +02:00
Michael Niedermayer
5fc5170c55
avutil/opt: make const tables static const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-10 18:44:40 +02:00