summaryrefslogtreecommitdiff
path: root/libswscale
Commit message (Collapse)AuthorAge
* swscale: extend mmx padding.Ronald S. Bultje2011-07-14
| | | | Fixes a crash when forcing libc to strictly adhere to malloc sizes.
* swscale: clip unscaled colorspace conversion path.Ronald S. Bultje2011-07-14
| | | | | Prevents overflows on very bright scenes when adding dither, which may lead to black dots.
* doxygen: Make sure parameter names match between .c and .h files.Diego Biurrun2011-07-14
|
* swscale: fix crash with dithering due incorrect offset calculation.Anton Mitrofanov2011-07-10
| | | | | | | | ptrdiff_t can be 4 bytes, which leads to the next element being 4-byte aligned and thus at a different offset than intended. Forcing 8-byte alignment forces equal offset of dither16/32 on x86-32 and x86-64. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* swscale: rename uv_off/uv_off2 to uv_off_px/byte.Ronald S. Bultje2011-07-08
|
* swscale: implement error dithering in planarCopyWrapper.Ronald S. Bultje2011-07-08
| | | | Based on a somewhat similar idea in FFmpeg's swscale.
* swscale: error dithering for 16/9/10-bit to 8-bit.Ronald S. Bultje2011-07-08
| | | | Based on a somewhat similar idea in FFmpeg's swscale copy.
* swscale: fix overflow in 16-bit vertical scaling.Ronald S. Bultje2011-07-08
| | | | | | We operated on 31-bits, but with e.g. lanczos scaling, values can add up to beyond 0x80000000, thus leading to output of zeroes. Drop one bit of precision fixes this.
* swscale: fix crash in 8-bpc bilinear output without alpha.Ronald S. Bultje2011-07-08
| | | | | We accessed the alpha array even it wasn't used and didn't exist, hence leading to a NULL pointer segfault.
* swscale: fix 16-bit horizontal scaling underflow.Ronald S. Bultje2011-07-08
| | | | | When using e.g. lanczos scaling, values can drop below 0, so they should never be unsigned.
* swscale: fix 16-bit scaling when output is 8-bits.Ronald S. Bultje2011-07-08
| | | | | We would use the second half of the U plane buffer, rather than the V plane buffer, to output the V plane pixels.
* swscale: amend documentation to mention use of native depth for scaling.Ronald S. Bultje2011-07-06
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* Remove unused static tables and static inline functions.Diego Biurrun2011-07-04
|
* Do not include log.h in avutil.hMans Rullgard2011-07-03
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Do not include pixfmt.h in avutil.hMans Rullgard2011-07-03
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* doxygen: Remove spurious documentation for non-existing function parameters.Diego Biurrun2011-07-03
|
* swscale: disable full_chroma_int when converting to non-24/32bpp RGB.Ronald S. Bultje2011-07-02
| | | | | This functionality is only implemented for RGB24/32 and causes crashes otherwise.
* swscale: for >8bit scaling, read in native bit-depth.Ronald S. Bultje2011-07-01
| | | | | | For 9/10bit, it means we don't have to upscale to 16bit before actual scaling or pixel format conversion, and thus a performance gain.
* swscale: fix another yuv range conversion overflow in 16bit scaling.Ronald S. Bultje2011-06-30
|
* swscale: Unbreak build with --enable-smallMohamed Naufal2011-06-30
| | | | | | | This fixes building with --enable-small, by using the correct variable name. Signed-off-by: Martin Storsjö <martin@martin.st>
* swscale: fix yuv range correction when using 16-bit scaling.Ronald S. Bultje2011-06-29
|
* swscale: implement >8bit scaling support.Ronald S. Bultje2011-06-29
| | | | | | This means that precision is retained when scaling between sample formats with >8 bits per component (48bit RGB, 16bit grayscale, 9/10/16bit YUV).
* swscale: Add Doxygen for hyscale_fast/hScale.Ronald S. Bultje2011-06-29
|
* PPC: swscale: disable altivec functions for unsupported formatsMans Rullgard2011-06-28
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.Ronald S. Bultje2011-06-28
|
* build: include sub-makefiles using full path instead of symlinksMans Rullgard2011-06-28
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* swscale: change prototypes of scaled YUV output functions.Ronald S. Bultje2011-06-27
| | | | | | | | Remove unused variables "flags" and "dstFormat" in yuv2packed1, merge source rows per plane for yuv2packed[12], and make every source argument int16_t (some where invalidly set to uint16_t). This prevents stack pollution and is part of the Great Evil Plan to simplify swscale.
* swscale: re-add support for non-native endianness.Ronald S. Bultje2011-06-27
| | | | This works through some non-obvious hacks in utils.c.
* swscale: disentangle yuv2rgbX_c_full() into small functions.Ronald S. Bultje2011-06-27
| | | | This is part of the Great Evil Plan to simplify swscale.
* swscale: split yuv2packed[12X]_c() remainders into small functions.Ronald Bultje2011-06-27
| | | | This is part of the Great Evil Plan to simplify swscale.
* swscale: split yuv2packedX_altivec in smaller functions.Ronald S. Bultje2011-06-27
| | | | | | This will likely lead to a considerable performance boost, since it removes a branch from the inner loop. Part of the Great Evil Plan to simplify swscale.
* swscale: don't use planar output functions to write to NV12/21.Ronald S. Bultje2011-06-27
| | | | | This prevents a crash when converting to NV12/21 without the bitexact flags enabled.
* swscale: remove unused xInc/srcW arguments from hScale().Ronald S. Bultje2011-06-26
|
* build: Remove redundant config.mak includes from subdirectory Makefiles.Diego Biurrun2011-06-25
| | | | | Calling Make from subdirectories is not supported and config.mak has multiple inclusion guards anyway, so the top-level include is enough.
* swscale: Remove unused variable from ff_bfin_get_unscaled_swscale().Diego Biurrun2011-06-21
|
* Bump major version for b8e893399ff8755721dc117695ec5ff183c1e07bReinhard Tartler2011-06-20
| | | | | | | | | | | On architectures such as x86 (both 32 bit and 64bit), the stack element size is fixed, which maintains alignment. Here, this change does not break anything. However, we also support also other architectures where this property is not maintained and therefore, applications will crash horribly. This change effectively forces all applications to be recompiled against libswscale.
* swscale: use SwsContext for av_log when availableJanne Grunau2011-06-15
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* swscale: Remove HAVE_MMX from files that are only compiled with MMX enabled.Diego Biurrun2011-06-15
|
* swscale: Fix compilation with --disable-mmx2.Diego Biurrun2011-06-15
| | | | Some MMX2 functions were being referenced without proper #ifdefs.
* swscale: remove misplaced comment.Ronald S. Bultje2011-06-14
| | | | | The comment should have been placed only in yuv2rgb48_X_c_template, not yuv2rgb48_1_c_template.
* swscale: split out RGB48 output functions from yuv2packed[12X]_c().Ronald S. Bultje2011-06-14
| | | | | | | This is part of the Great Evil Plan to simplify swscale. Note that you'll see some code duplication between the output functions for different RGB variants, and even between packed-YUV and RGB variants. This is intentional because it improves readability.
* swscale: fix JPEG-range YUV scaling artifacts.Michael Niedermayer2011-06-14
| | | | | | | YUV planes were marked as uint16_t, but they contained signed data. Fixes issue 1108 and 675. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* libavutil/swscale: YUV444P10/YUV444P9 support.Ronald S. Bultje2011-06-10
| | | | | | | Also add missing glue code for recently added YUV422P10 formats to swscale. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* swscale: split YUYV output out of yuv2packed[12X]_c().Ronald S. Bultje2011-06-09
| | | | This is part of the Great Evil Plan to simplify swscale.
* swscale: extract monowhite/black output from yuv2packed[12X]_c().Ronald S. Bultje2011-06-09
| | | | This is part of the Great Evil Plan to simplify swscale.
* swscale: de-macro'ify RGB15/16/32 input functions.Ronald S. Bultje2011-06-09
| | | | | | | | Inline functions are easier to read, maintain, modify and test, which justifies the slightly increased source size. This patch also adds support for non-native endianness RGB15/16 and fixes isSupportedOutput() to no longer claim that we support writing non-native RGB565/555/444.
* swscale: rearrange code.Ronald S. Bultje2011-06-09
| | | | | This way the code in the file is less cluttered all-over-the- place.
* swscale: change 48bit RGB input macros to inline functions.Ronald S. Bultje2011-06-09
| | | | | | Inline functions are slightly larger in source code, but are easier to handle in source code editors. The binary code generated is the same.
* swscale: change 9/10bit YUV input macros to inline functions.Ronald S. Bultje2011-06-09
| | | | | | Inline functions are slightly larger in source code, but are easier to handle in source code editors. The binary code generated is the same.
* swscale: extract gray16 output functions from yuv2packed[12X]().Ronald S. Bultje2011-06-09
| | | | This is part of the Great Evil Plan to simplify swscale.