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.
11 years ago
Stefano Sabatini
1575a96b3a
lavu/opt: factorize setting of format values from string
...
Simplify incoming patch.
11 years ago
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.
11 years ago
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>
11 years ago
Michael Niedermayer
0aedf90e62
avutil/opt: factor set_string_color() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
758d4e4067
avutil/opt: factor set_string_video_rate() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9648c4fe9c
avutil/opt: factor set_string_image_size() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
Michael Niedermayer
162126bb17
avutil/opt: check flags validity in write_number()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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).
11 years ago
Michael Niedermayer
2d8ccf0adc
avutil/opt: initialize ret
...
Fixes CID1108610
Fixes use of uninitialized variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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().
11 years ago
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.
11 years ago
Michael Niedermayer
5fc5170c55
avutil/opt: make const tables static const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
18b1381c5f
avutil/opt: fix av_log type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
0b5d1b88e0
avutil/opt: fix types passed to the format string "%s"
...
Fixes gcc warnings
Fixes CID1061056
Fixes CID1061057
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Martin Storsjö
c7e921a54f
avopt: Check whether the object actually has got an AVClass
...
AVIOContext has got an av_class member that only gets set if
opening the context using avio_open2, but not if allocating a
custom IO context. A caller that wants to read AVOptions from
an AVIOContext (recursively using AV_OPT_SEARCH_CHILDREN) may
not know if the AVIOContext actually has got a class set or not.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Paul B Mahol
fd84b6fd33
lavu/opt: show default values for AV_OPT_TYPE_PIXEL_FMT and AV_OPT_TYPE_SAMPLE_FMT too
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
11 years ago
Paul B Mahol
a64248d1ec
lavu/opt: show default values
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Paul B Mahol
f98dbc7311
lavu/opt: check if class is NULL too
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Paul B Mahol
3a751eab78
lavu/opt: add AV_OPT_TYPE_COLOR
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Anton Khirnov
bcc9432898
opt: check the return values of av_get_token for ENOMEM.
12 years ago
Nicolas George
983d04dd40
lavu/opt: make sure av_opt_set_bin() handles NULL/0.
12 years ago
Clément Bœsch
d00dcb8c9f
opt: attempt to improve options dump output.
...
Add some indent and remove the '-' prefix for filters.
12 years ago
Anton Khirnov
cf53704c55
AVOptions: make av_set_options_string() forward options to child objects
12 years ago
Nicolas George
8d928a9d99
lavu/opt: add AV_OPT_TYPE_DURATION.
12 years ago
Michael Niedermayer
eaa5882e71
avutil: fix compilation
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Paul B Mahol
7aa9af51db
lavu/opt: add AV_OPT_VIDEO_RATE option
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Anton Khirnov
4d67ff8e8e
AVOptions: fix using named constants with child contexts.
...
The named constant needs to be searched for in the same object on which
the option is set, i.e. target_obj.
12 years ago
Anton Khirnov
9676b9a2cd
AVOption: remove an unused function parameter.
12 years ago
Stefano Sabatini
b1a2684936
lavu/opt: fix weird align
12 years ago
Stefano Sabatini
7b9a3df5d7
lavu/opt-test: do not explicitly set default value in test_ctx
...
Let av_opt_set_defaults() set the value, which is simpler and more
idiomatic.
12 years ago
Diego Biurrun
bcb8d9eb8f
Drop unnecessary 'l' length modifier when printfing double values.
...
%f denotes a double argument and 'l' does nothing in this case
according to the C spec.
12 years ago
Justin Ruggles
d02202e08a
opt: avoid segfault in av_opt_next() if the class does not have an option list
...
CC: libav-stable@libav.org
12 years ago
Michael Niedermayer
22e4988673
opt: fix memleak on error of range_array
...
Fixes CID747739
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Stefano Sabatini
f494647206
lavu/opt: change the way ranges are printed
12 years ago
Stefano Sabatini
129d737150
lavu/opt: make av_opt_query_ranges_default() return a meaningful error code
12 years ago
Stefano Sabatini
0ad654d4c9
lavu/opt: perform misc cosmetical fixes
12 years ago
Michael Niedermayer
e0a553d526
opt_list: fix vertical alignment of types
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
f4ceca6261
opt: print ranges in opt_list()
...
The formating can and should be improved.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
a8e0d51bb8
opt: Add support to query ranges
...
Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Justin Ruggles
9d5c62ba5b
lavu/opt: do not filter out the initial sign character except for flags
...
This allows parsing of special-case negative numbers like decibels.
12 years ago
Anton Khirnov
cb45553f57
Remove pointless #undefs of previously forbidden functions.
12 years ago
Stefano Sabatini
c9ff32215b
lavu/opt: allow to set sample and pixel format with av_opt_set_int()
...
This change requires the user to specify min and max value, and makes
possible to prevent the user to set AV_{SAMPLE,PIX}_FMT_NONE if
forbidden.
Add required ifdeffery in case of mixed libraries, when libavutil is
updated but not the other libraries.
This is a followup of 08d0969c14
.
12 years ago
Stefano Sabatini
08d0969c14
lavu/opt: change the way default pixel and sample format value is set
...
Use the i64 field rather than the string value. Using a string to set a
default sample/pixel format is weird, also the new interface is more
consistent with the rest of the API.
This is technically an API break, but hopefully there are no applications
using this feature outside of FFmpeg. In order to save backward
compatibility with mixed libraries in case libavutil is updated but not
the other libraries, some ifdeffery hacks are added.
Note that the version check is only performed when class->version != 0,
since if it is not defined then we assume that no version was defined and
the class is not affected by the change.
We will luckily get rid of the hack at the next major bump.
12 years ago
Stefano Sabatini
51e9f58e1c
lavu/opt: add support for reading pixel and sample format through av_get_int()
...
Simplify backward compatibility, when switching from AV_OPT_TYPE_INT to
AV_OPT_TYPE_SAMPLE/PIXEL_FMT.
12 years ago
Stefano Sabatini
26c531cc22
lavu/opt: fix range shown in set_format() log message
12 years ago
Stefano Sabatini
c70ec631c9
lavu/opt: add av_opt_ accessors for pixel/format/image size options
...
The interface is implemented against the style of the other options
accessors. Possibly simplify programmatic setting of options.
12 years ago
Nicolas George
926481078b
lavu/opt: fix av_opt_get_key_value() API.
...
Do not skip the end delimiter.
Reserve positive return values.
This is an API break, but the function was introduced less than
two weeks ago.
12 years ago
Stefano Sabatini
ef4dc3e55b
lavu/opt: show valid range in case of out-of-range value
...
Improve feedback.
12 years ago