Derek Buitenhuis
a4bd4733c0
swscale: Allow the max filter size to be set at compile time
...
This can help "extreme" resizes, e.g with some 4k stuff.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2014-06-13 14:49:59 +01:00
Michael Niedermayer
ce4d91ba2a
sws: document color range >8bit oddity
2014-05-21 21:29:33 +02:00
Michael Niedermayer
c3417ed7fd
swscale/utils: Add check that ensures that the hardcoded struct offsets are valid
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-14 01:32:11 +02:00
Michael Niedermayer
656fe7ecce
swscale/utils: use FF_ALLOC(Z)_ARRAY_OR_GOTO() and av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-04 19:49:06 +02:00
Michael Niedermayer
1c4110be90
Merge commit '3a177a9cca924e097265b32f9282814f6b653e08'
...
* commit '3a177a9cca924e097265b32f9282814f6b653e08':
swscale: Fix an undefined behaviour
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-03 23:36:54 +02:00
Luca Barbato
3a177a9cca
swscale: Fix an undefined behaviour
...
Prevent a division by zero down the codepath.
Sample-Id: 00001721-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-05-03 18:25:17 +02:00
Michael Niedermayer
4959a4fcf7
swscale/utils: fix changing src/dst range after initializing the context
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-15 00:40:39 +02:00
Michael Niedermayer
fa98885be4
swscale/utils: move handling of unscaled case to the end of init function
...
This way all context fields get initialized and can be used without needing to reinit the context
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-14 23:32:41 +02:00
Michael Niedermayer
ed962414bd
Merge commit '92b099daf4b8ef93513e38b43899cb8458a2fde3'
...
* commit '92b099daf4b8ef93513e38b43899cb8458a2fde3':
swscale: support converting YVYU422 pixel format
Conflicts:
libswscale/input.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-09 03:36:38 +02:00
Michael Niedermayer
1752b1459d
swscale/utils: scale filter_size in warning so that it can be used as max for the compile time define
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-09 00:57:12 +02:00
Michael Niedermayer
7b2b06eb43
swscale/utils: dont print message about filter size when the cause is a malloc failure
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-09 00:57:12 +02:00
Vittorio Giovara
92b099daf4
swscale: support converting YVYU422 pixel format
2014-04-07 23:50:34 +02:00
Michael Niedermayer
37f69cd93e
swscale: add full bgra64 support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 19:44:08 +02:00
Michael Niedermayer
3428a9b8d5
Merge commit '0ca0924c10d9617a5793964bf79655424ef32b68'
...
* commit '0ca0924c10d9617a5793964bf79655424ef32b68':
swscale: add endianness conversion for AV_PIX_FMT_BGRA64|RGBA64
Conflicts:
libswscale/swscale_unscaled.c
libswscale/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 17:46:19 +02:00
Janne Grunau
0ca0924c10
swscale: add endianness conversion for AV_PIX_FMT_BGRA64|RGBA64
2014-04-02 11:39:26 +02:00
Carl Eugen Hoyos
e6fe804bdd
Do not set swscale sizeFactor to -1.
...
Fixes ticket #3495 .
2014-03-25 15:46:35 +01:00
Øyvind Kolås
3e6016622e
swscale: add two spatially stable dithering methods
...
Both of these dithering methods are from http://pippin.gimp.org/a_dither/ for
GIF they can be considered better than bayer (provides more gray-levels), and
spatial stability - often more than twice as good compression and less visual
flicker than error diffusion methods (the methods also avoids error-shadow
artifacts of diffusion dithers).
These methods are similar to blue/green noise type dither masks; but are
simple enough to generate their mask on the fly. They are still research work
in progress; though more expensive to generate masks (which can be used in a
LUT) like 'void and cluster' and similar methods will yield superior results
2014-03-25 13:48:06 +01:00
Carl Eugen Hoyos
37c07d4529
swscale/utils: Fix color range of gray16
...
Improves rgb -> gray16 conversion
Fixes Ticket3422
The pam and png output files look visually similar, in both cases the
dynamics increase to 0x0 -> 0xfffb.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-18 22:15:15 +01:00
Jean First
1481d24c3a
RGBA64 pixel formats
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-03-16 23:05:47 +01:00
Peter Ross
02b63246cf
libswscale: bayer to rgb24 & yv12 colorspace converters
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-23 02:38:22 +01:00
Michael Niedermayer
51fed95dde
swscale/utils: fix wrong deprecated message with rgb0
...
Fixes Ticket3242
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-24 22:47:49 +01:00
Michael Niedermayer
037fc3b054
swscale/utils: check chroma width for fast bilinear scaler
...
Fixes artifacts where fast bilinear was used for downscaling chroma
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-15 14:13:55 +01:00
Michael Niedermayer
554e913fd7
swscale/utils: remove useless ()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-15 14:10:02 +01:00
Michael Niedermayer
dc54bd4e8d
swscale/utils: factor (d + 1 < 4) out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-15 13:49:20 +01:00
Michael Niedermayer
4d18060e56
swscale/utils: fill xyz tables only when they will be used
...
makes the first call to sws_getContext() 1ms faster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-07 02:04:31 +01:00
Stefano Sabatini
2a6c95d85f
lsws/utils: introduce scale_algorithms array
...
Allow some dumb factorizations, slightly decrease spaghetti factor.
2013-11-05 14:01:53 +01:00
Stefano Sabatini
246e323de8
lsws/utils: fix typo
2013-11-05 00:04:17 +01:00
Stefano Sabatini
ff9d11f95d
lsws: use av_pix_fmt_get_chroma_sub_sample()
...
Remove duplicated getSubSampleFactors() function. Simplify.
2013-10-24 08:12:38 +02:00
Michael Niedermayer
eb4205cc89
swscale/utils: check mprotect() return code
...
Found-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-23 10:14:05 +02:00
Michael Niedermayer
2db6547237
swscale/utils/sws_setColorspaceDetails(): fix indention
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-17 14:02:43 +02:00
Michael Niedermayer
a830915b78
swscale: Use full resolution chroma for yuv2rgb when the input has full chroma
...
See Ticket3028
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-10 17:28:59 +02:00
Michael Niedermayer
5710f55e49
Merge commit '6b3ff6f91a535d6383f41ca7bdf760165dcb6015'
...
* commit '6b3ff6f91a535d6383f41ca7bdf760165dcb6015':
swscale: provide a default scaler if none is set
Conflicts:
libswscale/utils.c
The default is left at bicubic until someone has compared the scalers
properly speed and quality wise.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 11:44:05 +02:00
Vittorio Giovara
6b3ff6f91a
swscale: provide a default scaler if none is set
...
Lanczos for general case, sinc for upscaling, Gaussian for
downscaling. According to current literature these scalers
should be the best quality-wise algorithms for each case.
Inspired from a patch by wm4 <nfxjfg@googlemail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-10-05 18:38:55 +02:00
Michael Niedermayer
2e2a2d8801
swscale/utils: dont divide by zero with zero vectors
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-01 00:27:28 +02:00
Michael Niedermayer
2d28950da9
swscale/utils: remove redundant NULL checks before sws_freeVec()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 21:48:54 +02:00
Michael Niedermayer
a446657d8c
swscale/utils: simplify cpu caps printing code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 21:31:58 +02:00
Michael Niedermayer
9d052adbeb
swscale/utils: Simplify scaler name printing code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 21:29:42 +02:00
Michael Niedermayer
aec91de549
swscale/utils: Allow sws_setColorspaceDetails() to use the tables from sws_getColorspaceDetails()
...
Previously this would have lead to a memcpy(a,a) which violates the
requirement of non overlapping src and dst.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-17 17:21:13 +02:00
Michael Niedermayer
c914c99d4b
swscale/utils: use memcpy instead of loop in sws_cloneVec()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-08 16:39:38 +02:00
Michael Niedermayer
f0a3562382
Merge commit '79aec43ce813a3e270743ca64fa3f31fa43df80b'
...
* commit '79aec43ce813a3e270743ca64fa3f31fa43df80b':
x86: Add and use more convenience macros to check CPU extension availability
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 11:57:35 +02:00
Michael Niedermayer
01cac26f68
Merge commit '1909f6b1b6da2db371c179bed5a19aaf979b7557'
...
* commit '1909f6b1b6da2db371c179bed5a19aaf979b7557':
swscale: cosmetics: Drop silly camelCase from swScale function pointer name
Conflicts:
libswscale/swscale_unscaled.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 15:56:03 +02:00
Michael Niedermayer
5ff1b588eb
Merge commit 'c2503d9c8ab42ea55922e9f5a10c8bfbbbfeaf19'
...
* commit 'c2503d9c8ab42ea55922e9f5a10c8bfbbbfeaf19':
swscale: ppc: Hide arch-specific initialization details
Conflicts:
libswscale/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 15:10:09 +02:00
Michael Niedermayer
29daad5b98
Merge commit 'f61bece684d9685b07895508e6c1c733b5564ccf'
...
* commit 'f61bece684d9685b07895508e6c1c733b5564ccf':
ppc: Add and use convenience macro to check for AltiVec availability
Conflicts:
libavcodec/ppc/dsputil_ppc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 14:24:07 +02:00
Diego Biurrun
79aec43ce8
x86: Add and use more convenience macros to check CPU extension availability
2013-08-29 13:07:37 +02:00
Diego Biurrun
1909f6b1b6
swscale: cosmetics: Drop silly camelCase from swScale function pointer name
2013-08-29 10:23:54 +02:00
Diego Biurrun
c2503d9c8a
swscale: ppc: Hide arch-specific initialization details
...
Also give consistent names to init functions.
2013-08-29 10:23:41 +02:00
Diego Biurrun
f61bece684
ppc: Add and use convenience macro to check for AltiVec availability
2013-08-28 23:54:15 +02:00
Michael Niedermayer
23b3141261
swscale: improve dither checks
...
Bssed on patch by Øyvind Kolås <pippin@gimp.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-19 18:33:50 +02:00
Michael Niedermayer
8c50ea2251
swscale: set dither to a specific value for rgb/bgr8 output
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-19 18:31:35 +02:00
Michael Niedermayer
c14fc4585c
Merge commit 'aa2ba8c99e5708884a56aea9c1d96e014866f8a3'
...
* commit 'aa2ba8c99e5708884a56aea9c1d96e014866f8a3':
swscale: Move extern declarations for tables to swscale_internal.h
Conflicts:
libswscale/output.c
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
libswscale/utils.c
libswscale/yuv2rgb.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-16 12:56:48 +02:00