Clément Bœsch
3b870f973e
lavfi/scale: remove usage of link->cur_buf.
12 years ago
Michael Niedermayer
94fdef818e
vf_scale: switch to filter_frame
Based on patch by Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Anton Khirnov
565e4993c6
lavfi: merge start_frame/draw_slice/end_frame
Any alleged performance benefits gained from the split are purely
mythological and do not justify added code complexity.
12 years ago
Stefano Sabatini
1ba2459fbb
lavfi/scale: declare the filter private class
Allow to show the supported options in the ffmpeg -h full output.
12 years ago
Stefano Sabatini
1b21642149
lavfi/scale: avoid to print a NULL value in log message
Fix possible crash occurring when libc does not support NULL printing.
12 years ago
Stefano Sabatini
19add3224f
lavfi/scale: implement clever/insane parsing heuristic, and add a size option
If the first argument can be read as a video size, set that output size
in the scale. This allows to specify in a filtergraph scale=qcif or
scale=320x240.
This is not completely safe, for example in case of a typo in the video
size string the first argument will be read as the input width
expression, giving rise to a confusing comment.
12 years ago
Stefano Sabatini
c2428ada71
lavfi/scale: return error code in case of failed reconfiguration in start_frame()
Avoid an assert, since now the function supports error code return.
12 years ago
Stefano Sabatini
83938c3d4c
lavfi/scale: accept named options, make parsing more robust
Also update documentation accordingly.
12 years ago
Anton Khirnov
59ee9f78b0
lavfi: do not use av_pix_fmt_descriptors directly.
12 years ago
Mans Rullgard
568c70e79e
lavfi: convert input/ouput list compound literals to named objects
A number of compilers, for example those from TI and IBM, choke on
these initialisers. The current style is also quite ugly.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Anton Khirnov
716d413c13
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
12 years ago
Anton Khirnov
ba04177eeb
vf_pad/scale: use double precision for aspect ratios.
Fixes Bug 203.
CC:libav-stable@libav.org
12 years ago
Michael Niedermayer
8267f0f7ae
vf_scale: fix incompatible pointer type warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Martin Storsjö
1d9c2dc89a
Don't include common.h from avutil.h
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years ago
Anton Khirnov
1dc4205018
lavfi: check all avfilter_ref_buffer() calls for errors.
13 years ago
Anton Khirnov
e9b992d035
lavfi: add error handling to draw_slice().
13 years ago
Anton Khirnov
ebc8d97481
lavfi: add error handling to start_frame().
13 years ago
Ronald S. Bultje
3db407038e
lavfi: use const for AVFilterPad declarations in all filters.
13 years ago
Stefano Sabatini
fda968aa8f
lavfi: decrease logging level of message showing initial parameters
Reduce log clutter, consistent with 1a49a169eb
.
13 years ago
Anton Khirnov
1a49a169eb
lavfi: make filters less verbose.
13 years ago
Anton Khirnov
a5e8c41c28
lavfi: remove 'opaque' parameter from AVFilter.init()
It is not used in any filters currently and is inherently evil. If
passing binary data to filters is required in the future, it should be
done with some AVOptions-based system.
13 years ago
Stefano Sabatini
cb08b6efc9
lavfi/scale: remove unused variable out_link
Fix warning:
libavfilter/vf_scale.c: In function ‘start_frame’:
libavfilter/vf_scale.c:284:23: warning: unused variable ‘out_link’ [-Wunused-variable]
13 years ago
Anton Khirnov
9d0bfc5052
lavfi: make AVFilterPad opaque after two major bumps.
It will allow adding new fields to it without ABI breaks.
13 years ago
Anton Khirnov
6d58358a3a
lavfi: make avfilter_get_video_buffer() private on next bump.
They are only useful inside filters and we don't allow user filters for
now.
13 years ago
Anton Khirnov
803391f719
lavfi: remove request/poll and drawing functions from public API on next bump
They are only useful inside filters and we don't allow user filters for
now.
13 years ago
Anton Khirnov
b74a1da49d
lavfi: make formats API private on next bump.
It is only useful inside filters and we don't allow user filters for
now.
13 years ago
Michael Niedermayer
9225513242
vf_scale: support dynamically changing input parameters.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Anton Khirnov
90f65dc6cf
vf_scale: support named constants for sws flags.
13 years ago
Reimar Döffinger
6458a08700
vf_scale: ensure the palette is set for output.
Since those are pseudo-palette formats, swscale does not write
into data[1], swscale must initialize the palette properly itself.
This lead to frames that actually decoded as all-gray before.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Reimar Döffinger
bbaf941e29
scale: fix slice rendering with conversion between pal/non-pal.
We can't use whether the input format is paletted to decide that
the output format has a palette in data[1], too, that makes no sense.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Anton Khirnov
416fd90ead
vf_scale: avoid a pointless memcpy in no-op conversion.
I.e. just pass the buffer along when src parameters == dst parameters.
13 years ago
Stefano Sabatini
fdffaa6b11
lavfi/scale: document behavior with regards to the output sample aspect ratio
Also show the input and output sample aspect ratio in the log.
13 years ago
Alex Converse
b0f29db5c2
Mark mutable static data const where appropriate.
13 years ago
Anton Khirnov
38d5533228
pixdesc: mark pseudopaletted formats with a special flag.
This makes it possible to dintinguish them from PAL8.
Fixes an invalid write in avpicture_layout().
13 years ago
Stefano Sabatini
3af5ddb24b
vf_scale: give a clue in case of invalid expression self-reference
Address trac ticket #706 .
13 years ago
Reimar Döffinger
c66bd78e3d
vf_scale: support PAL8 output by producing BGR8.
While quality is bad, PAL8 support is needed to allow testing some
encoders that only support PAL8 input.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Michael Niedermayer
32aa9590ac
vf_scale: Fix slice position assert to take vertical subsampling into account.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Reimar Döffinger
5af7daabc4
Mark AVFilterPad[] compound literals as const.
GCC 4.6.2 at least still seems to fail to put them in .rodata though,
see also http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37303
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Reimar Döffinger
d78473334e
Add const to static arrays where it was forgotten.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Michael Niedermayer
3e4375833d
vf_scale: Request an aligned buffer.
Fixes Ticket594
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Nicolas George
3b316f9f22
vf_scale: remove mathematical constants now redundant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
8447703c16
vf_scale.c: propagate error code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
d33e0c6bc8
vf_scale: apply the same transform to the aspect during init that is applied per frame
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago
Stefano Sabatini
46b29397a6
vf_scale: add a "sar" variable
Also create a "dar" alias for the "a" variable, for avoiding possible
confusion between dar/sar.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
14 years ago
Michael Niedermayer
52982dbe47
vf_scale: don't leak SWS context.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
14 years ago
Michael Niedermayer
c8868f28e3
vf_scale: apply the same transform to the aspect during init that is applied per frame
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Stefano Sabatini
61d55fda2b
lavfi: tweak display aspect ratio variables in pad and scale filters
Previously, "dar" and "a" were documented like "input display aspect
ratio", but their actual value was "in_w/in_h".
In order to avoid to break scripts which rely on the "a" variable, the
patch keeps the same semantics but fixes the corresponding docs, and
fixes the semantics of the recently added "dar" variable, which
now correctly expresses the input Display Aspect Ratio value as
"(inw_w/in_h)*sar".
14 years ago
Stefano Sabatini
01151a26c0
vf_scale: add a "sar" variable
Also create a "dar" alias for the "a" variable, for avoiding possible
confusion between dar/sar.
14 years ago
Mans Rullgard
0ebcdf5cda
Do not include mathematics.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Reimar Döffinger
bf19c87101
Fix type of out[] variable, it should not be const.
Fixes compiler warning about incompatible types in sws_scale call.
14 years ago