summaryrefslogtreecommitdiffstats
path: root/libswscale/swscale_template.c
Commit message (Collapse)AuthorAgeFilesLines
* libswscale: Relicense almost all x86 assembler optimizations as LGPL.diego2010-03-271-13/+10
| | | | | | | | This is of course done with permissions from the authors. The only GPL component left are MMX optimizations for YUV to RGB conversion. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30965 b3059339-0415-0410-9bf9-f77b7e298cf2
* Replace wrong condition name in #endif comment by correct instance.diego2010-03-191-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30938 b3059339-0415-0410-9bf9-f77b7e298cf2
* try to avoid returning odd slices.michael2010-03-051-1/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30847 b3059339-0415-0410-9bf9-f77b7e298cf2
* Reorder buffer debug. Also print out if slice was buffered.ramiro2010-02-231-10/+12
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30722 b3059339-0415-0410-9bf9-f77b7e298cf2
* Use isAnyRGB() where possiblemichael2010-01-261-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30435 b3059339-0415-0410-9bf9-f77b7e298cf2
* Rename isRGB() and isBGR() as their meaning is confusing.michael2010-01-261-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30433 b3059339-0415-0410-9bf9-f77b7e298cf2
* Declare with av_unused the variable alpMmxFilter, fix the gcc warning:stefano2010-01-161-1/+1
| | | | | | | | | swscale_template.c: In function ‘swScale_C’: swscale_template.c:2580: warning: unused variable ‘alpMmxFilter’ swscale_template.c: In function ‘sws_init_swScale_C’: git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30332 b3059339-0415-0410-9bf9-f77b7e298cf2
* Reuse h{lum,chr}Filter{,Pos} variables for MMX2 fast_bilinear horizontal scaler.ramiro2010-01-161-6/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30327 b3059339-0415-0410-9bf9-f77b7e298cf2
* Const correctness for src pointer. Remove all constness related warnings inzuxy2010-01-151-18/+18
| | | | | | | libswscale. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30306 b3059339-0415-0410-9bf9-f77b7e298cf2
* cosmetics: {} placement.ramiro2010-01-111-4/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30272 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove unused PREFETCHW macrozuxy2010-01-091-4/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30253 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do not needlessly use the BP register in x86_64-specific code, there arereimar2010-01-011-4/+4
| | | | | | | enough other registers available that are less likely to cause issues. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30160 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove unused variable, fixes the warning:diego2009-12-281-1/+0
| | | | | | | libswscale/swscale_template.c:2575: warning: unused variable ‘srcFormat’ git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30132 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove parameters no longer used in h[yc]scale().ramiro2009-12-211-10/+10
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30099 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move fast bilinear scaler code to the existing h[yc]scale_fast() functions.ramiro2009-12-211-194/+194
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30098 b3059339-0415-0410-9bf9-f77b7e298cf2
* Rename function pointers used to convert from the input pixel format to theramiro2009-12-211-48/+48
| | | | | | | intermediate YV12 to a more descriptive name. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30097 b3059339-0415-0410-9bf9-f77b7e298cf2
* Check if chroma horizontal scaler is needed in sws_init_swScale().ramiro2009-12-211-4/+5
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30096 b3059339-0415-0410-9bf9-f77b7e298cf2
* Indent.ramiro2009-12-201-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30086 b3059339-0415-0410-9bf9-f77b7e298cf2
* Set fast_bilinear functions in sws_init_swScale().ramiro2009-12-201-12/+10
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30085 b3059339-0415-0410-9bf9-f77b7e298cf2
* Set horizontal scaler's range conversion in context in sws_init_swScale().ramiro2009-12-201-28/+47
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30082 b3059339-0415-0410-9bf9-f77b7e298cf2
* Set horizontal scaler's src offsets in context in sws_init_swScale().ramiro2009-12-201-19/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30081 b3059339-0415-0410-9bf9-f77b7e298cf2
* Start using intermediate buffers at index 0.ramiro2009-12-061-2/+2
| | | | | | | | These index variables are incremented before each use, so they should be initialized to -1. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29977 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix compilation with runtime cpu detection.ramiro2009-12-051-8/+8
| | | | | | | All functions in swscale_template.c should be declared with the RENAME macro. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29976 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add support for nv12/nv21 input.ramiro2009-12-031-0/+50
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29974 b3059339-0415-0410-9bf9-f77b7e298cf2
* Use enum PixelFormat instead of int for srcFormat and dstFormat.cehoyos2009-11-081-8/+8
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29857 b3059339-0415-0410-9bf9-f77b7e298cf2
* Replace manual gcc version check by AV_GCC_VERSION_AT_LEAST macro.diego2009-09-221-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29701 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cleanup buffer debugs in swScale().ramiro2009-09-161-14/+19
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29686 b3059339-0415-0410-9bf9-f77b7e298cf2
* Use correct buffers in vertical scaler in unscaled YV12 case.ramiro2009-09-161-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29685 b3059339-0415-0410-9bf9-f77b7e298cf2
* Make 16bit YUV formats compatible with NE avcodec_get_pix_fmt().ramiro2009-09-051-12/+12
| | | | | | Patch by Lars Täuber <lars <dot> taeuber <at> gmx <dot> net>. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29650 b3059339-0415-0410-9bf9-f77b7e298cf2
* More indentation changes leftover from r29522:ramiro2009-08-161-661/+661
| | | | | | | | - Align asm code to the column 4 spaces after the call to __asm__(); - Align cases in switch statements to the same column as "switch". git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29524 b3059339-0415-0410-9bf9-f77b7e298cf2
* Cosmetics:ramiro2009-08-161-191/+119
| | | | | | | - Place curly brackets in the same line as while/for/if/switch/else/do; - Place curly brackets at column 0 in the next line starting a function. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29523 b3059339-0415-0410-9bf9-f77b7e298cf2
* Indent libswscale:ramiro2009-08-161-114/+114
| | | | | | | | | | | | - Use 4 spaces throughout for indentation; - Fix inconsistent indentation; - Indent function calls and declarations aligning arguments on multiple lines to the column after the opening parentheses; - Align asm code to the column 4 spaces after the call to __asm__(); - Align cases in switch statements to the same column as "switch". git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29522 b3059339-0415-0410-9bf9-f77b7e298cf2
* Indent.ramiro2009-08-151-4/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29518 b3059339-0415-0410-9bf9-f77b7e298cf2
* Vertical yuv -> yuv16 scaler.ramiro2009-08-141-0/+20
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29517 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove duplicate define (it is the same in the lum code).ramiro2009-08-131-21/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29508 b3059339-0415-0410-9bf9-f77b7e298cf2
* Rename "funny" code to "mmx2 filter" code.ramiro2009-08-131-24/+24
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29507 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove disabled crufty code.diego2009-08-081-10/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29482 b3059339-0415-0410-9bf9-f77b7e298cf2
* Indent.ramiro2009-07-281-45/+45
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29451 b3059339-0415-0410-9bf9-f77b7e298cf2
* Remove duplicate horizontal scaling when there aren't enough lines in a sliceramiro2009-07-281-52/+15
| | | | | | to output the dstY line. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29450 b3059339-0415-0410-9bf9-f77b7e298cf2
* Do not misuse HAVE_ defines. Introduce COMPILE_TEMPLATE_ defines and use themramiro2009-07-271-47/+47
| | | | | | | instead. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29446 b3059339-0415-0410-9bf9-f77b7e298cf2
* Factorize x86 fast_bilinear assembly.ramiro2009-07-271-24/+12
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29445 b3059339-0415-0410-9bf9-f77b7e298cf2
* Fix assembly comments for x86 fast_bilinear so they match the C code.ramiro2009-07-271-16/+16
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29444 b3059339-0415-0410-9bf9-f77b7e298cf2
* 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