summaryrefslogtreecommitdiffstats
path: root/libswscale/swscale_template.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove libswscale directory in MPlayer sourcesUoti Urpala2009-07-261-3129/+0
| | | | libswscale will be used through FFmpeg.
* Kill warnings of possibly unused variables by using av_unused.ramiro2009-06-111-8/+8
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29355 b3059339-0415-0410-9bf9-f77b7e298cf2
* Replace more uses of __attribute__((aligned)) by DECLARE_ALIGNED.ramiro2009-06-041-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29349 b3059339-0415-0410-9bf9-f77b7e298cf2
* Partial (low bits ignored, no direct transcoding into other RGB formats) supportkostya2009-06-021-0/+14
| | | | | | | | for inputting RGB48BE/LE. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29341 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move colorspace conversion functions implemented in pure C from templatekostya2009-05-251-137/+23
| | | | | | | | into swscale.c git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29320 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix chroma shift when scaling from ARGB on LE and BGRA on BEsdrik2009-05-021-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29242 b3059339-0415-0410-9bf9-f77b7e298cf2
* Planar 16bit 420 422 444 YUV support (output is only supported in somemichael2009-04-211-0/+79
| | | | | | | | | unscaled convertions). This, like gray16 converts down to 8bit, which is a big FIXME & patch welcome, we should preserve more bits. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29217 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do not use abgrToA for both luma and alpha channel in hyscale.sdrik2009-04-141-10/+9
| | | | | | This fixes RGB32 (et al.) scaling. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29179 b3059339-0415-0410-9bf9-f77b7e298cf2
* swscale: Use function pointers for swScale functions.ramiro2009-04-041-203/+120
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29145 b3059339-0415-0410-9bf9-f77b7e298cf2
* swscale: Add const to some swScale functions' parameters.ramiro2009-04-041-58/+60
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29143 b3059339-0415-0410-9bf9-f77b7e298cf2
* swscale: Remove mmx2 params from h[yc]scale().ramiro2009-04-021-29/+36
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29129 b3059339-0415-0410-9bf9-f77b7e298cf2
* swscale: Split h[yc]scale_fast() into their own functions.ramiro2009-04-021-23/+38
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29128 b3059339-0415-0410-9bf9-f77b7e298cf2
* swscale: Execute sfence and emms depending on runtime flags.ramiro2009-04-021-17/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29127 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move swscale AltiVec template code to ppc subdirectory.diego2009-03-291-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29099 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do _not_ use rbx on x86_64, it will fail to compile with PIC, besides itreimar2009-03-201-4/+3
| | | | | | | added completely pointless code. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29016 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix swscale compilation with Altivec enabled.reimar2009-03-201-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29015 b3059339-0415-0410-9bf9-f77b7e298cf2
* Reindent after last commitsdrik2009-03-201-66/+66
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29014 b3059339-0415-0410-9bf9-f77b7e298cf2
* YUVA420P is now supported as output formatsdrik2009-03-201-0/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29012 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add alpha channel scalingsdrik2009-03-201-38/+218
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29011 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove useless casting in asm "m" operand.cehoyos2009-03-191-2/+2
| | | | | | | Patch by Matthieu Castet, castet D matthieu A free D fr git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29007 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do not assume long is same width as x86 register.ramiro2009-03-181-15/+15
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28992 b3059339-0415-0410-9bf9-f77b7e298cf2
* Consistently use ff_ prefixes for internal symbols.diego2009-03-181-4/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28988 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make the source buffer operands parametrized in the YSCALEYUV2RGB_YA macrosdrik2009-03-141-7/+7
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28943 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make MMX registers parametrized in the YSCALEYUV2PACKEDX_YA macrosdrik2009-03-111-11/+11
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28934 b3059339-0415-0410-9bf9-f77b7e298cf2
* Mask all unused bits for packed pixel format instead of green and alpha mask ↵kostya2009-03-091-1/+1
| | | | | | | | | | | only. That fixes the case when converting 15-bit RGB/BGR to YUV and high bit is set for input value(s). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28916 b3059339-0415-0410-9bf9-f77b7e298cf2
* remove the rest of x86 asm from LGPL buildhenry2009-03-031-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28804 b3059339-0415-0410-9bf9-f77b7e298cf2
* When converting from a non alpha format to an alpha format, defaults to all ↵sdrik2009-02-281-13/+14
| | | | | | ones rather than all zeroes git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28756 b3059339-0415-0410-9bf9-f77b7e298cf2
* move zeroing of alpha channel register out of YSCALEYUV2xxx macros,stefang2009-02-211-4/+23
| | | | | | | patch by Cédric Schieli (cschieli at gmail youknowwhat) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28687 b3059339-0415-0410-9bf9-f77b7e298cf2
* splits various YSCALEYUV2xxx macros into YSCALEYUV2xxx_UV,stefang2009-02-211-8/+27
| | | | | | | | YSCALEYUV2xxx_YA and YSCALEYUV2xxx_COEFF, patch by Cédric Schieli (cschieli at gmail youknowwhat) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28686 b3059339-0415-0410-9bf9-f77b7e298cf2
* make MMX registers parametrized in the WRITEBGR32 macro,stefang2009-02-211-24/+23
| | | | | | | patch by Cédric Schieli (cschieli at gmail youknowwhat) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28685 b3059339-0415-0410-9bf9-f77b7e298cf2
* Some AltiVec functions in SwScaler produce different output than theirkostya2009-02-141-2/+3
| | | | | | | | counterparts in pure C, so don't invoke them in bitexact mode. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28555 b3059339-0415-0410-9bf9-f77b7e298cf2
* HAVE_3DNOW --> HAVE_AMD3DNOW to sync with latest configure changes.diego2009-01-251-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28358 b3059339-0415-0410-9bf9-f77b7e298cf2
* Change semantic of CONFIG_*, HAVE_* and ARCH_*.aurel2009-01-141-43/+43
| | | | | | | They are now always defined to either 0 or 1. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28311 b3059339-0415-0410-9bf9-f77b7e298cf2
* Put variable declaration inside an #ifdef to avoid an unused variable warning.diego2008-11-171-2/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27945 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove unused code that can't be compiled without svn archive.cehoyos2008-10-251-269/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27827 b3059339-0415-0410-9bf9-f77b7e298cf2
* cosmetics: typo fixdiego2008-10-231-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27816 b3059339-0415-0410-9bf9-f77b7e298cf2
* Convert asm keyword into __asm__.flameeyes2008-10-161-42/+42
| | | | | | | | | | | | | | Neither the asm() nor the __asm__() keyword is part of the C99 standard, but while GCC accepts the former in C89 syntax, it is not accepted in C99 unless GNU extensions are turned on (with -fasm). The latter form is accepted in any syntax as an extension (without requiring further command-line options). Sun Studio C99 compiler also does not accept asm() while accepting __asm__(), albeit reporting warnings that it's not valid C99 syntax. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27778 b3059339-0415-0410-9bf9-f77b7e298cf2
* Invert logic for the single-pass in swScale() functions.flameeyes2008-10-091-3/+3
| | | | | | | | | | | | | | | | Instead of having a firstTime variable defaulting to 1, have a warnedAlready defaulting to 0. While this should make no difference in code speed at runtime, it allows to aggregate the four bytes of that variable with clip_table in .bss section, rather than issuing a .data section just for that. As it is, libswscale require no .data section but .data.rel.ro (that can be mitigated by prelinking), so the change might actually save one page of memory at runtime (per process). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27734 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do not set src[1] to the palette, it is now in the contextvitor2008-10-081-2/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27731 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove b5Dither, g5Dither and r5Dither from libswscale.cehoyos2008-10-041-34/+34
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27718 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove g6Dither from libswscale.cehoyos2008-10-041-8/+10
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27715 b3059339-0415-0410-9bf9-f77b7e298cf2
* Uniform *ToY and *ToUV function signatureslu_zero2008-09-181-51/+51
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27636 b3059339-0415-0410-9bf9-f77b7e298cf2
* Split mono2Y in monowhite and monoblacklu_zero2008-09-181-4/+19
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27635 b3059339-0415-0410-9bf9-f77b7e298cf2
* Factorize unit32_t* casts for palette pointerlu_zero2008-09-181-6/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27634 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix libswscale build after r27561 if --enable-runtime-cpudetection is used.ben2008-09-131-6/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27602 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix indention.michael2008-09-131-313/+313
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27600 b3059339-0415-0410-9bf9-f77b7e298cf2
* Disable mmx routines that are not bitexact when the user wantsmichael2008-09-131-6/+15
| | | | | | | bitexact ones. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27597 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make horizontal mmx scaling code match C code.michael2008-09-131-16/+15
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27596 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make the horizontal C scaler code clip only against INT16_MAX not 0,michael2008-09-121-1/+1
| | | | | | | this decreases the difference between C and MMX, its also faster. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27593 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix another 1000l bug in the mono input code.michael2008-09-121-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27590 b3059339-0415-0410-9bf9-f77b7e298cf2
* 10000l PIX_FMT_MONOWHITE check was really a || 1.michael2008-09-121-1/+1
| | | | | | | | Thats what happens when one does not do the full set of tests before each commit and just quickly goes over the diff thinking, "hey it is a trivial change". git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27588 b3059339-0415-0410-9bf9-f77b7e298cf2
* Support mono as input format.michael2008-09-121-1/+16
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27587 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add support for PIX_FMT_MONOWHITE as output format.michael2008-09-121-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27586 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix typo that lead to averaging of the same pixel in rgb24ToUV_half().michael2008-09-111-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27582 b3059339-0415-0410-9bf9-f77b7e298cf2
* Implement full horizontal chroma for rgb/bgr24/32 output. michael2008-09-111-0/+28
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27580 b3059339-0415-0410-9bf9-f77b7e298cf2
* Factorize yuv2packedXinC().michael2008-09-111-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27578 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make the 2point linear interpolation coefficients correct even for themichael2008-09-101-2/+2
| | | | | | | nearly never occurring 0.0, 1.0. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27574 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix overflow.michael2008-09-101-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27573 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix build failure due to %%eip on x86_64.michael2008-09-101-4/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27569 b3059339-0415-0410-9bf9-f77b7e298cf2
* Change RGB2YUV_SHIFT from 16 to 15 to make it able to workmichael2008-09-101-4/+2
| | | | | | | with 16bit signed constants (like SIMD might use). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27568 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add bgr/rgb15/16/32->UV-half to the macro so there is less code duplicationmichael2008-09-101-124/+24
| | | | | | | at the source level. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27567 b3059339-0415-0410-9bf9-f77b7e298cf2
* Factorize RGB/BGR15/16/32->UV by using the preprocessor.michael2008-09-101-93/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27566 b3059339-0415-0410-9bf9-f77b7e298cf2
* Factorize rgb/bgr15/16/32->Y by using the preprocessor.michael2008-09-101-81/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27565 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make SWS_FULL_CHR_H_INP work.michael2008-09-101-10/+164
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27564 b3059339-0415-0410-9bf9-f77b7e298cf2
* Rewrite bgr24->yuv mmx code, the new code is cleaner, more accurate,michael2008-09-091-195/+131
| | | | | | | and does not throw half the chroma away. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27561 b3059339-0415-0410-9bf9-f77b7e298cf2
* More correct rounding for the rgb/bgr->yuv converters.michael2008-09-091-20/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27557 b3059339-0415-0410-9bf9-f77b7e298cf2
* Prevent overflows during mpeg->jpeg yuv.michael2008-09-091-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27552 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix jpeg yuv.michael2008-09-081-6/+35
| | | | | | | Fixes issue504. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27547 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix accurate rounding mode on x86_64.michael2008-09-071-20/+21
| | | | | | | Fixes issue222. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27545 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make ToY and ToUV family of function consistent part Ilu_zero2008-09-071-16/+16
| | | | | | | Convert width argument from int to long (note: srcW is still an int). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27544 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make 16bit grayscale output work.michael2008-09-041-5/+5
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27524 b3059339-0415-0410-9bf9-f77b7e298cf2
* Support PIX_FMT_RGB32_1 and PIX_FMT_BGR32_1.michael2008-09-041-0/+22
| | | | | | | Fixes issue248. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27522 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix rgb15/16 vs. bgr part2.michael2008-09-041-24/+24
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27517 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make C code in yuv2yuv1() do accurate rounding, this could be splitmichael2008-07-181-3/+3
| | | | | | | depending on SWS_ACCURATE as well if someone wants. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27323 b3059339-0415-0410-9bf9-f77b7e298cf2
* indentmichael2008-07-171-8/+8
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27322 b3059339-0415-0410-9bf9-f77b7e298cf2
* Forgotten accurate rounding function YSCALEYUV2YV121_ACCURATE.mic