Commit Graph

977 Commits

Author SHA1 Message Date
Ronald S. Bultje 0e5d31b16b swscale: split out unscaled altivec YUV converters in their own file. 2011-06-03 09:52:09 -07:00
Ronald S. Bultje 0d793db1b0 swscale: remove unused COMPILE_TEMPLATE_ALTIVEC. 2011-06-02 21:29:59 -07:00
Ronald S. Bultje 808d8ff6bb swscale: allocate larger buffer to handle altivec overreads.
Altivec sws code intentionally overreads buffers for better performance,
so we need to allocate larger buffers to handle that.
2011-06-02 11:25:56 -07:00
Diego Biurrun f635a233e3 swscale: Remove unused variable. 2011-05-30 23:19:06 +02:00
Diego Biurrun 06b5facd4b swscale: Remove disabled code. 2011-05-29 14:32:08 +02:00
Anton Khirnov b8e893399f sws: replace all long with int.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-28 10:03:37 -04:00
Ronald S. Bultje 009f829dde swscale: fix crash in bilinear scaling. 2011-05-28 08:59:56 -04:00
Diego Biurrun 5a5a0f1613 swscale: Remove unused variables in x86 code.
libswscale/x86/swscale_template.c:2072: warning: unused variable ‘canMMX2BeUsed’
libswscale/x86/swscale_template.c:2145: warning: unused variable ‘canMMX2BeUsed’
libswscale/x86/swscale_template.c:2209: warning: unused variable ‘chrVPixBuf’
libswscale/x86/swscale_template.c:2237: warning: unused variable ‘chrVSrcPtr’
2011-05-27 21:25:57 +02:00
Ronald S. Bultje 389e2000eb swscale: delay allocation of formatConvBuffer().
That means it won't be allocated when not needed. Alongside
this, it fixes valgrind/fate-detected memory leaks.
2011-05-27 13:22:27 -04:00
Ronald S. Bultje f327bfa6dc swscale: fix build with --disable-swscale-alpha. 2011-05-27 13:22:27 -04:00
Ronald S. Bultje 9f5d45025e swscale: fix non-bitexact yuv2yuv[X2]() MMX/MMX2 functions. 2011-05-27 09:41:48 -04:00
Ronald S. Bultje 93681fbd50 swscale: fix compile on ppc. 2011-05-26 11:32:32 -04:00
Ronald S. Bultje e758573a88 swscale: fix compile on x86-32. 2011-05-26 10:41:27 -04:00
Ronald S. Bultje 48520772d9 swscale: use av_clip_uint8() in yuv2yuv1_c(). 2011-05-26 09:31:27 -04:00
Ronald S. Bultje 0f4eb8b043 swscale: remove VOF/VOFW. 2011-05-26 09:31:27 -04:00
Ronald S. Bultje b4a224c5e4 swscale: split chroma buffers into separate U/V planes.
Preparatory step to implement support for sizes > VOFW.
2011-05-26 09:31:27 -04:00
Ronald S. Bultje 69645c021a swscale: replace formatConvBuffer[VOF] by allocated array.
This allows to convert between formats of arbitrary width,
regardless of the value of VOF/VOFW.
2011-05-26 09:31:02 -04:00
Ronald S. Bultje 522d65ba25 rgb2rgb: remove duplicate mmx/mmx2/3dnow/sse2 functions.
Many functions have such a prefix, but do not actually use any
instructions or features from that set, thus giving the false
impression that swscale is highly optimized for a particular
system, whereas in reality it is not.
2011-05-26 09:31:02 -04:00
Ronald S. Bultje 836b82e3c9 swscale: reindent h[cy]scale_fast() and updateDitherTables(). 2011-05-26 09:31:02 -04:00
Ronald S. Bultje e2bad983b5 swscale: reformat x86/swscale_template.c.
Interleave macros and code so that it's easier to find the
actual code that belongs to a function. Also reindent where
appropriate and remove dead code.
2011-05-26 09:30:15 -04:00
Ronald S. Bultje 71d9c33c86 swscale: remove duplicate mmx/mmx2 functions if they are identical. 2011-05-26 09:30:15 -04:00
Ronald S. Bultje acb96bc268 swscale: remove if (c->dstFormat) branch from yuv2packed[12X]().
This allows cutting up the function in much smaller and easier-
to-maintain chunks.
2011-05-26 09:30:14 -04:00
Ronald S. Bultje b6cac9b3bf swscale: remove if(full_chr_int) from yuv2packed1().
If that flag is set, swScale() already proxies the call to
yuv2rgbXinC_full(). Therefore, this flag is never set when
yuv2packed1() is called.
2011-05-26 09:30:14 -04:00
Ronald S. Bultje 2159a24573 swscale: remove if(accurate_rnd) branch from functions. 2011-05-26 09:30:14 -04:00
Anton Khirnov c7a973e44a swscale: revive SWS_CPU_CAPS until next major bump. 2011-05-26 06:50:12 +02:00
Diego Biurrun 0093199184 swscale: Remove commented-out printf cruft. 2011-05-26 03:45:58 +02:00
Diego Biurrun 6f7a280ead swscale: Remove orphaned, commented-out function declaration. 2011-05-26 00:56:07 +02:00
Michael Niedermayer 7dc303a60e swscale: Eliminate rgb24toyv12_c() duplication.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-26 00:56:06 +02:00
Ronald S. Bultje a724ee6265 swscale: unbreak the build on non-x86 systems. 2011-05-24 15:32:03 -04:00
Ronald S. Bultje 1bb0f0c925 swscale: remove if(bitexact) branch from functions.
Instead, only set the function pointers if bitexact flag is
not set during initialization. Since a change in flags triggers
a re-init anyway, this doesn't situations where flag values
change during runtime.
2011-05-24 14:50:20 -04:00
Ronald S. Bultje 566b5fbbb3 swscale: remove if(canMMX2BeUsed) conditional.
Instead, set function pointers conditionally during init. This
patch also reveals a whole branch of dead assembly code that is
therefore also removed.
2011-05-24 14:50:19 -04:00
Ronald S. Bultje aaca69c130 swscale: remove swScale_{c,MMX,MMX2} duplication. 2011-05-24 14:50:15 -04:00
Ronald S. Bultje c4fd283a46 swscale: use emms_c(). 2011-05-24 14:48:49 -04:00
Ronald S. Bultje b9eb2136af swscale: remove dead macro WRITEBGR24OLD. 2011-05-24 10:46:40 -04:00
Ronald S. Bultje 1dd4f4be5a swscale: remove AMD3DNOW "optimizations".
The functions are identical to their MMX counterparts. Thus,
pretending that swscale is highly optimized for AMD3DNOW
extensions is a poorly executed practical joke at best.
2011-05-24 10:19:41 -04:00
Ronald S. Bultje fe43d5d71e swscale: remove duplicate code in ppc/ subdirectory. 2011-05-24 10:16:32 -04:00
Ronald S. Bultje 11ffefefdb swscale: remove duplicated x86/ functions. 2011-05-24 10:11:26 -04:00
Ronald S. Bultje e66149e714 swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*. 2011-05-24 10:03:26 -04:00
Kieran Kunhya 6465c820da Fix 9/10 bit in swscale.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-23 06:46:14 -04:00
Clément Bœsch 7d4c4394b5 swscale: point out an alternative to sws_getContext
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-21 13:42:50 +02:00
Ronald S. Bultje 76f8a96e00 [PATCH] Update pixdesc_be fate refs after adding 9/10bit YUV420P formats.
Also remove code that overwrites the C versions of functions in
sws_init_swScale_altivec(), so that it uses the C functions of files
if no altivec-optimized version exists.
2011-05-14 06:37:39 -04:00
Ronald S. Bultje 9f54e461fe swscale: properly inline bits/endianness in yuv2yuvX16inC(). 2011-05-13 16:46:24 -04:00
Ronald S. Bultje c3d68ec9c5 swscale: fix clipping of 9/10bit YUV420P. 2011-05-13 16:45:28 -04:00
Diego Biurrun 046f081b46 configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.
Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.

This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually.  It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.

Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems.  We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
2011-05-12 11:41:59 +02:00
Ronald S. Bultje c8f487deae swscale: fix YUV420P 9/10bit support.
Fix handling of input if not in native endianness, and add support for
9/10-bit output. This allows us to force endianness of YUV420P 9/10bit
in the H264/10bit fate tests, which should fix them on big-endian
systems.
2011-05-11 19:15:14 -04:00
Anton Khirnov b66752790a AVOptions: make default_val a union, as proposed in AVOption2.
This breaks API and ABI.
2011-05-10 20:22:06 +02:00
Oskar Arvidsson 42239ced65 Add pixel formats for 9- and 10-bit yuv420p.
Also add support for these formats in libswscale.

Needed for high bit depth h264 decoding.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:24:19 -04:00
Peter Ross 1afbae100b libswcale: PIX_FMT_BGR48LE and PIX_FMT_BGR48BE scaler implementation
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-28 07:25:27 +02:00
Anton Khirnov 7dfe244fbd sws: remove disabled cruft. 2011-04-19 21:50:12 +02:00
Anton Khirnov 41d0eb1c81 lavc: remove the FF_API_SET_STRING_OLD cruft. 2011-04-19 18:41:00 +02:00
Anton Khirnov 139f3ac42d Bump major versions of all libraries.
They've accumulated enough new APIs and corresponding deprecated cruft.

This breaks API and ABI.
2011-04-18 20:19:47 +02:00
Janne Grunau f668afd489 swscale: fix "ISO C90 forbids mixed declarations and code" warning
only hit with --enable-runtime-cpudetect
2011-04-15 10:06:53 +02:00
Janne Grunau 7f2ae5c7af swscale: fix compilation with --enable-runtime-cpudetect 2011-04-15 09:07:37 +02:00
Janne Grunau b6cad3df82 swscale: correct include path to fix ppc altivec build 2011-04-15 00:41:10 +02:00
Luca Barbato 6216fc70b7 swscale: simplify rgb2rgb templating
MMX is always built. Drop the ifdefs
2011-04-14 22:16:47 +02:00
Josh Allmann 33a0421bba swscale: simplify initialization code
Simplify the fallthrough case when no accelerated functions
can be initialized.
2011-04-14 22:16:47 +02:00
Josh Allmann 735bf19511 swscale: further cleanup swscale.c
Move x86-specific constants out of swscale.c
2011-04-14 22:16:47 +02:00
Luca Barbato 86330b4c92 swscale: partially move the arch specific code left
PPC and x86 code is split off from swscale_template.c. Lots of code is
still duplicated and should be removed later.

Again uniformize the init system to be more similar to the dsputil one.

Unset h*scale_fast in the x86 init in order to make the output
consistent with the previous status. Thanks to Josh for spotting it.
2011-04-14 22:16:47 +02:00
Luca Barbato c003832883 swscale: move away x86 specific code from rgb2rgb
Keep only the plain C code in the main rgb2rgb.c and move the x86
specific optimizations to x86/rgb2rgb.c
Change the initialization pattern a little so some of it can be
factorized to behave more like dsputils.
2011-04-14 22:16:47 +02:00
Luca Barbato 0e1a5434e2 swscale: Factorize FAST_BGR2YV12 definition.
It is used only for x86 so it will eventually be moved with that code
into the x86 arch subdirectory.
2011-04-13 17:24:53 +02:00
Diego Biurrun db46be01ec Add unconditional return statement to yuva420_rgb32_MMX() / yuva420_bgr32_MMX().
When HAVE_7REGS was not defined these functions had an empty body
causing the following warnings during compilation.
In file included from libswscale/x86/yuv2rgb_mmx.c:58:
libswscale/x86/yuv2rgb_template.c: In function ‘yuva420_rgb32_MMX’:
libswscale/x86/yuv2rgb_template.c:412: warning: no return statement in function returning non-void
libswscale/x86/yuv2rgb_template.c: In function ‘yuva420_bgr32_MMX’:
libswscale/x86/yuv2rgb_template.c:457: warning: no return statement in function returning non-void

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-11 14:18:48 +02:00
Anton Khirnov 0464ee9af2 swscale: postpone sws_getContext removal until next major bump.
The replacement isn't ready yet.
2011-04-06 22:55:28 +02:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Janne Grunau a03be6e1ba use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_* 2011-03-16 21:54:39 +01:00
Janne Grunau 29ba091136 replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION
also update the multiple inclusion guards in config.h|mak
2011-03-16 21:54:39 +01:00
Reinhard Tartler 737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Mans Rullgard f344903ca5 Fix MMX rgb24 to yuv conversion with gcc 4.6
When built with gcc 4.6, the MMX rgb24 to yuv conversion gives
wrong output.  The compiler produces this warning:

libswscale/swscale_template.c:1885:5: warning: use of memory input without lvalue in asm operand 4 is deprecated

Changing the memory operand to a register makes it work.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 01:42:32 +00:00
Clément Bœsch 523d9407d5 Remove a few if (p) av_freep(&p) forms
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-04 10:00:49 +00:00
Mans Rullgard ef4a65149d Replace ASMALIGN() with .p2align
This macro has unconditionally used .p2align for a long time and
serves no useful purpose.
2011-01-18 20:48:24 +00:00
Janne Grunau 2c3589bfda consolidate .gitignore patters into a single file
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-18 21:32:05 +01:00
Janne Grunau 348b8218f7 convert svn:ignore properties to .gitignore files
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-17 15:50:14 +01:00
Ramiro Polla b494baf0b0 colorspace-test: fix build
rgb32tobgr32() has been removed in favour of shuffle_bytes_2103() in r32190

Originally committed as revision 32676 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-12-07 15:27:11 +00:00
Martin Storsjö 9c158e4947 Store src/dstFormat after calling handle_jpeg
handle_jpeg may update the src/dstFormat variables, this makes sure the
updated version is stored in the context.

This fixes roundup issue 2302.

Patch by Troot, all_crap_goes_here at hotmail

Originally committed as revision 32562 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-10-29 13:48:12 +00:00
Reimar Döffinger 12eef0d1ba 100l, fix sws_getCachedContext. It did not set the colorspace details,
but worse it did not set up destination dimensions, thus every user
of it would necessarily fail.

Originally committed as revision 32424 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-10-03 07:53:40 +00:00
Stefano Sabatini f34fcdc8b6 Set default values for the scale context in sws_alloc_context().
Originally committed as revision 32415 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 22:06:44 +00:00
Stefano Sabatini e60c906a82 Set the default value of param0 and param1 to SWS_PARAM_DEFAULT.
Originally committed as revision 32414 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 22:06:40 +00:00
Stefano Sabatini 6d21d67b38 Set valid default values for the srcw, srch, dstw, dsth options in the
scale context. Prevent pointless warnings when using
av_opt_set_defaults() for setting the default values, as in a pending
patch.

Originally committed as revision 32413 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 22:06:36 +00:00
Stefano Sabatini fc7c40c2bd Cosmetics: put "if (...)" and "av_log(...)" in the same line for
improving vertical alignment and readability.

Originally committed as revision 32405 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 16:15:42 +00:00
Stefano Sabatini d29e863e1d Put if (...) av_log() in the same line, more compact and increase
readibility.

Originally committed as revision 32404 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 13:02:31 +00:00
Stefano Sabatini 5abd626e20 Amend constraints for the src_format and dst_format options in the
SWScale context.

Originally committed as revision 32403 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 13:02:28 +00:00
Stefano Sabatini c24b404ba6 Cosmetics: fix braces placement.
Originally committed as revision 32402 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-29 08:44:09 +00:00
Stefano Sabatini 0810a5846b Deprecate sws_getContext(), use sws_alloc_context() and
sws_init_context() instead.

Originally committed as revision 32401 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-28 22:23:58 +00:00
Stefano Sabatini 499287e0a5 Add documentation for the returned value of sws_init_context().
Originally committed as revision 32400 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-28 22:23:53 +00:00
Stefano Sabatini c508ab6736 Bump minor version after the addition of sws_alloc_context() and
sws_init_context() of r32368.

Originally committed as revision 32396 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-28 15:29:23 +00:00
Baptiste Coudurier bd8154d0b3 100l fix if condition
Originally committed as revision 32395 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-27 23:47:54 +00:00
Baptiste Coudurier df0743e01e Y400A (gray alpha) input support in libswscale
Originally committed as revision 32394 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-27 22:24:03 +00:00
Janne Grunau 9f694f0b3d swscale: clear SWS_CPU_CAPS_SSE2 in update_flags_cpu() missed in r32068
Originally committed as revision 32393 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-27 20:10:53 +00:00
Janne Grunau 829e5dafc2 cosmetics: break long line update_flags_cpu
Originally committed as revision 32392 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-27 20:09:29 +00:00
Ramiro Polla 33ce384688 fix typos and grammar
Originally committed as revision 32370 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-26 20:31:04 +00:00
Michael Niedermayer 8c26d83edb Make the avoptions list of sws more complete.
Originally committed as revision 32369 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-26 19:48:49 +00:00
Michael Niedermayer 635d4aed60 Split alloc and init of context so that parameters can be set in the context
instead of requireing being passed through function parameters. This also
makes sws work with AVOptions.

Originally committed as revision 32368 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-26 19:33:57 +00:00
Ramiro Polla f4203ff3d9 swscale: use full chroma input for point scaler
Originally committed as revision 32360 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-26 17:06:32 +00:00
Ramiro Polla b9f5e3bd75 swscale-test: cosmetic alignment
Originally committed as revision 32265 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-16 13:30:02 +00:00
Ramiro Polla 5a90173751 swscale: remove useless temporary variable
Originally committed as revision 32258 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-16 01:09:59 +00:00
Ramiro Polla cf1cd520c6 swscale: factorize plane copying code out of 2 functions
Originally committed as revision 32257 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-16 01:07:55 +00:00
Ramiro Polla f1084cb0cd swscale-test: always use bilinear scaler to get output for SSD
Originally committed as revision 32256 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-16 00:41:08 +00:00
Ramiro Polla c12f7b2d2c rgb2rgb: don't misuse HAVE_* defines
Introduce and use COMPILE_TEMPLATE_* instead.

Originally committed as revision 32241 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-14 13:12:11 +00:00
Ramiro Polla 40b433b62b swscale: indentation and emtpy line cosmetics
Originally committed as revision 32222 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-13 14:33:08 +00:00
Ramiro Polla 6527e56131 swscale: avoid reading prior to the source buffer in planar2x() MMX2
Originally committed as revision 32221 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-13 14:25:18 +00:00
Ramiro Polla 9b4bf9c21d swscale-test: allow specifying src/dst pixel formats
Originally committed as revision 32215 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 18:17:29 +00:00
Ramiro Polla 9075bc7c51 indent
Originally committed as revision 32214 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 18:16:53 +00:00
Ramiro Polla 4bf4478598 swscale-test: take input from reference file
If the CRC from the src->dst conversion matches a reference, it is not
necessary to perform a dst->yuva420p conversion and check the SSD.

Originally committed as revision 32213 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 18:16:33 +00:00
Ramiro Polla 6bbae4c8b3 swscale-test: always use SWS_BILINEAR to convert from ref to src
Originally committed as revision 32212 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 18:15:34 +00:00
Ramiro Polla 3e1e78008b swscale-test: move conversion from ref to source back to doTest()
The source format parameters are kept in static variables and conversion from
ref to source is only made when any parameter changes.

Originally committed as revision 32211 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 18:14:42 +00:00
Ramiro Polla a51125b52f rgb2rgb: replace shuffle_bytes_2103() by optimized rgb32tobgr32()
Originally committed as revision 32190 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-12 13:03:41 +00:00
Ramiro Polla 0132ab80a8 indent
Originally committed as revision 32157 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-11 14:31:13 +00:00
Ramiro Polla 4d8617496f swscale: remove unused code
yvu9ToYv12Wrapper() used to support yv12 with the chroma planes either in the
uv order or the vu order. FFmpeg no longer has a pixel format in vu order.

Originally committed as revision 32156 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-11 14:30:54 +00:00
Ramiro Polla 4821b4456f rgb2rgb: remove unused yvu9toyv12 function
Originally committed as revision 32155 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-11 14:29:55 +00:00
Ramiro Polla 4389d606e6 av_fill_image_linesizes -> av_image_fill_linesizes
Originally committed as revision 32106 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-08 23:36:02 +00:00
Ramiro Polla 539ff40c2d rgb2rgb: build SSE2 codepath
Originally committed as revision 32068 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-08 13:16:15 +00:00
Ramiro Polla c17f5a4e15 swscale: also update flags on sws_getCachedContext()
Originally committed as revision 32052 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-06 14:42:25 +00:00
Ramiro Polla a1899e0adc swscale: fix internal rgb->yv12 chroma conversion used by the main scaler path
The shift must be applied before the masking.

Originally committed as revision 32051 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-06 02:02:53 +00:00
vle 87db37356c Fix mlib compilation: add mising include for SwsContext.
Patch by [vle gmx net].

Originally committed as revision 32050 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-09-05 09:41:24 +00:00
Ramiro Polla 0fc29f2708 swscale: simplify selection of optimizations to compile.
Originally committed as revision 32013 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-25 14:39:11 +00:00
Ramiro Polla 8f02861636 swscale: Always define COMPILE_xxx to either 0 or 1.
Originally committed as revision 32012 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-25 14:38:30 +00:00
Måns Rullgård 66842fe874 swscale: fix unaligned accesses in (RGB|BGR)32_1 to YUV conversion
Originally committed as revision 32011 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-23 21:22:24 +00:00
Måns Rullgård 83761d5b58 swscale: remove unused macro parameter in BGR2UV template
Originally committed as revision 32010 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-23 21:22:20 +00:00
Grant Carver 53bc0dc2bd fix anonymous memory mapping for NetBSD
mmap() with MAP_ANONYMOUS requires the file descriptor to be -1 in NetBSD.
Linux just ignores this parameter.

Patch by Grant Carver <grantc at cat dot co dot za>

Originally committed as revision 31984 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-19 23:48:19 +00:00
Ramiro Polla 8d88402013 swscale-test: add CRC output
Originally committed as revision 31982 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-19 14:36:16 +00:00
Ramiro Polla a42c29febc validate input data and linesizes
Originally committed as revision 31976 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-18 19:37:37 +00:00
Ramiro Polla a4fc3bd533 indent
Originally committed as revision 31949 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-08 18:18:13 +00:00
Ramiro Polla 06c93cb705 swscale-test: get strides using av_fill_image_linesizes() from libavcore
Originally committed as revision 31948 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-08-08 18:14:43 +00:00
Ramiro Polla e07b1939e5 swscale-test: merge declaration and initialization
Originally committed as revision 31879 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-31 22:02:55 +00:00
Stefano Sabatini ed80ba7461 Revert commit:
r31772 | stefano | 2010-07-23 01:01:31 +0200 (Fri, 23 Jul 2010) | 2 lines

  Prefer impersonal form over third person, for consistency with the
  rest of FFmpeg.

The change was not approved by the maintainer.

Originally committed as revision 31847 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-28 10:43:02 +00:00
Reimar Döffinger 6cce7cabdb Fix compilation, forgot to add const also to the
definition of ff_yuv2packedX_altivec

Originally committed as revision 31782 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-24 14:43:55 +00:00
Reimar Döffinger 5a55d5b592 More const-correctness fixes to avoid warnings.
Originally committed as revision 31781 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-24 11:37:58 +00:00
Reimar Döffinger a4eef68f53 Add some "const" to avoid incompatible pointer type warnings
Originally committed as revision 31780 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-24 11:33:28 +00:00
Stefano Sabatini 04f6ab1cef Add missing comma, fix rgb2yuv_table[SWS_CS_SMPTE240M] coefficients.
Originally committed as revision 31779 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-24 11:19:39 +00:00
Stefano Sabatini 24911613a5 Add some comments to the rgb2yuv_table, clarifying the standard where
are defined.

Originally committed as revision 31778 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-24 11:19:35 +00:00
Ramiro Polla 73016d29c9 swscale-test: scale from reference to source only once for each algorithm
Originally committed as revision 31777 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-23 20:27:54 +00:00
Ramiro Polla be1c5d35cc indent
Originally committed as revision 31776 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-23 20:26:54 +00:00
Ramiro Polla da78053af0 swscale-test: change order tests are run, maintaining the same algorithm for
sequential geometries instead of running all algorithms sequentially for each
geometry.

Originally committed as revision 31775 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-23 20:26:32 +00:00
Stefano Sabatini 5b9eb68749 Prefer impersonal form over third person, for consistency with the
rest of FFmpeg.

Originally committed as revision 31772 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-22 23:01:31 +00:00
Ramiro Polla 9bb9875eb7 swscale-test: use only 3 characters to print width/height since they're always
smaller than 1000

Originally committed as revision 31771 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-22 19:05:10 +00:00
Ramiro Polla b6f1e7ec44 swscale-test: print test name before running test, so that it's available in
the output even if the test crashes.

Originally committed as revision 31770 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-22 19:02:49 +00:00
Ramiro Polla 67e1d52783 swscale-test: allocate more memory to prevent scalers from writing out of bounds
Some converters (ie. unscaled rgb24 -> argb) may write some bytes out of
bounds. Ideally the converters should be fixed, but in the meantime we allocate
more memory to prevent heap corruption.

Originally committed as revision 31768 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-22 15:30:22 +00:00
Ramiro Polla 262b6dbad9 darwin: allow 64-bit darwin to allocate executable memory
darwin requires _DARWIN_C_SOURCE to be defined for MAP_ANON, which is used by
swscale to determine whether to use malloc() or mmap(). 64-bit darwin does not
have an executable heap, so mmap() must be used instead of malloc(), and
therefore _DARWIN_C_SOURCE must be defined.

Originally committed as revision 31760 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-21 13:29:55 +00:00
Ramiro Polla 92bfd7461c swscale-test: use av_pix_fmt_descriptors[].name directly
Originally committed as revision 31759 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-20 22:20:23 +00:00
Ramiro Polla 709c0181fd Restore vertical alignment in some defines
Originally committed as revision 31758 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-20 01:45:25 +00:00
Martin Storsjö e593826b93 Cosmetics: reindent and unify whitespace
Originally committed as revision 31757 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-19 07:06:14 +00:00
Martin Storsjö 72ae5049e1 Do planar copy with a single memcpy only if the stride is equal to the length
This avoids writing outside of the designated rectangle.

Originally committed as revision 31756 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-19 07:02:31 +00:00
Anton Mitrofanov c85007d559 Another try at fixing swscale on win64, as per r31153.
Don't change paramater passing, but instead use casts.
Shouldn't affect asm output on anything other than win64.
libswscale should work on win64 now.
The rest of ffmpeg still isn't win64 compatible due to the issue of xmm
clobbers, but swscale doesn't use any SSE.

Patch by Anton Mitrofanov <BugMaster AT narod DOT ru>.

Originally committed as revision 31751 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-18 21:39:57 +00:00
Martin Storsjö c4e2b8268f In planarCopyWrapper, Only copy length, not stride of the last line in the plane
If the destination planes are offset within the destination buffer,
writing the extra bytes at the end may write outside of the destination
buffer.

Originally committed as revision 31746 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-16 17:45:50 +00:00
Benoit Fouet 453d28af60 Change the type of Y table to pointer to void in fill_table().
This fixes warnings about wrong type being used, e.g.:
libswscale/yuv2rgb.c: In function ‘ff_yuv2rgb_c_init_tables’:
libswscale/yuv2rgb.c:778: warning: passing argument 4 of ‘fill_table’ from incompatible pointer type
libswscale/yuv2rgb.c:598: note: expected ‘uint8_t *’ but argument is of type ‘uint16_t *’

Originally committed as revision 31722 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-12 08:35:20 +00:00
Måns Rullgård 6a01eab73c Add av_ prefix to bswap macros
Originally committed as revision 31679 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-10 22:12:38 +00:00
Eli Friedman 3483d87752 Fix 'assignment from incompatible pointer type' warning.
Patch by Eli Friedman, eli d friedman a gmail

Originally committed as revision 31628 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-07-03 09:58:13 +00:00
Reinhard Tartler 2b991422f8 deprecate palette8topacked32 in favor of public API functions sws_convertPalette8ToPacked32 and -24
additionallym deprecate palette8torgb16 and its bgr variant without
replacement. These functions are not meant to be used by applications.

Discussed at: http://comments.gmane.org/gmane.comp.video.ffmpeg.devel/109340

Originally committed as revision 31301 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-06-01 19:35:16 +00:00
Stefano Sabatini 0093ac5b9f Move internal scale context fields initialization from
sws_setColorspaceDetails() to ff_yuv2rgb_c_init_tables().

Allow to factorize duplicated code.

Originally committed as revision 31300 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-06-01 11:30:07 +00:00
Reinhard Tartler 3d9408f4a7 remove palette8torgb15 and palette8tobgr15
They contain exactly the same code as their 16bit variants, so this is
effectively code de-duplication.

Originally committed as revision 31298 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-06-01 06:53:56 +00:00
Diego Biurrun 870a6f4044 Rename yuv2rgb_template2.c --> yuv2rgb_template.c now that the other is gone.
Originally committed as revision 31279 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-30 08:44:05 +00:00