Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-08-14libswscale: Adds conversions from/to float gray format.Sergey Lavrushkin
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-04-03avutil/pixdesc: deprecate AV_PIX_FMT_FLAG_PSEUDOPALwm4
PSEUDOPAL pixel formats are not paletted, but carried a palette with the intention of allowing code to treat unpaletted formats as paletted. The palette simply mapped the byte values to the resulting RGB values, making it some sort of LUT for RGB conversion. It was used for 1 byte formats only: RGB4_BYTE, BGR4_BYTE, RGB8, BGR8, GRAY8. The first 4 are awfully obscure, used only by some ancient bitmap formats. The last one, GRAY8, is more common, but its treatment is grossly incorrect. It considers full range GRAY8 only, so GRAY8 coming from typical Y video planes was not mapped to the correct RGB values. This cannot be fixed, because AVFrame.color_range can be freely changed at runtime, and there is nothing to ensure the pseudo palette is updated. Also, nothing actually used the PSEUDOPAL palette data, except xwdenc (trivially changed in the previous commit). All other code had to treat it as a special case, just to ignore or to propagate palette data. In conclusion, this was just a very strange old mechnaism that has no real justification to exist anymore (although it may have been nice and useful in the past). Now it's an artifact that makes the API harder to use: API users who allocate their own pixel data have to be aware that they need to allocate the palette, or FFmpeg will crash on them in _some_ situations. On top of this, there was no API to allocate the pseuo palette outside of av_frame_get_buffer(). This patch not only deprecates AV_PIX_FMT_FLAG_PSEUDOPAL, but also makes the pseudo palette optional. Nothing accesses it anymore, though if it's set, it's propagated. It's still allocated and initialized for compatibility with API users that rely on this feature. But new API users do not need to allocate it. This was an explicit goal of this patch. Most changes replace AV_PIX_FMT_FLAG_PSEUDOPAL with FF_PSEUDOPAL. I first tried #ifdefing all code, but it was a mess. The FF_PSEUDOPAL macro reduces the mess, and still allows defining FF_API_PSEUDOPAL to 0. Passes FATE with FF_API_PSEUDOPAL enabled and disabled. In addition, FATE passes with FF_API_PSEUDOPAL set to 1, but with allocation functions manually changed to not allocating a palette.
2018-03-04swscale: Introduce a helper to identify semi-planar formatsPhilip Langdale
This cleans up the ever-more-unreadable list of semi-planar exclusions for selecting the planar copy wrapper.
2017-04-26Merge commit 'ea7ee4b4e381e0fa731458de0cbf740430eeb013'Clément Bœsch
* commit 'ea7ee4b4e381e0fa731458de0cbf740430eeb013': ppc: Centralize compiler-specific altivec.h #include handling in one place Merged-by: Clément Bœsch <u@pkh.me>
2017-03-24sws: make is{RGB,BGR}inInt functionsClément Bœsch
2017-03-20swscale: cosmetics in is{RGB,BGR}inIntClément Bœsch
Reduce diff with Libav.
2017-03-20swscale: remove unused is{RGB,BGR}inBytesClément Bœsch
2017-03-20swscale: use a (more correct) function for isPackedClément Bœsch
2017-03-20swscale: use a function for isAnyRGBClément Bœsch
2017-03-20swscale: use a function for isBayerClément Bœsch
2017-03-20swscale: use a function for isGrayClément Bœsch
2016-12-14ppc: Centralize compiler-specific altivec.h #include handling in one placeDiego Biurrun
Also move #includes into canonical order where appropriate.
2016-11-14lsws: Add GRAY10 conversion.Carl Eugen Hoyos
Based on 19be5fb7 by Luca Barbato.
2016-11-10swscale: Add GRAY12Luca Barbato
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-10swscale: Drop is9_OR_10BPS() use, its name is not correctMichael Niedermayer
Found-by: Luca Barbato Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-11-08swscale: Add GRAY12Luca Barbato
2016-09-27swscale: Rename is9_OR_10 to match what it doesLuca Barbato
It is used to select functions that work with 9-15bits.
2016-09-27swscale: Update bitdepth range checkLuca Barbato
Make sure the scaling functions for the 9-15bits are used for 9-15bits bit depths correctly.
2016-08-17swscale: Kill non-compiling disabled cruftDiego Biurrun
2016-07-16swscale: Rename sws_context_class to ff_sws_context_classAndreas Cadhalpun
It is an internal swscale symbol and thus should not be exported. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-07-11Revert "PPC64: Add versions of functions in libswscale/input.c optimized for ↵Ronald S. Bultje
POWER8 VSX SIMD." This reverts commit 1df908f33f658979b32599489ca6f1a39821013c. The expected performance improvements are essentially non-existent.
2016-06-30PPC64: Add versions of functions in libswscale/input.c optimized for POWER8 ↵Dan Parrot
VSX SIMD. This patch addresses Trac ticket #5570. The optimized functions are in file libswscale/ppc/input_vsx.c. Each optimized function name is a concatenation of the corresponding name in libswscale/input.c with suffix _vsx. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-06-21Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch
* commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
2016-05-04cosmetics: Fix spelling mistakesVittorio Giovara
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-04-09swscale/arm: add ff_hscale_8_to_15_neonMatthieu Bouron
2016-04-01swscale: add bt2020 yuv2rgb coefficients.Ronald S. Bultje
2016-03-31swscale: cleanup unused codePedro Arthur
Removed previous swscale code under '#ifndef NEW_FILTER' and removed unused fields of SwsContext
2016-03-31sws/aarch64: add ff_hscale_8_to_15_neonClément Bœsch
./ffmpeg -nostats -f lavfi -i testsrc2=4k:d=2 -vf bench=start,scale=1024x1024,bench=stop -f null - before: t:0.489726 avg:0.489883 max:0.491852 min:0.489482 after: t:0.256515 avg:0.256458 max:0.256999 min:0.253755
2016-03-29fix some a/an typosLou Logan
Signed-off-by: Lou Logan <lou@lrcd.com>
2016-03-01sws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neonClément Bœsch
2016-01-14swscale/vscale: Check that 2 tap filters are bilinear before using bilinear codeMichael Niedermayer
Fixes: out of array reads Fixes: 07e8b9c5d348ccdf7add0f37de20cf6c/asan_heap-oob_27e8df7_6849_e56653f768070ec8cb52f587048444c2.mov Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-14swscale: Move Contexts used only in hscale.c into itMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-14swscale: Move VScalerContext into vscale.cMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-14swscale/yuv2rgb: Increase YUV2RGB table headroomMichael Niedermayer
This makes SWS more robust Fixes: 07650a772d98aa63b0fed6370dc89037/asan_heap-oob_27ddeaf_2657_2c81ff264dee5d9712cb3251fb9c3bbb.264 Fixes: out of array read Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-01-14swscale/yuv2rgb: Factor YUVRGB_TABLE_LUMA_HEADROOM outMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-30swscale: rename sws_context_class to ff_sws_context_classAndreas Cadhalpun
It is an internal swscale symbol and thus should not be exported. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-10-13swscale: fix ticket #4881Pedro Arthur
When scaling only a slice of a frame the output was written always in the first lines leaving the rest of the frame black.
2015-09-10swscale: Forward colorspace updates to the 2nd cascaded context in case of ↵Michael Niedermayer
alphablend The first just does the blending and wouldnt do anything with the colorspace values Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-09-08Merge commit '2268db2cd052674fde55c7d48b7a5098ce89b4ba'Hendrik Leppkes
* commit '2268db2cd052674fde55c7d48b7a5098ce89b4ba': lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fields Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-09-07lavu: Drop the {minus,plus}1 suffix from AVComponentDescriptor fieldsVittorio Giovara
The new fields can be accessed directly and are more intelligible. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-09-05swscale: re-enable gammaPedro Arthur
+added gamma conversion to refactored code
2015-08-19swscale: refactor vertical scalerPedro Arthur
2015-08-18swscale: Fixed typosPedro Arthur
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-18swscale: fixed compiler warningsPedro Arthur
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-18swscale: process horizontal lines in batchesPedro Arthur
Process more lines in a single pass to improve performance Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-18swscale: refactor horizontal scalingPedro Arthur
+ split color conversion from scaling - disabled gamma correction, until it's refactored too Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-09swscale/alphablend: Support SWS_ALPHA_BLEND_CHECKERBOARDMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-08swscale: Implement alphablendaway for planar 4:4:4 formatsMichael Niedermayer
Fixes Ticket4746 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-08swscale: Add sws_alloc_set_opts()Michael Niedermayer
This simplifies allocating and initializing swscale contexts with custom options. The function is internal currently but could be moved into the public header Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-24swscale: ayuv64le input supportPaul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>