Commit Graph

1662 Commits

Author SHA1 Message Date
Michael Niedermayer
6713989c23 swscale: dither for planar yuv outputs
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-02 21:03:55 +02:00
Michael Niedermayer
877f76ad33 swscale: Fix use of uninitialized values
(bug probably introduced from a marge of libav)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-02 21:03:54 +02: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
Reimar Döffinger
3c194f390f Replace "vector const" by "const vector" otherwise gcc 4.6.0 fails.
Given that this compiles fine with the Apple compiler that is probably
a gcc bug, but "const vector" is nicer anyway.
2011-06-02 08:38:09 +02:00
Stefano Sabatini
eb5a3ab7b0 swscale: fix compilation of bfin due to missing pixdesc.h header
This is required after sws_format_name() was replaced by
av_get_pix_fmt(), which is declared in libavutil/pixdesc.h.
2011-06-01 13:30:35 +02:00
Michael Niedermayer
201549d1a9 swscale: More accurate rounding in YSCALE_YUV_2_PACKEDX_FULL_C()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-01 05:01:22 +02:00
Diego Biurrun
f635a233e3 swscale: Remove unused variable. 2011-05-30 23:19:06 +02:00
Reimar Döffinger
3d0424f2ff Add "const" to avoid "initialization discards qualifiers" warning. 2011-05-30 20:07:39 +02:00
Reimar Döffinger
70564983c5 Add const to fix "cast discards qualifiers" warnings. 2011-05-30 20:02:39 +02:00
Reimar Döffinger
b7b62c3a53 Include pixdesc.h for av_get_pix_fmt_name.
Fixes compilation on PPC with Altivec enabled.
2011-05-30 19:35:32 +02:00
Stefano Sabatini
e1197b9e17 swscale: remove sws_format_name()
Use av_get_pix_fmt_name() instead.
2011-05-30 09:07:43 +02:00
Michael Niedermayer
5a35cef4b1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: enable UAL syntax in asm.S
  v4l2: don't leak video standard string on error.
  swscale: Remove disabled code.
  avfilter: Surround function only used in debug mode by appropriate #ifdef.
  vf_crop: Replace #ifdef DEBUG + av_log() by av_dlog().
  build: remove BUILD_ROOT variable
  vp8: use av_clip_uintp2() where possible

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-30 01:29:11 +02:00
Reimar Döffinger
89c687e97e Add const to vector types for input in altivec code.
Avoids a large amount of warnings about cast discarding qualifiers.
2011-05-29 15:25:17 +02:00
Reimar Döffinger
4596d0f4c4 Remove unused variable, avoiding compiler warning. 2011-05-29 15:23:28 +02:00
Reimar Döffinger
54dc95634d Cast pointers to uintptr_t rather than unsigned int.
Avoids potential warnings on PPC64 systems.
2011-05-29 15:22:15 +02:00
Diego Biurrun
06b5facd4b swscale: Remove disabled code. 2011-05-29 14:32:08 +02:00
Michael Niedermayer
b8a43bc1b5 Merge remote-tracking branch 'qatar/master' into master
* qatar/master: (27 commits)
  ac3enc: fix LOCAL_ALIGNED usage in count_mantissa_bits()
  ac3dsp: do not use the ff_* prefix when referencing ff_ac3_bap_bits.
  ac3dsp: fix loop condition in ac3_update_bap_counts_c()
  ARM: unbreak build
  ac3enc: modify mantissa bit counting to keep bap counts for all values of bap instead of just 0 to 4.
  ac3enc: split mantissa bit counting into a separate function.
  ac3enc: store per-block/channel bap pointers by reference block in a 2D array rather than in the AC3Block struct.
  get_bits: add av_unused tag to cache variable
  sws: replace all long with int.
  ARM: aacdec: fix constraints on inline asm
  ARM: remove unnecessary volatile from inline asm
  ARM: add "cc" clobbers to inline asm where needed
  ARM: improve FASTDIV asm
  ac3enc: use LOCAL_ALIGNED macro
  APIchanges: fill in git hash for av_get_pix_fmt_name (0420bd7).
  lavu: add av_get_pix_fmt_name() convenience function
  cmdutils: remove OPT_FUNC2
  swscale: fix crash in bilinear scaling.
  vpxenc: add VP8E_SET_STATIC_THRESHOLD mapping
  webm: support stereo videos in matroska/webm muxer
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	doc/muxers.texi
	ffmpeg.c
	ffplay.c
	libavcodec/ac3enc.c
	libavcodec/ac3enc_float.c
	libavcodec/avcodec.h
	libavcodec/get_bits.h
	libavcodec/libvpxenc.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavformat/matroskaenc.c
	libavutil/avutil.h
	libswscale/rgb2rgb.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-29 03:34:35 +02:00
Michael Niedermayer
39d607e5bb swscale: Commits that could not be pulled earlier due to bugs #2
commit 5a5a0f1613
Author: Diego Biurrun <diego@biurrun.de>
Date:   Fri May 27 19:46:39 2011 +0200

    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’

commit 389e2000eb
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Fri May 27 12:23:32 2011 -0400

    swscale: delay allocation of formatConvBuffer().

    That means it won't be allocated when not needed. Alongside
    this, it fixes valgrind/fate-detected memory leaks.

commit f327bfa6dc
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Fri May 27 11:36:43 2011 -0400

    swscale: fix build with --disable-swscale-alpha.

commit 9f5d45025e
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Fri May 27 09:28:38 2011 -0400

    swscale: fix non-bitexact yuv2yuv[X2]() MMX/MMX2 functions.
2011-05-29 02:14:45 +02:00
Michael Niedermayer
986f0d86cb Commits that could not be pulled earlier due to bugs.
commit 93681fbd50
    Author: Ronald S. Bultje <rsbultje@gmail.com>
    Date:   Thu May 26 11:32:32 2011 -0400

        swscale: fix compile on ppc.

    commit e758573a88
    Author: Ronald S. Bultje <rsbultje@gmail.com>
    Date:   Thu May 26 10:36:47 2011 -0400

        swscale: fix compile on x86-32.

    commit 0f4eb8b043
    Author: Ronald S. Bultje <rsbultje@gmail.com>
    Date:   Thu May 26 09:17:52 2011 -0400

        swscale: remove VOF/VOFW.

    commit b4a224c5e4
    Author: Ronald S. Bultje <rsbultje@gmail.com>
    Date:   Wed May 25 14:30:09 2011 -0400

        swscale: split chroma buffers into separate U/V planes.

        Preparatory step to implement support for sizes > VOFW.
2011-05-29 02:13:36 +02:00
Ronald S. Bultje
9222dddb44 swscale: use av_clip_uint8() in yuv2yuv1_c(). 2011-05-28 21:43:33 +02:00
Ronald S. Bultje
485d73ef21 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-28 21:43:33 +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
Ronald S. Bultje
78046dadc3 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-28 11:41:32 +02:00
Ronald S. Bultje
fc72ec727e swscale: reindent h[cy]scale_fast() and updateDitherTables(). 2011-05-28 11:41:25 +02:00
Ronald S. Bultje
c3f07903ec 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-28 11:40:59 +02:00
Ronald S. Bultje
1dbf40c383 swscale: remove duplicate mmx/mmx2 functions if they are identical. 2011-05-28 11:34:59 +02:00
Ronald S. Bultje
264dcc63af 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-28 11:32:29 +02:00
Ronald S. Bultje
f2a3b23051 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-28 11:11:58 +02:00
Ronald S. Bultje
835ab9207e swscale: remove if(accurate_rnd) branch from functions. 2011-05-28 11:11:50 +02:00
Anton Khirnov
2b04858a10 swscale: revive SWS_CPU_CAPS until next major bump. 2011-05-28 11:11:29 +02:00
Diego Biurrun
11f2eae2ae swscale: Remove commented-out printf cruft. 2011-05-28 11:09:30 +02: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
Michael Niedermayer
041dbd3c14 swscale: dont loose precission on RGB/BGR48 input, that is dont drop half the bits.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 13:21:17 +02:00
Michael Niedermayer
2b6bfff2b2 swscale: Do not loose precission on yuv values after rgb->yuv.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-26 22:00:40 +02: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
Michael Niedermayer
39e4206dc6 Merge remote-tracking branch 'qatar/master'
* qatar/master: (32 commits)
  doc: create separate section for audio encoders
  swscale: Remove orphaned, commented-out function declaration.
  swscale: Eliminate rgb24toyv12_c() duplication.
  Remove h263_msmpeg4 from MpegEncContext.
  APIchanges: Fill in git hash for fps_probe_size (30315a8)
  avformat: Add fpsprobesize as an AVOption.
  avoptions: Return explicitly NAN or {0,0} if the option isn't found
  rtmp: Reindent
  rtmp: Don't try to do av_malloc(0)
  tty: replace AVFormatParameters.sample_rate abuse with a private option.
  Fix end time of last chapter in compute_chapters_end
  ffmpeg: get rid of useless AVInputStream.nb_streams.
  ffmpeg: simplify managing input files and streams
  ffmpeg: purge redundant AVInputStream.index.
  lavf: deprecate AVFormatParameters.channel.
  libdc1394: add a private option for channel.
  dv1394: add a private option for channel.
  v4l2: reindent.
  v4l2: add a private option for channel.
  lavf: deprecate AVFormatParameters.standard.
  ...

Conflicts:
	doc/APIchanges
	doc/encoders.texi
	ffmpeg.c
	libavdevice/alsa-audio.h
	libavformat/version.h
	libavutil/opt.c
	libswscale/rgb2rgb.h
	libswscale/rgb2rgb_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-26 03:28:22 +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
Michael Niedermayer
b49728df73 swscale: document SWS_CPU_CAPS*
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 21:04:44 +02:00
Michael Niedermayer
e92bdadb2d Revert removial of SWS flags from e66149e714
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 21:03:26 +02:00
Michael Niedermayer
4a056160be swscale: remove duplicatiopn of rgb24toyv12_c()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 20:58:59 +02:00
Jean-Tiare Le Bigot
364889cf9c Return -1 on invalid input instead of crashing. 2011-05-25 20:12:17 +02:00
Michael Niedermayer
034fc7bf12 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  configure: enable memalign_hack automatically when needed
  swscale: unbreak the build on non-x86 systems.
  swscale: remove if(bitexact) branch from functions.
  swscale: remove if(canMMX2BeUsed) conditional.
  swscale: remove swScale_{c,MMX,MMX2} duplication.
  swscale: use emms_c().
  Move emms_c() from libavcodec to libavutil.
  tiff: set palette in the context when specified in TIFF_PAL tag
  rtsp: use strtoul to parse rtptime and seq values.
  pgssubdec: fix incorrect colors.
  dvdsubdec: fix incorrect colors.
  ape: Allow demuxing of files with metadata tags.
  swscale: remove dead macro WRITEBGR24OLD.
  swscale: remove AMD3DNOW "optimizations".
  swscale: remove duplicate code in ppc/ subdirectory.
  swscale: remove duplicated x86/ functions.
  swscale: force --enable-runtime-cpudetect and remove SWS_CPU_CAPS_*.
  vsrc_buffer.h: add file doxy
  vsrc_buffer: tweak error message in init()
  msmpeg4: reindent.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 06:32:45 +02:00
Michael Niedermayer
d1adad3cca Merge swscale bloatup
This will be cleaned up in the next merge

Authorship / merged commits:
commit f668afd489
Author: Janne Grunau <janne-libav@jannau.net>
Date:   Fri Apr 15 09:12:34 2011 +0200

    swscale: fix "ISO C90 forbids mixed declarations and code" warning

    only hit with --enable-runtime-cpudetect

commit 7f2ae5c7af
Author: Janne Grunau <janne-libav@jannau.net>
Date:   Fri Apr 15 02:09:44 2011 +0200

    swscale: fix compilation with --enable-runtime-cpudetect

commit b6cad3df82
Author: Janne Grunau <janne-libav@jannau.net>
Date:   Fri Apr 15 00:31:04 2011 +0200

    swscale: correct include path to fix ppc altivec build

commit 6216fc70b7
Author: Luca Barbato <lu_zero@gentoo.org>
Date:   Thu Apr 14 22:03:45 2011 +0200

    swscale: simplify rgb2rgb templating

    MMX is always built. Drop the ifdefs

commit 33a0421bba
Author: Josh Allmann <joshua.allmann@gmail.com>
Date:   Wed Apr 13 20:57:32 2011 +0200

    swscale: simplify initialization code

    Simplify the fallthrough case when no accelerated functions
    can be initialized.

commit 735bf19511
Author: Josh Allmann <joshua.allmann@gmail.com>
Date:   Wed Apr 13 20:57:31 2011 +0200

    swscale: further cleanup swscale.c

    Move x86-specific constants out of swscale.c

commit 86330b4c92
Author: Luca Barbato <lu_zero@gentoo.org>
Date:   Wed Apr 13 20:57:30 2011 +0200

    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.

commit c003832883
Author: Luca Barbato <lu_zero@gentoo.org>
Date:   Wed Apr 13 20:57:29 2011 +0200

    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.

Conflicts:
	libswscale/rgb2rgb.c
	libswscale/swscale_template.c
2011-05-25 06:24:55 +02:00
Michael Niedermayer
d9d56036f3 swscale: MMX optim of hscale16()
code is based on existing 8bit MMX code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 04:08:34 +02:00
Michael Niedermayer
895b616146 swscale: dont loose bits on planar >8bit yuv ind gray nput.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 04:08:34 +02:00
Michael Niedermayer
8050dfdfb2 swscale: Switch to ronalds yuv2yuvX16inC_template() its very similar to baptsites
and supports alpha

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-25 04:08:08 +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
Michael Niedermayer
26ed595bd0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Add -U__STRICT_ANSI__ to CPPFLAGS on Cygwin and DOS.
  aacdec: fix typo in scalefactor clipping check
  fate: fix fate-h264-conformance-frext-pph10i4-panasonic-a crcs.
  fate: update 9/10bit refs.
  h264: Properly set coded_{width, height} when parsing H.264.
  x86 asm: Add SECTION_TEXT to dct32_sse.asm.
  Fix 9/10 bit in swscale.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-24 04:35:08 +02: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
Michael Niedermayer
bf8bb94322 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: get rid of the -vglobal option.
  dct32: Add AVX implementation of 32-point DCT
  dct32: Change pass 6 permutation to allow for AVX implementation
  dct32: port SSE 32-point DCT to YASM
  multiple inclusion guard cleanup
  avio: document buffer must created with av_malloc() and friends
  avio: check AVIOContext malloc failure
  swscale: point out an alternative to sws_getContext
  svq3: Do initialization after parsing the extradata
  add changelog entries for 0.7_beta2
  mp3lame: add #include required for AV_RB32 macro.

Conflicts:
	Changelog
	libavcodec/svq3.c
	libavcodec/x86/dct32_sse.c
	libavfilter/vsrc_buffer.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-22 04:53:19 +02: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
Peter Belkner
502e858fd2 swscale: fix compile on mingw32
Compiling "swscale.c" breaks on MINGW32 because of multiple including
"libswscale_template.c"
2011-05-14 13:22:46 +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
b025431bfe swscale: 10l forgot git add this change from ronald.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-14 02:50:10 +02:00
Michael Niedermayer
58c03f6d7d Merge remote branch 'qatar/master'
* qatar/master:
  swscale: properly inline bits/endianness in yuv2yuvX16inC().
(We didnt pull the bug)  swscale: fix clipping of 9/10bit YUV420P.
  Add av_clip_uintp2() function
(our patch / duplicate)  dfa: fix buffer overflow checks to avoid integer overflows.
(our patch / duplicate)  movenc: always write esds descriptor length using 4 bytes.
(our patch / duplicate)  ffmpeg: use parse_number_and_die() when it makes sense
(No thanks)  ffmpeg: get rid of the 'q' key schizofrenia

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-14 02:19:58 +02: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
Michael Niedermayer
72153419b5 Merge remote branch 'qatar/master'
* qatar/master: (33 commits)
  rtpdec_qdm2: Don't try to parse data packet if no configuration is received
  ac3enc: put the counting of stereo rematrixing bits in the same place to make the code easier to understand.
  ac3enc: clean up count_frame_bits() and count_frame_bits_fixed()
  mpegvideo: make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame.
  srtdec: make sure we don't write past the end of buffer
  wmaenc: improve channel count and bitrate error handling in encode_init()
  matroskaenc: make sure we don't produce invalid file with no codec ID
  matroskadec: check that pointers were initialized before accessing them
  lavf: fix function name in compute_pkt_fields2 av_dlog message
  lavf: fix av_find_best_stream when providing a wanted stream.
  lavf: fix av_find_best_stream when decoder_ret is given and using a related stream.
  ffmpeg: factorize quality calculation
  tiff: add support for SamplesPerPixel tag in tiff_decode_tag()
  tiff: Prefer enum TiffCompr over int for TiffContext.compr.
  mov: Support edit list atom version 1.
  configure: Enable libpostproc automatically if GPL code is enabled.
  Cosmetics: fix prototypes in oggdec
  oggdec: fix memleak with continuous streams.
  matroskaenc: add missing new line in av_log() call
  dnxhdenc: add AVClass in private context.
  ...

swscale changes largely rewritten by me or replaced by baptsites due to lots of bugs in ronalds code.
Above code is also just in case its not obvios to a large extended duplicates that where cherry picked
from ffmpeg.

Conflicts:
	configure
	ffmpeg.c
	libavformat/matroskaenc.c
	libavutil/pixfmt.h
	libswscale/ppc/swscale_template.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	tests/fate/h264.mak
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_copy_le
	tests/ref/lavfi/pixfmts_null_le
	tests/ref/lavfi/pixfmts_scale_le
	tests/ref/lavfi/pixfmts_vflip_le

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-13 04:40:40 +02: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
Michael Niedermayer
1cafc23288 sws-PPC: fix after VOFW change.
It seems sws-PPC did hardcode 2048 at various places instead of using VOFW.
This also means that all past VOFW benchmarks on PPC are meaningless
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-12 02:49:18 +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
ami_stuff
1d14edb724 Use VOFW 21503 as a default value for all types of the CPUs 2011-05-12 00:18:35 +02:00
Michael Niedermayer
e3497907ef swscale: remove fork bug that i missed in the merge.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 06:26:47 +02:00
Michael Niedermayer
59eb12faff Merge remote branch 'qatar/master'
* qatar/master: (30 commits)
  AVOptions: make default_val a union, as proposed in AVOption2.
  arm/h264pred: add missing argument type.
  h264dsp_mmx: place bracket outside #if/#endif block.
  lavf/utils: fix ff_interleave_compare_dts corner case.
  fate: add 10-bit H264 tests.
  h264: do not print "too many references" warning for intra-only.
  Enable decoding of high bit depth h264.
  Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 decoder.
  Add support for higher QP values in h264.
  Add the notion of pixel size in h264 related functions.
  Make the h264 loop filter bit depth aware.
  Template dsputil_template.c with respect to pixel size, etc.
  Template h264idct_template.c with respect to pixel size, etc.
  Preparatory patch for high bit depth h264 decoding support.
  Move some functions in dsputil.c into a new file dsputil_template.c.
  Move the functions in h264idct into a new file h264idct_template.c.
  Move the functions in h264pred.c into a new file h264pred_template.c.
  Preparatory patch for high bit depth h264 decoding support.
  Add pixel formats for 9- and 10-bit yuv420p.
  Choose h264 chroma dc dequant function dynamically.
  ...

Conflicts:
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavcodec/alpha/dsputil_alpha.c
	libavcodec/arm/dsputil_init_arm.c
	libavcodec/arm/dsputil_init_armv6.c
	libavcodec/arm/dsputil_init_neon.c
	libavcodec/arm/dsputil_iwmmxt.c
	libavcodec/arm/h264pred_init_arm.c
	libavcodec/bfin/dsputil_bfin.c
	libavcodec/dsputil.c
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_loopfilter.c
	libavcodec/h264_ps.c
	libavcodec/h264_refs.c
	libavcodec/h264dsp.c
	libavcodec/h264idct.c
	libavcodec/h264pred.c
	libavcodec/mlib/dsputil_mlib.c
	libavcodec/options.c
	libavcodec/ppc/dsputil_altivec.c
	libavcodec/ppc/dsputil_ppc.c
	libavcodec/ppc/h264_altivec.c
	libavcodec/ps2/dsputil_mmi.c
	libavcodec/sh4/dsputil_align.c
	libavcodec/sh4/dsputil_sh4.c
	libavcodec/sparc/dsputil_vis.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/dsputil_mmx.c
	libavformat/options.c
	libavformat/utils.c
	libavutil/pixfmt.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/swscale_template.c
	tests/ref/seek/lavf_avi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-11 05:47:02 +02: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
Michael Niedermayer
7bea13f111 swscale: Fix scaling for unscaled dithered planar convertions.
This fixes some overflow in bright areas and ensures that the maximum brightness level is
mapped to the maximum without cliping and without showing dither patterens in flat max
brightness areas.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 14:43:34 +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
Michael Niedermayer
53789a27f8 swscale: use Nbit code to handle !is16BPS(c->srcFormat) && is16BPS(c->dstFormat)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 00:37:20 +02:00
Michael Niedermayer
42c9bd313f swscale: Support dither in is16BPS(c->srcFormat) && !is16BPS(c->dstFormat)
This is done by just letting the Nbit code handle it, which now can do it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 00:21:18 +02:00
Michael Niedermayer
c4f7050bb1 swscale: support unscaled planar Nbit->8bit with non native endian source.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 00:18:27 +02:00
Michael Niedermayer
09ff3cc77b swscale: fix unscaled yuv422p16be -> yuv422p10le
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 00:15:03 +02:00
Michael Niedermayer
eb8aa13b54 swscale: make DITHER_COPY() support non native endian source
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-10 00:09:10 +02:00
Michael Niedermayer
9c49ca0f19 swscale: factor shift out of DITHER_COPY().
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 22:02:44 +02:00
Michael Niedermayer
300e497b5f swscale: factorize DITHER_COPY()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 21:38:46 +02:00
Michael Niedermayer
3dd779eb0a swscale: implement Nbit->non native endian 16bit. Fixes v210.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-09 00:22:12 +02:00
Baptiste Coudurier
b9e608492a swscale: 9,10 bits pixel format output support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-08 14:27:13 +02:00
Reimar Döffinger
b06397acd4 Fix function pointer type to match function it is assigned. 2011-05-07 20:14:48 +02:00
Reimar Döffinger
80264dc422 Store pointers in a less messy way in SWSContext. 2011-05-07 20:14:48 +02:00
Michael Niedermayer
95f163b33b swscale: Dither for unscaled 10->8bit per channel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 15:19:27 +02:00
Michael Niedermayer
7915e038c6 swscale: dont reshuffle bytes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-06 13:18:55 +02:00
Michael Niedermayer
9a5624a0f1 rgb24toyv12: break out in the middle before out of array reads.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-05 02:20:20 +02:00
Michael Niedermayer
3e173a14e9 swscale: fix src type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-04 23:33:59 +02:00
Michael Niedermayer
ffb5a0d533 Merge commit '85770f2a2651497861ed938efcd0df3696ff5e45'
* commit '85770f2a2651497861ed938efcd0df3696ff5e45':
  AVOptions: make default_val a union, as proposed in AVOption2.
  Move ff_dynarray_add to lavu and make it public.
  lavf: remove duplicate assignment in avformat_alloc_context.
  lavf: use designated initializers for AVClasses.
  options: simplify av_find_opt by using av_next_option.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 00:26:05 +02:00
Anton Khirnov
85770f2a26 AVOptions: make default_val a union, as proposed in AVOption2.
This breaks API and ABI.
2011-04-30 08:34:16 +02:00
Michael Niedermayer
455ce979d0 Merge remote branch 'qatar/master'
* qatar/master:
LOTS of duplicates ...
  avio: Fix the deprecated fallback URL-prefixed open flags
  avoid duplicate -lm in .pc files
  mpeg12: terminate mpeg2_video_profiles arrays
  network: Check POLLERR and POLLHUP in ff_network_wait_fd
  mpegtsenc: make PMT PID really start on pmt_start_pid
  nut format: support PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
  rawvideo codec: support PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
  hflip: make the filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
  crop: make the filter accept PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
  libswcale: PIX_FMT_BGR48LE and PIX_FMT_BGR48BE scaler implementation

Conflicts:
	configure
	libswscale/swscale.h
	tests/ref/lavf/ts

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-29 04:29:21 +02: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
Baptiste Coudurier
624a7e005c Correctly support pal8 with alpha in libswscale, fix png pal8 with alpha.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-27 21:52:09 +02:00
Baptiste Coudurier
dbfdb288c1 Set alpha of palettes to 0xff.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-27 21:49:45 +02:00
Baptiste Coudurier
e91946ed23 Rename y400a to gray8a.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-27 21:36:30 +02:00
tateu
93c28a55fd Fix runtime CPU detection in libswscale. 2011-04-27 01:52:36 +02:00
Stefano Sabatini
bd2a3700c0 lsws: prevent overflow in sws_init_context()
In the loop:
    for (i=0; i<dstH; i++) {
        int chrI= i*c->chrDstH / dstH;

when i*c->chrDstH > INT_MAX this leads to an integer overflow, which
results in a negative value for chrI and in out-of-buffer reads. The
overflow is avoided by forcing int64_t arithmetic by casting i to
int64_t.

Fix crash, and trac issue #72.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-25 22:45:19 +02:00
Manfred Tremmel
03a91c7453 Patch from Packman (OpenSuse - packages) to silence rpmlint.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-25 19:53:47 +02:00
unknown author
2671ab3996 Check mmap() return against correct value
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-25 01:54:29 +02:00
Michael Niedermayer
efb5fa79f5 Merge remote branch 'qatar/master'
* qatar/master: (37 commits)
  In avcodec_open(), set return code to an error value only when an error occurs instead of unconditionally at the start of the function.
  lavc: remove reference to opt.h from Makefile.
  prefer avio_check() over url_exist()
  avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols
  lavu: remove misc disabled cruft
  lavu: remove FF_API_OLD_IMAGE_NAMES cruft
NOT PULLED  lavu: remove FF_API_OLD_EVAL_NAMES cruft
  lavc: remove misc disabled cruft.
  lavc: remove the FF_API_INOFFICIAL cruft.
  lavc: remove the FF_API_SET_STRING_OLD cruft.
  lavc: remove the FF_API_USE_LPC cruft.
  lavc: remove the FF_API_SUBTITLE_OLD cruft.
  lavc: remove the FF_API_VIDEO_OLD cruft.
  lavc: remove the FF_API_AUDIO_OLD cruft.
  lavc: remove the FF_API_OPT_SHOW cruft.
  lavc: remove the FF_API_MM_FLAGS cruft.
  lavf: remove misc disabled cruft.
  lavf: remove FF_API_INDEX_BUILT cruft
  lavf: remove FF_API_URL_CLASS cruft.
  lavf: remove FF_API_SYMVER cruft
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-20 04:48:23 +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
Michael Niedermayer
c55780dcef Merge remote branch 'qatar/master'
* qatar/master: (32 commits)
  libopencore-amr, libvo-amrwbenc: Allow enabling DTX via private AVOptions
  libopencore-amr, libvo-amrwbenc: Only check the bitrate when changed
  libopencore-amr, libvo-amrwbenc: Find the closest matching bitrate
  libvo-*: Fix up the long codec names
  libavcodec: Mark AVCodec->priv_class const
  swscale: Factorize FAST_BGR2YV12 definition.
  libvo-aacenc: Only produce extradata if the global header flag is set
  lavf: postpone removal of public metadata conversion API
  lavc: postpone removal of request_channels
  lavc: postpone removal of audioconvert and sample_fmt wrappers
  lavf: postpone removal of deprecated avio functions
  libopencore-amr: Cosmetics: Rewrap and align
  libopencore-amr, libvo-amrbwenc: Rename variables and functions
  libopencore-amr: Convert commented out debug logging into av_dlog
  libopencore-amr: Remove an unused state variable
  libvo-amrwbenc: Don't explicitly store bitrate modes in the bitrate table
  libopencore-amr: Remove a useless local variable
  libopencore-amr, libvo-amrwbenc: Make the bitrate/mode mapping array static const
  libopencore-amr, libvo-amrwbenc: Return proper error codes in most places
  libopencore-amr: Don't print carriage returns in log messages
  ...

Conflicts:
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/libvo-aacenc.c
	libavcodec/libvo-amrwbenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-14 03:21:38 +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
Oskar Arvidsson
d4497f6dfb 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: Michael Niedermayer <michaelni@gmx.at>
2011-04-10 22:33:41 +02:00
Michael Niedermayer
c0e51ec9c6 Merge remote branch 'qatar/master'
* qatar/master:
  Fix parser: mark av_parser_parse() for removal on next major bump
  swscale: postpone sws_getContext removal until next major bump.
  fate: add AAC LATM test
  mmst: get rid of deprecated AVERRORs
  lxfdec: use AVERROR(ENOMEM) instead of deprecated AVERROR_NOMEM.
  Reemove remaining uses of deprecated AVERROR_NOTSUPP.
REIMPLEMENTED in 2 lines of code:  lavf: if id3v2 tag is present and all else fails, guess by file extension

Conflicts:
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-07 03:32:26 +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
Darren Horrocks
30c6fefd01 fix runtime-cpu-detect bug in swscale
swscale doesnt ever actually do any runtime detection at all when
runtime cpu detection is enabled, it simply passes whatever is passed
to -sws_flags, which could be nothing at all making swscale default to
the C implementation.
2011-04-05 02:36:57 +02:00
Michael Niedermayer
116758a358 Fix yuvj420p scaling artefact, issue1108.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-03 16:40:11 +02:00
Michael Niedermayer
ffd39f9d23 Fix typo from e3a84542.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-30 20:28:03 +02:00
Frank Barchard
e3a8454205 SWSCALE: Increase maximim with from 5120 to 21504
Heres a benchmark

VOFW 5120  VOFW 21504    Note
10438.8    10344.2       timex ffmpeg -y -i tulip2.mp4 tulip2.yuv
25611.9    24256.9       timex ffmpeg -y -itulip2.mp4 -s 1272x724 tulip2.yuv
24485.7    26006.6
28573.1    24291.3
24069.1    26995.9
25684.95   25387.675     average

This is on a Nehalem i7.  Despite being a 500 frame, 720p video, the numbers
fluctuate, so I took an average of 4 runs.

Another reason I'd like this change is youtube accepts videos with higher
resolutions than 5120.
16384 is vp8's maximum resolution, so that should keep us amused for a
little longer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-30 16:33:25 +02:00
Michael Niedermayer
95c8bb03ed Fix compilation failure with runtime cpudetect (Ticket #22) 2011-03-28 16:46:45 +02:00
Peter Ross
3e2523db20 libswcale: PIX_FMT_BGR48LE and PIX_FMT_BGR48BE scaler implementation 2011-03-26 13:24:32 +11: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
Michael Niedermayer
e528cdac8a Revert "replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION"
This reverts commit 29ba091136.
2011-03-17 17:26:45 +01:00
Michael Niedermayer
0cb88628fb Revert "use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_*"
This reverts commit a03be6e1ba.
2011-03-17 17:26:45 +01: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
Diego Biurrun
531f97b0c3 Remove GPL-licensed YUV to RGB MMX routines.
We now have an LGPL replacement that is at least equally fast.

Originally committed as revision 31278 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-30 08:31:23 +00:00
Stefano Sabatini
d458b7d445 Add empty newline to separate function declarations, for better
readability.

Originally committed as revision 31192 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-23 10:02:30 +00:00
Stefano Sabatini
b8dbff33bf Cosmetics: make more compact the code for handle_jpeg(), this also allows
vertical alignment. Improve readability.

Originally committed as revision 31186 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-19 22:56:41 +00:00
Stefano Sabatini
4e74187db2 Remove PI definition and use M_PI instead.
M_PI is defined by the included file libavutil/mathematics.h.

Originally committed as revision 31185 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-19 22:49:04 +00:00
Loren Merritt
8a26b2c665 13% faster yuv420 to rgb15 mmx.
It is now faster than the old gpl version on conroe.

Originally committed as revision 31181 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-19 13:31:11 +00:00
Loren Merritt
bffc36e084 40% faster yuv420 to rgb24 mmx.
It is now faster than the old gpl version on conroe.

Originally committed as revision 31180 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-19 08:21:56 +00:00
Ramiro Polla
c3ab0004ae Revert r31153. It failed to build on:
x86_64 / Mac OS X gcc 4.0.1
x86_64 / Linux icc (all)
x86_64 / Linux gcc 4.0.4
x86_64 / OpenBSD gcc 3.3.5
x86_64 / Linux suncc 5.10
and there are some reports of crashes.

Originally committed as revision 31170 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-12 20:47:32 +00:00
Ramiro Polla
d9d14dc607 Use int instead of long to pass width parameters in non-public functions.
long was being incorrectly used as an x86-sized register, both for 32 and 64
bits, but this is not the case in win64.

Originally committed as revision 31153 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-11 00:36:34 +00:00
Ronaldo Moura
447a5b1996 blackfin: fix yuv422 to yuv420 conversion
The old code is correct only when stride = 2*width.

Patch by Ronaldo Moura <ronaldo d moura monity com br>

Originally committed as revision 31142 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-07 21:59:18 +00:00
Diego Biurrun
f4ea7c8911 alternative LGPL-licensed, MMX-optimized YUV to RGB conversion routines
written by Kostya Shishkov

Originally committed as revision 31135 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-05-04 09:11:01 +00:00
Diego Biurrun
353285d740 Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 31050 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-04-20 14:47:31 +00:00
Reimar Döffinger
5b03661fa7 Replace some "m" constraints by MANGLE to avoid issues with some compilers not
being able to compile it and deduplicate the code at the same time.

Originally committed as revision 30978 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-31 17:00:33 +00:00
Diego Biurrun
819ee683d8 libswscale: Relicense almost all x86 assembler optimizations as LGPL.
This is of course done with permissions from the authors. The only GPL
component left are MMX optimizations for YUV to RGB conversion.

Originally committed as revision 30965 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-27 11:31:02 +00:00
Diego Biurrun
f25b1c4b6b HAVE_MMX2 implies HAVE_MMX, so checking the latter is enough.
Originally committed as revision 30961 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-26 07:57:54 +00:00
Diego Biurrun
f684f3c58a AltiVec implies a PPC CPU, so there is no need to check for both.
Originally committed as revision 30954 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-23 22:59:14 +00:00
Diego Biurrun
13bc1ac31a Do not compile AltiVec code when AltiVec is not available; not even in
runtime cpudetection mode.
Fixes compilation with '--enable-runtime-cpudetect --disable-altivec'.

Originally committed as revision 30952 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-23 20:12:52 +00:00
Diego Biurrun
f5af8f1625 Replace wrong condition name in #endif comment by correct instance.
Originally committed as revision 30938 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-19 09:58:45 +00:00
Diego Biurrun
81bbd840fe Check whether COMPILE_ALTIVEC is defined, not if it is set to a 0/1 value.
COMPILE_ALTIVEC is never set to 1, it is just #defined.

Originally committed as revision 30937 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-19 09:57:36 +00:00
Janusz Krzysztofik
22e8222fd2 Extend the generic path of the yuv2rgb converter with support for rgb444
output format.

Patch by Janusz Krzysztofik, jkrzyszt A tis D icnet D pl

Originally committed as revision 30934 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-18 23:02:32 +00:00
Reinhard Tartler
07cea6d1cd Fix compilation on powerpc with --disable-altivec
in case altivec is disabled, even compilation of code using altivec
keywords or asm must be avoided.

Originally committed as revision 30869 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-09 08:07:34 +00:00
Reimar Döffinger
97cda76a69 Check for allocation failure for c->lumMmx2FilterCode and c->chrMmx2FilterCode.
Originally committed as revision 30864 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-08 19:41:57 +00:00
Reimar Döffinger
12423f170f Fix memleak due to incorrect VirtualFree arguments: size must be 0 for MEM_RELEASE.
Originally committed as revision 30863 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-08 19:37:10 +00:00
Stefano Sabatini
3de42635bd Avoid duplication of usePal() macro.
Originally committed as revision 30856 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-06 11:50:54 +00:00
Janusz Krzysztofik
a4e441301d Add support to BGR444/RGB444 foreign endian output in libswscale.
Patch by Janusz Krzysztofik |jkrzyszt ^ tis icnet pl|.

Originally committed as revision 30855 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-06 11:27:31 +00:00
Michael Niedermayer
e5a1c20707 try to avoid returning odd slices.
Originally committed as revision 30847 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-05 21:39:27 +00:00
Benoit Fouet
124cb45137 Cosmetics: fix vertical alignment.
Originally committed as revision 30842 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-05 08:41:35 +00:00
Janusz Krzysztofik
601949b898 libswscale: Extend the unaccelerated path of the unscaled yuv2rgb special
converter with support for rgb444 output format.
Patch by Janusz Krzysztofik jkrzyszt chez tis icnet pl

Originally committed as revision 30841 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-05 08:32:54 +00:00
Alexis Ballier
1379b58482 Support BGR555, BGR565, RGB555 and RGB565 foreign endian output in
libswscale.

Patch by Alexis Ballier, alexis D ballier A gmail

Originally committed as revision 30840 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-04 16:57:04 +00:00
Stefano Sabatini
91cfeac668 Revert r30825, it was not supposed to be committed.
127.32L to me, beware when using git svn dcommit for committing stuff
to svn...

Originally committed as revision 30827 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-04 01:02:24 +00:00
Stefano Sabatini
23bf3b2c97 Fill the r, g, b values used for computing the c->pal_yuv table in the
case where the source format is PIX_FMT_GRAY8.

This is required as PIX_FMT_GRAY8 has been declared as a paletted
format in FFmpeg r22191, fix GRAY8 -> RGB conversion.

Originally committed as revision 30826 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-04 00:31:13 +00:00
Stefano Sabatini
3fec44c640 Make swscale-test take in input the name of the input and the output
format.

Make swscale-test only perform the test from the input to the output
format rather than perform all.

Also implement swscale-test-all.sh, for performing all the tests.

Improve flexibility of the swscale-test tool, this way is simpler to
perform only a subset of tests.

Originally committed as revision 30825 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-03-04 00:31:10 +00:00
Carl Eugen Hoyos
627686e635 Make sws_dcVec static: It is only used inside libswscale/utils.c.
Originally committed as revision 30787 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-28 02:18:16 +00:00
Stefano Sabatini
479e1e6170 Remove pointless empty line.
Originally committed as revision 30730 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-25 21:21:29 +00:00
Stefano Sabatini
8ebed38e7a Apply consistency nit.
Originally committed as revision 30729 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-25 21:12:38 +00:00
Ramiro Polla
f1d5a1f285 Reorder buffer debug. Also print out if slice was buffered.
Originally committed as revision 30722 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-23 16:46:43 +00:00
Stefano Sabatini
b623d0cb03 Reindent and fix brace placement.
Originally committed as revision 30643 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-18 21:20:37 +00:00
Stefano Sabatini
22b6a24c34 Vertically align a list of comparisons in sws_getCachedContext().
Originally committed as revision 30642 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-18 21:17:07 +00:00
Stefano Sabatini
5a011d8b08 Merge two if conditions, allow to decrese the level of indentation of
the block.

Originally committed as revision 30641 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-18 21:12:05 +00:00
Stefano Sabatini
62bb4ca199 Simplify how usesVFilter and usesHFilter are set.
Originally committed as revision 30520 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-05 23:53:25 +00:00
Stefano Sabatini
fbc0f6a973 Apply misc fixes to sws_getCoefficients() doxy.
Originally committed as revision 30519 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-05 22:56:59 +00:00
Stefano Sabatini
89ee5c6897 Satisfy consistency need:
int * sws_getCoefficients  -> int *sws_getCoefficients.

Originally committed as revision 30518 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-05 22:54:45 +00:00
David Conrad
3f3dc76cb1 Add function to translate SWS_CS_* to coefficient array
Originally committed as revision 30513 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-05 16:09:03 +00:00
Stefano Sabatini
82e5f86bd5 Implement shuffle_bytes_abcd() functions and use them for shuffling
bytes when converting between RGB32 variants.

In particular fix the argb -> rgba and abgr -> bgra conversions.

See the thread:
Subject: [FFmpeg-devel] [RFC] RGB32 / BGR32 ethernal bug
Date: Tue, 26 Jan 2010 01:06:18 +0100

Originally committed as revision 30501 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-02-03 23:46:00 +00:00
Stefano Sabatini
af0e662169 Declare support for the pixel formats:
PIX_FMT_YUVJ420P
PIX_FMT_YUVJ422P
PIX_FMT_YUVJ440P
PIX_FMT_YUVJ444P

in the isSupported{In,Out} macros.

These pixel formats are not true pixel formats but hacks specific to
JPEG in libavcodec. They are deprecated and should be removed (that is
from libavcodec first and libswscale second)...  but they must be
tested by swscale-test.

See thread:
Subject: [FFmpeg-devel] [PATCH] Extend show_pix_fmts() to make it print the input/output support
Date: 2010-01-30 15:54:08 GMT

Originally committed as revision 30474 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-31 10:16:05 +00:00
Måns Rullgård
e62bd367ea Blackfin: use SRAM only when CONFIG_SRAM is set
Originally committed as revision 30472 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-31 00:20:37 +00:00
Stefano Sabatini
909f659473 Reindent.
Originally committed as revision 30467 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-30 21:58:09 +00:00
Stefano Sabatini
3ece3e524f Use a consistent convention for the names of the internal wrapper
functions. Improve readability.
 -This line, and those below, will be ignored--

     swscale.c

Originally committed as revision 30466 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-30 21:56:33 +00:00
Stefano Sabatini
7dac0c4379 Fix randomness of the swscale-test output.
See the thread:
Subject: [FFmpeg-devel] [RFC] Make swscale-test perform only one convertion
Date: Fri, 29 Jan 2010 01:52:23 +0100

Originally committed as revision 30457 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-30 13:31:00 +00:00
Stefano Sabatini
b51de6d8c7 Rename swscale-example to swscale-test, to better reflect the intended
use of the program.

Originally committed as revision 30439 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-27 00:25:23 +00:00
Michael Niedermayer
6022255774 Use isAnyRGB() where possible
Originally committed as revision 30435 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-26 08:03:28 +00:00
Michael Niedermayer
81858371d9 Add 3 more RGB makros that allow specifying RGB in bytes and any rgb/bgr.
Originally committed as revision 30434 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-26 08:01:50 +00:00
Michael Niedermayer
3b1ee70312 Rename isRGB() and isBGR() as their meaning is confusing.
Originally committed as revision 30433 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-26 07:40:14 +00:00
Stefano Sabatini
7b87519b32 Merge two "if (flags & SWS_PRINT_INFO) { ... }" blocks, slightly
simplify code.

Originally committed as revision 30432 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-25 22:46:09 +00:00
Stefano Sabatini
aa2ead8215 Fix mis-computation of the needsDither variable erroneously introduced
in r30419, which was causing a swscale-example regression.

Also increase my liter count by 20.0 units.

Originally committed as revision 30431 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 21:28:17 +00:00
Stefano Sabatini
f632c4549b Merge two "if (flags & SWS_PRINT_INFO) { ... }" blocks.
Originally committed as revision 30425 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 17:44:43 +00:00
Stefano Sabatini
30b6147521 Use av_get_bits_per_pixel() for computing the bits per pixel of the
source and destination format, cache those values in the newly added
SwsContext:srcFormatBpp and SwsContext:dstFormatBpp fields, and remove
the fmt_depth() function.

Originally committed as revision 30419 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 12:55:05 +00:00
Ramiro Polla
59398ea9c0 Indent.
Originally committed as revision 30413 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 03:02:40 +00:00
Ramiro Polla
2658e7a6e7 Don't redefine M_PI. It is already defined from libavutil/mathematics.h.
Originally committed as revision 30412 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 02:16:26 +00:00
Ramiro Polla
a4388ebd37 Split swscale.c into scaler code (swscale.c) and utility code (utils.c).
Originally committed as revision 30411 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-24 02:08:22 +00:00
Måns Rullgård
4a88852623 Move array specifiers outside DECLARE_ALIGNED() invocations
Originally committed as revision 30385 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-22 03:26:30 +00:00
David Conrad
01cc47dcd3 More const-correctness for sws_scale
Originally committed as revision 30381 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-21 09:52:11 +00:00
Ramiro Polla
5d4d503fd0 Document some more of SwsContext.
Originally committed as revision 30380 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-20 03:26:12 +00:00
Stefano Sabatini
613f2dc4ae Avoid more pointless tests, the input and output formats need to be
supported both as input and as output, as the conversion performed is:
yuva420p -> src -> dst -> yuva420p.

Originally committed as revision 30379 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-20 00:22:31 +00:00
Stefano Sabatini
0e21dcdb13 Split overly long line.
Originally committed as revision 30378 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 22:36:46 +00:00
Stefano Sabatini
731c04ad65 Make selfTest() perform tests where both the input and output formats
are supported, avoid pointless loops.

Originally committed as revision 30377 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 21:52:00 +00:00
Alexis Ballier
f28cc5771f Make const prototypes for input sources of sws_scale_* stricter.
Patch by Alexis Ballier gmailify($firstname, $familyname)

Originally committed as revision 30374 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 16:30:20 +00:00
Ramiro Polla
9e5f164dc1 swscale-example: Add comment about the use of av_{malloc,free}.
Originally committed as revision 30373 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 15:42:51 +00:00
Ramiro Polla
3aca8b59f6 Remove useless forward declaration.
Originally committed as revision 30371 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 11:35:04 +00:00
Zuxy Meng
d5206d3dd6 User friendly warning message that gives out names of source and target formats
Originally committed as revision 30370 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 05:21:17 +00:00
Måns Rullgård
51d83986b1 swscale-example: use av_malloc()
Image buffers require 16-byte alignment, so av_malloc() should be used.
Fixes crash on PPC.

Originally committed as revision 30369 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-19 03:47:11 +00:00
Stefano Sabatini
2d8d885b06 Split long line.
Originally committed as revision 30368 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-18 23:34:07 +00:00
Stefano Sabatini
591e465acf Convert int -> enum PixelFormat in doTest().
Originally committed as revision 30367 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-18 23:33:17 +00:00
Zuxy Meng
3c52d4849f Define out currently unused static functions.
Originally committed as revision 30365 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-18 08:42:04 +00:00
Stefano Sabatini
c36a4294dc Remove stray '\' at the end of macro definitions.
Originally committed as revision 30362 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 23:29:31 +00:00
Stefano Sabatini
90eb284a77 Remove duplicated or pointless newlines.
Originally committed as revision 30361 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 23:17:47 +00:00
Stefano Sabatini
398c193d0b Factorize error message logging, log it if the converter cannot be
set.

Originally committed as revision 30360 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 23:07:37 +00:00
Stefano Sabatini
e36a545de5 Reindent after the last commit.
Originally committed as revision 30359 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 23:02:20 +00:00
Stefano Sabatini
c0d1dc1c4f Make the pal2rgbWrapper set and use the converter in pal2rgbWrapper
only if the input format is paletted.

Fix potential crashes/weirdness if the input format is non-paletted.

Originally committed as revision 30358 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 23:00:01 +00:00
Måns Rullgård
00c4127ec9 Remove double const
Originally committed as revision 30357 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 19:26:35 +00:00
Stefano Sabatini
9a180390b9 Factorize error message logging in rgb2rgbWrapper().
Originally committed as revision 30356 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 15:11:25 +00:00
Måns Rullgård
1b5d46c6a6 Reindent
Originally committed as revision 30350 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 14:25:19 +00:00
Måns Rullgård
d39d7cf693 Remove inline from initFilter()
It makes no sense having that function inlined.

Originally committed as revision 30349 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 14:25:17 +00:00
Stefano Sabatini
e922e34c96 Add a const qualifier in a cast, fix the gcc warning:
swscale.c: In function ‘sws_scale’:
swscale.c:2968: warning: cast discards qualifiers from pointer target type

Originally committed as revision 30341 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 00:26:29 +00:00
Stefano Sabatini
5090d8e16a Add a const qualifier in a cast, fix the gcc warning:
swscale.c: In function ‘planarCopy’:
swscale.c:2256: warning: cast discards qualifiers from pointer target type

Originally committed as revision 30340 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-17 00:21:50 +00:00
Stefano Sabatini
a630ed3ee9 Fix typo, "get rid off" -> "get rid of".
Originally committed as revision 30338 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 22:49:00 +00:00
Stefano Sabatini
730cb9dab3 Revert r30331, which broke compilation.
swScale_C is not templated if any optimization is to be used and
!runtime_cpudetect.

Originally committed as revision 30334 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:51:26 +00:00
Stefano Sabatini
73cadb4f13 Prefer enum PixelFormat to int as the parameter type of
fmt_depth(fmt).

Originally committed as revision 30333 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:32:58 +00:00
Stefano Sabatini
bc45751f7f Declare with av_unused the variable alpMmxFilter, fix the gcc warning:
swscale_template.c: In function ‘swScale_C’:
swscale_template.c:2580: warning: unused variable ‘alpMmxFilter’
swscale_template.c: In function ‘sws_init_swScale_C’:

Originally committed as revision 30332 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:22:30 +00:00
Stefano Sabatini
80853cfc6a Factorize the code which calls the non optimized C functions in
getSwsFunc().

Originally committed as revision 30331 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:19:54 +00:00
Stefano Sabatini
c70f1401df Prefer "to %s%s" over "to%s %s", slightly more readable.
Originally committed as revision 30330 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:14:29 +00:00
Stefano Sabatini
a9e2878c48 Simplify code in sws_getContext() which logs if the destination format
support dithering, remove the const char *dither variable and use a
literal string instead.

Originally committed as revision 30329 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:11:03 +00:00
Ramiro Polla
9556124c97 Document some of SwsContext.
Originally committed as revision 30328 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 19:04:55 +00:00
Ramiro Polla
0cc854e377 Reuse h{lum,chr}Filter{,Pos} variables for MMX2 fast_bilinear horizontal scaler.
Originally committed as revision 30327 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 18:39:06 +00:00
Stefano Sabatini
d95c863850 Factorize code which logs the source and destination formats in
sws_getContext().

Originally committed as revision 30326 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 18:36:21 +00:00
Stefano Sabatini
3e906f4cfb Simplify reset_ptr(): employ usePal() macro rather than enumerating
all the paletted formats.

Originally committed as revision 30317 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 11:08:16 +00:00
Måns Rullgård
e8393e1cb8 Add symbol versioning for shared libraries
Based on patch by Reinhard Tartler <siretart tauware de>

Originally committed as revision 30315 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-16 04:48:55 +00:00
Ramiro Polla
2e3e8031ec Don't initialize normal horizontal filter if MMX2 filter is used.
Originally committed as revision 30313 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-15 19:50:59 +00:00
Zuxy Meng
a959e24780 Const correctness for src pointer. Remove all constness related warnings in
libswscale.

Originally committed as revision 30306 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-15 08:51:51 +00:00
Stefano Sabatini
3bfbbef64d Fix typo.
Originally committed as revision 30304 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-15 00:39:25 +00:00
Ramiro Polla
00c081a8f0 Remove unused clip_table code.
Originally committed as revision 30303 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-14 19:12:42 +00:00
Ramiro Polla
efc034cc0f Add const qualifier to rgb48 to YV12 functions' src.
Originally committed as revision 30301 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-14 06:19:45 +00:00
Ramiro Polla
a3e35e2852 Add missing parameter to rgb48 to YV12 functions.
Originally committed as revision 30300 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-14 06:19:10 +00:00
David Conrad
28b2866f45 /nop is illegal with Apple's older version of gas, this was fixed elsewhere
but not here since it was unused before now.

Originally committed as revision 30289 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-12 19:03:09 +00:00
Zuxy Meng
845e37e770 Make sure that sfence is used after any non temporal stores.
Originally committed as revision 30287 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-12 02:34:33 +00:00
Zuxy Meng
52c0fcaf52 Avoid redefinition of RGB_PLANAR2PACKED24 as the template is included for
multiple times.

Originally committed as revision 30273 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-11 08:21:31 +00:00
Ramiro Polla
996de2fefa cosmetics: {} placement.
Originally committed as revision 30272 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-11 07:30:28 +00:00
Zuxy Meng
23b0072ad7 MMX(2) accelerated yuv420->rgb24 routine, trivial as essentially as it just
swaps R and B inputs for the existing yuv420->bgr24 routine.

Originally committed as revision 30254 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-09 17:20:49 +00:00
Zuxy Meng
4b19045566 Remove unused PREFETCHW macro
Originally committed as revision 30253 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-09 14:44:20 +00:00
Reimar Döffinger
1b168a428d Ignore 0-height slice in sws_scale, otherwise a final 0-height slice will
cause libswscale to assume the incorrect slice order and complain about
slices starting in the middle.

Originally committed as revision 30246 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-08 19:31:33 +00:00
Stefano Sabatini
8e9767f6fd Implement sws_isSupportedInput() and sws_isSupportedOutput().
Originally committed as revision 30236 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-07 19:07:47 +00:00
Zuxy Meng
bb34acd8a4 Remove const to avoid a bunch of GCC warnings against discarded qualifiers and
incompatible pointer type.

Originally committed as revision 30234 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-07 07:13:18 +00:00
Stefano Sabatini
634116df3e Prefer enum PixelFormat over int for the type of the format parameter
of getSubSampleFactors().

Originally committed as revision 30184 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-03 15:20:07 +00:00
Stefano Sabatini
997980f0d8 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for the
swscale_configuration() and swscale_license() functions, consistent
with the rest of FFmpeg.

Originally committed as revision 30180 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-03 14:35:20 +00:00
Stefano Sabatini
f412d5e97a Simplify usePal() macro, make it use av_pix_fmt_descriptors.
Originally committed as revision 30172 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-03 00:22:49 +00:00
Stefano Sabatini
b3cf7cb144 Simplify getSubSampleFactors(), make it use the values provided by
av_pix_fmt_descriptors().

Originally committed as revision 30171 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-03 00:09:24 +00:00
Reimar Döffinger
f514b4f937 Do not needlessly use the BP register in x86_64-specific code, there are
enough other registers available that are less likely to cause issues.

Originally committed as revision 30160 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2010-01-01 09:46:24 +00:00
Diego Biurrun
c887b30d79 Remove unused variable, fixes the warning:
libswscale/swscale_template.c:2575: warning: unused variable ‘srcFormat’

Originally committed as revision 30132 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-28 12:05:20 +00:00
Ramiro Polla
aaba7e6c66 Remove parameters no longer used in h[yc]scale().
Originally committed as revision 30099 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-21 01:59:34 +00:00
Ramiro Polla
a1f4b4bb6e Move fast bilinear scaler code to the existing h[yc]scale_fast() functions.
Originally committed as revision 30098 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-21 01:54:59 +00:00
Ramiro Polla
bb53e1d188 Rename function pointers used to convert from the input pixel format to the
intermediate YV12 to a more descriptive name.

Originally committed as revision 30097 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-21 01:41:29 +00:00
Ramiro Polla
e7a47515ab Check if chroma horizontal scaler is needed in sws_init_swScale().
Originally committed as revision 30096 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-21 01:34:45 +00:00
Ramiro Polla
6f9771d7a6 Remove unused fields from SwsContext.
Originally committed as revision 30095 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-21 01:30:55 +00:00
Ramiro Polla
d3243d1431 Indentation.
Originally committed as revision 30087 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-20 17:42:35 +00:00
Ramiro Polla
e77ddfa293 Indent.
Originally committed as revision 30086 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-20 17:15:01 +00:00
Ramiro Polla
b501a1f56a Set fast_bilinear functions in sws_init_swScale().
Originally committed as revision 30085 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-20 17:09:46 +00:00
Ramiro Polla
bae76dc3eb Set horizontal scaler's range conversion in context in sws_init_swScale().
Originally committed as revision 30082 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-20 16:32:58 +00:00
Ramiro Polla
84011f10d5 Set horizontal scaler's src offsets in context in sws_init_swScale().
Originally committed as revision 30081 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-20 16:21:25 +00:00
Ramiro Polla
a8bcc7b42b Document the differences between the two asm fragments in initMMX2HScaler().
Originally committed as revision 29978 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-07 03:52:55 +00:00
Ramiro Polla
75084e47ff Start using intermediate buffers at index 0.
These index variables are incremented before each use, so they should be
initialized to -1.

Originally committed as revision 29977 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-06 22:01:25 +00:00
Ramiro Polla
e470691aa8 Fix compilation with runtime cpu detection.
All functions in swscale_template.c should be declared with the RENAME macro.

Originally committed as revision 29976 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-05 09:44:19 +00:00
Ramiro Polla
f415be684d Add support for nv12/nv21 input.
Originally committed as revision 29974 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-12-03 18:18:13 +00:00
Stefano Sabatini
a9af75ae85 Make sws_format_name() use av_pix_fmt_descriptors.
This also introduces a dependency of libswscale on libavutil.

Originally committed as revision 29968 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-11-26 21:08:45 +00:00
Diego Biurrun
bd381fd3f6 Add functions to return library license and library configuration.
Originally committed as revision 29932 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-11-18 17:16:02 +00:00
NVIDIA Corporation
8cbcb1c732 Support VDPAU hardware accelerated decoding of MPEG-4 ASP on capable
hardware.

Original patch by NVIDIA corporation.

Originally committed as revision 29885 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-11-10 19:11:13 +00:00
Carl Eugen Hoyos
b411dfff4c Use enum PixelFormat instead of int for srcFormat and dstFormat.
Originally committed as revision 29857 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-11-08 23:31:43 +00:00
Stefano Sabatini
2e0a80a128 Document sws_freeContext().
Originally committed as revision 29844 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-11-07 09:23:11 +00:00
Stefano Sabatini
a520e9f235 Document slice ordering assumption done by sws_scale().
Originally committed as revision 29804 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-10-30 14:13:25 +00:00
Diego Biurrun
53e5462040 Replace manual gcc version check by AV_GCC_VERSION_AT_LEAST macro.
Originally committed as revision 29701 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-22 14:38:49 +00:00
Ramiro Polla
c866c7d041 Cleanup buffer debugs in swScale().
Originally committed as revision 29686 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-16 22:34:48 +00:00
Ramiro Polla
953c821f9b Use correct buffers in vertical scaler in unscaled YV12 case.
Originally committed as revision 29685 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-16 22:31:43 +00:00
Ramiro Polla
749fac310c Reset slice direction at end of each frame.
Originally committed as revision 29675 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-13 01:49:40 +00:00
Ramiro Polla
9451b59fc6 Remove ; after while(0) in macros.
Originally committed as revision 29674 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-12 20:10:22 +00:00
Ramiro Polla
30715d4273 Document that slices can be bottom to top or top to bottom.
Originally committed as revision 29665 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-09 21:43:25 +00:00
Ramiro Polla
7d73d1c336 Indent.
Originally committed as revision 29654 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-07 16:29:32 +00:00
Ramiro Polla
9cf484d06e Rename CHECKED_ALLOC(Z) to FF_ALLOC(Z)_OR_GOTO and add context and label
parameters.

Originally committed as revision 29652 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-06 00:07:35 +00:00
Ramiro Polla
c2613a3137 Indent.
Originally committed as revision 29651 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-05 23:35:59 +00:00
Lars Täuber
991e579cae Make 16bit YUV formats compatible with NE avcodec_get_pix_fmt().
Patch by Lars Täuber <lars <dot> taeuber <at> gmx <dot> net>.

Originally committed as revision 29650 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-09-05 23:33:11 +00:00
Ramiro Polla
67c2c5bb2e Curly brackets cosmetics for previous commit.
Originally committed as revision 29587 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 23:08:32 +00:00
Ramiro Polla
1ddb5747df Check for return value of initFilter().
Originally committed as revision 29586 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 23:06:22 +00:00
Ramiro Polla
dd653355fa Revert mistakenly commited hunk.
Originally committed as revision 29585 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 23:03:14 +00:00
Ramiro Polla
7248797c03 swscale: Check for return values of malloc.
Originally committed as revision 29584 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 23:02:01 +00:00
Ramiro Polla
111641a97a swscale-example: Free memory used by input data.
Originally committed as revision 29583 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 03:36:09 +00:00
Ramiro Polla
0607b09069 Restore comment that was partially removed.
Originally committed as revision 29582 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-29 02:44:03 +00:00
Ramiro Polla
89fb9516af swscale-example: Rename src->ref so as to not confuse with src being used in doTest().
Originally committed as revision 29548 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-23 20:31:38 +00:00
Ramiro Polla
7da35acdab swscale-example: Use SWS_BILINEAR instead of hardcoded value.
Originally committed as revision 29547 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-23 20:29:49 +00:00
Ramiro Polla
a48ce2c3a7 Fix inconsistent indentation.
Originally committed as revision 29545 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-22 19:30:19 +00:00
Ramiro Polla
1b03a9d607 Check return values of sws_allocVec() and sws_getConstVec().
Originally committed as revision 29543 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-20 01:55:45 +00:00
Reimar Döffinger
64d39b7c76 Free initial swscale context, too. Avoids a valgrind warning.
Originally committed as revision 29538 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-19 08:21:55 +00:00
Reimar Döffinger
7b67bd92f4 Remove useless casts of malloc return value.
Originally committed as revision 29537 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-19 08:18:53 +00:00
Ramiro Polla
1aff375d41 Introduce and use sws_allocVec().
Originally committed as revision 29536 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-19 01:33:17 +00:00
Ramiro Polla
20484b90ec Reuse sws_getConstVec() where possible.
Originally committed as revision 29535 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-19 01:32:06 +00:00
Ramiro Polla
6b052ba88f swscale-example: Make selection of dstW, dstH, and flags more clear.
Originally committed as revision 29527 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-17 02:06:00 +00:00
Ramiro Polla
c255994b29 More indentation changes leftover from r29522:
- Align asm code to the column 4 spaces after the call to __asm__();
- Align cases in switch statements to the same column as "switch".

Originally committed as revision 29524 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-16 21:37:07 +00:00
Ramiro Polla
dd68318cee Cosmetics:
- 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.

Originally committed as revision 29523 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-16 21:11:28 +00:00
Ramiro Polla
9b734d44ab Indent libswscale:
- 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".

Originally committed as revision 29522 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-16 00:32:04 +00:00
Ramiro Polla
ebe5dec22b Indent.
Originally committed as revision 29518 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-15 02:35:55 +00:00
Ramiro Polla
52154148f4 Vertical yuv -> yuv16 scaler.
Originally committed as revision 29517 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-14 15:52:40 +00:00
Peter Schlaile
562f685307 BGR32 MMX special convertor.
Patch by Peter Schlaile < peter at schlaile dot de >

Originally committed as revision 29515 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-14 02:15:28 +00:00
Ramiro Polla
737cbcde08 Indent.
Originally committed as revision 29512 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 19:03:14 +00:00
Ramiro Polla
d426ea20c9 swscale-example: Don't check for chroma planes in mono formats.
Originally committed as revision 29511 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 18:39:39 +00:00
Ramiro Polla
48f4c61252 MMX2 horizontal scaler: Determine code size at runtime.
Originally committed as revision 29510 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 18:31:07 +00:00
Ramiro Polla
0728778885 Protect mmx2 filter code buffers so they are not executable and writeable at
the same time (only mmap for now).

Originally committed as revision 29509 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 18:29:54 +00:00
Ramiro Polla
b0e1343b85 Remove duplicate define (it is the same in the lum code).
Originally committed as revision 29508 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 18:28:55 +00:00
Ramiro Polla
bcdedf675f Rename "funny" code to "mmx2 filter" code.
Originally committed as revision 29507 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 18:28:17 +00:00
Ramiro Polla
475f361308 Indent.
Originally committed as revision 29506 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 13:18:59 +00:00
Ramiro Polla
e55ed689a2 swscale-example: Remove hack to end loop by setting variables to break.
Originally committed as revision 29505 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 11:48:06 +00:00
Ramiro Polla
d7cf0a6ff7 swscale-example: Don't return random value from main().
Originally committed as revision 29504 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 11:34:27 +00:00
Ramiro Polla
f5a9c4ee50 swscale-example: Check for Gray formats.
Originally committed as revision 29503 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-13 11:33:18 +00:00
Diego Biurrun
9bb3f3edfe Remove disabled debug code.
Originally committed as revision 29485 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-10 10:53:32 +00:00
Ramiro Polla
184410e60b Put some altivec code under COMPILE_ALTIVEC, and not HAVE_ALTIVEC.
Originally committed as revision 29484 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-09 15:34:57 +00:00
Kostya Shishkov
df226e6369 Remove 'offset' argument from PUTRGB* macros since it's unneeded and caused
pixel swapping during some YUV2RGB conversions.

Originally committed as revision 29483 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-09 15:04:17 +00:00
Diego Biurrun
0bf18ed32d Remove disabled crufty code.
Originally committed as revision 29482 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-08 15:18:48 +00:00
Guennadi Liakhovetski
062394e07c Fix regression when converting to nv12/nv21.
Patch by Guennadi Liakhovetski,  g D liakhovetski A gmx D de

Originally committed as revision 29464 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-08-01 21:30:36 +00:00
Ramiro Polla
469fd9b0e1 MMX2 scaler: Remove {} block leftover from factorization in initMMX2Scaler().
Merge variable declarations to previous {} block and indent.

Originally committed as revision 29454 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 05:45:47 +00:00
Ramiro Polla
f1c6dfa371 MMX2 scaler: factorize initMMX2Scaler().
Originally committed as revision 29453 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 05:42:46 +00:00
Ramiro Polla
901775c714 MMX2 scaler: add variable to ease factorization of initMMX2Scaler().
Originally committed as revision 29452 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 05:41:22 +00:00
Ramiro Polla
cbdc08d5a6 Indent.
Originally committed as revision 29451 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 05:14:47 +00:00
Ramiro Polla
fb91df397a Remove duplicate horizontal scaling when there aren't enough lines in a slice
to output the dstY line.

Originally committed as revision 29450 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 05:13:36 +00:00
Ramiro Polla
571d9587cf Remove useless code.
flags can never be any other kind of scaling algorithm inside this if().

Originally committed as revision 29449 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-28 04:46:39 +00:00
Ramiro Polla
94daf2e94c Do not misuse HAVE_ defines. Introduce COMPILE_TEMPLATE_ defines and use them
instead.

Originally committed as revision 29446 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-27 06:47:41 +00:00
Ramiro Polla
18c61752fd Factorize x86 fast_bilinear assembly.
Originally committed as revision 29445 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-27 06:22:00 +00:00
Ramiro Polla
6d08d7f3c8 Fix assembly comments for x86 fast_bilinear so they match the C code.
Originally committed as revision 29444 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-27 06:20:17 +00:00
Måns Rullgård
a898cdc995 Replace WORDS_BIGENDIAN with HAVE_BIGENDIAN
Originally committed as revision 29439 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-26 12:26:32 +00:00
Måns Rullgård
78d01adaa7 Remove unnecessary #include <unistd.h>
Originally committed as revision 29437 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-23 15:23:03 +00:00
Ramiro Polla
804db4466d Remove unused variables.
Originally committed as revision 29435 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-21 20:17:15 +00:00
Ramiro Polla
71ed6c8f06 Remove dependency from swscale_internal.h to lavu/internal.h, it is no longer
needed for DECLARE_ALIGNED.
Remove dependency from swscale-example.c to swscale_internal.h by duplicating
the necessary code. The duplicated code is a hack and should be removed once a
cleaner pixel format information system exists. swscale-example.c is example
code on how to use the library and therefore shouldn't rely on internal
headers.

Originally committed as revision 29415 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-09 02:27:39 +00:00
Diego Biurrun
29ce043374 The AltiVec code in libswscale no longer is under GPL.
Remove one erroneous preprocessor check for CONFIG_GPL in the AltiVec code.

Originally committed as revision 29412 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-05 20:10:59 +00:00
Måns Rullgård
b4b9170234 Use enum PixelFormat in sws_format_name() prototype
Originally committed as revision 29409 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-07-01 12:40:28 +00:00
Diego Biurrun
8b1a644177 AltiVec code and runtime cpudetect do not require CONFIG_GPL.
Make sure the latter is only checked for x86 optimizations, which are GPL.

Originally committed as revision 29390 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-25 20:06:03 +00:00
Diego Biurrun
57f6d52a22 The AltiVec optimizations of libswscale are no longer under GPL.
Originally committed as revision 29389 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-25 11:27:36 +00:00
Diego Biurrun
e912c13ad7 PPC: Make sure that COMPILE_C is not deactivated if RUNTIME_CPUDETECT is set.
Originally committed as revision 29388 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-25 10:14:05 +00:00
Vitor Sessak
fa8c408b26 Do not call rgb2rgbWrapper() for rgb48*, there is no special converter
yet for those formats

Originally committed as revision 29371 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-17 18:40:19 +00:00
Ramiro Polla
fdf70cc5c9 Kill warnings of possibly unused variables by using av_unused.
Originally committed as revision 29355 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-11 17:10:54 +00:00
Diego Biurrun
dc8229015c Fix compilation: #undef standard library functions that are
forbidden within FFmpeg, but allowed in example code.

Originally committed as revision 29354 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-11 15:15:43 +00:00
Diego Biurrun
02163b799d Add libavutil/internal.h #include, required for the DECLARE_ALIGNED macro.
This fixes swscale-example compilation.

Originally committed as revision 29353 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-11 10:19:04 +00:00
Stefano Sabatini
532ec28360 Remove '\p' doxygen markup, as it should improve plain text doxy
readability.

Originally committed as revision 29351 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-06 09:37:46 +00:00
Ramiro Polla
c0cf20a24a Use DECLARE_ALIGNED macro instead of __attribute__((aligned)) for ppc code.
Originally committed as revision 29350 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-04 22:50:38 +00:00
Ramiro Polla
934626a9f9 Replace more uses of __attribute__((aligned)) by DECLARE_ALIGNED.
Originally committed as revision 29349 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-04 22:10:52 +00:00
Pavel Pavlov
92db623584 Use DECLARE_ALIGNED macro instead of gcc __attribute__.
Patch by Pavel Pavlov <pavel at summit-tech dot ca>

Originally committed as revision 29348 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-04 21:55:52 +00:00
Kostya Shishkov
5d5a8813fc Testing RGB48 variants requires bigger stride in swscale-example.c
Originally committed as revision 29343 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-02 15:35:58 +00:00
Kostya Shishkov
68e7f4828d YUV into RGB48 BE/LE conversion support
Originally committed as revision 29342 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-02 12:30:11 +00:00
Kostya Shishkov
e8417235d0 Partial (low bits ignored, no direct transcoding into other RGB formats) support
for inputting RGB48BE/LE.

Originally committed as revision 29341 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-06-02 12:28:49 +00:00
Kostya Shishkov
80704c47c4 Move colorspace conversion functions implemented in pure C from template
into swscale.c

Originally committed as revision 29320 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-25 16:42:54 +00:00
Kostya Shishkov
5b21719ea2 Let SwScaler know that RGB48 BE/LE is 16-bits per component format.
Originally committed as revision 29317 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-19 17:37:58 +00:00
Kostya Shishkov
075ec82c54 Make SwScaler recognize RGB48 BE/LE colourspaces (not support though).
Originally committed as revision 29316 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-19 17:26:22 +00:00
Diego Biurrun
0020c54cb8 Add const qualifier to param argument of sws_getContext() and
sws_getCachedContext().  Fixes the warning:
swscale.c:3408: warning: assignment discards qualifiers from pointer target type

Originally committed as revision 29288 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-10 14:00:00 +00:00
Diego Biurrun
465477e1fb Move preprocessor condition before variable declaration, fixes the warning:
libswscale/swscale.c:1795: warning: unused variable 'flags'

Originally committed as revision 29287 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-10 11:37:04 +00:00
Diego Biurrun
f1933e436c Add missing const qualifiers to AltiVec function parameters where appropriate.
Fixes a couple of 'discards qualifiers from pointer target type' warnings.

Originally committed as revision 29281 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-09 10:56:37 +00:00
Vitor Sessak
5f9ae1983d Fix sliced yuv410 -> yuv420 conversion
Originally committed as revision 29272 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-07 20:41:04 +00:00
Michael Niedermayer
9507d91150 Change VOFW for x86 to 5120, it allows larger images to be scaled and was
not slower. Other archs are not changed as the larger VOFW was slower on PPC.

Originally committed as revision 29256 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-05 01:34:16 +00:00
Cédric Schieli
f267119786 Fix chroma shift when scaling from ARGB on LE and BGRA on BE
Originally committed as revision 29242 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-05-02 08:40:53 +00:00
Cédric Schieli
b78c8e2103 Remove useless duplicated code in yuv2rgb_c_32, yuva2rgba_c and yuva2argb_c
Originally committed as revision 29240 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-27 14:25:44 +00:00
Carl Eugen Hoyos
8e86dd1241 Make reset_ptr() void.
Originally committed as revision 29229 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-23 22:19:53 +00:00
Michael Niedermayer
de1275d5e8 Planar 16bit 420 422 444 YUV support (output is only supported in some
unscaled convertions).
This, like gray16 converts down to 8bit, which is a big FIXME & patch welcome,
we should preserve more bits.

Originally committed as revision 29217 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-21 01:08:03 +00:00
Michael Niedermayer
61a3f379e0 Merge gray->gray converters into planarCopy(), this should also make planarCopy()
useable for other 16bit formats once we support them.

Originally committed as revision 29216 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-21 00:08:06 +00:00
Michael Niedermayer
714f32bf15 Add macro to check for 16bit per sample.
Originally committed as revision 29215 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-21 00:03:00 +00:00
Michael Niedermayer
b87fae9f56 Make sure src/dst are NULL when they arent used, some code uses this to
simpify checks.

Originally committed as revision 29214 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-21 00:01:59 +00:00
Michael Niedermayer
081aa41db9 Use generic BE check instead of checking for gray16LE.
Originally committed as revision 29213 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-20 21:05:32 +00:00
Michael Niedermayer
c3dc6c5a6b add isBE()
Originally committed as revision 29212 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-20 21:04:55 +00:00
Michael Niedermayer
b36da2c215 Remove 2 useless += at the end of rgb16to15(), found by CSA.
Originally committed as revision 29189 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-18 22:27:36 +00:00
Stefano Sabatini
a208350c3c Rename swscale_avoption.c to options.c.
Consistent with lavc and lavf.

Originally committed as revision 29188 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-18 13:52:00 +00:00
Stefano Sabatini
0c067dc34b Make sws_setColorspaceDetails() return -1 if the destination format is
not supported.

Originally committed as revision 29187 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-18 11:53:59 +00:00
Stefano Sabatini
2d26fa2822 Move sws_[gs]etColorspaceDetails() documentation from swscale.c to
swscale.h.

Originally committed as revision 29186 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-18 11:45:31 +00:00
Diego Biurrun
d648c720af whitespace cosmetics: Break some overly long lines.
Originally committed as revision 29180 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-14 14:39:04 +00:00
Cédric Schieli
39e5f87b1a Do not use abgrToA for both luma and alpha channel in hyscale.
This fixes RGB32 (et al.) scaling.

Originally committed as revision 29179 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-14 14:11:57 +00:00
Diego Biurrun
cc3a248603 Move addition of MMX-OBJS to OBJS into common.mak instead of duplicating it.
Originally committed as revision 29175 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-12 22:49:58 +00:00
Diego Biurrun
457eed7204 whitespace cosmetics: Reindent a few lines and break a few excessively long lines.
Originally committed as revision 29174 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-12 22:43:03 +00:00
Ramiro Polla
10a7d21672 Rename RUNTIME_CPUDETECT to CONFIG_RUNTIME_CPUDETECT and always define it.
Originally committed as revision 29154 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-08 20:21:21 +00:00
Ramiro Polla
dd4090256c swscale: Remove X86 commented out code.
Originally committed as revision 29149 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-05 19:17:53 +00:00
Ramiro Polla
40fa514033 swscale: Use function pointers for swScale functions.
Originally committed as revision 29145 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-04 22:45:02 +00:00
Ramiro Polla
14d5c18c98 swscale: {}-related cosmetics.
Originally committed as revision 29144 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-04 22:43:24 +00:00
Ramiro Polla
7ac4032784 swscale: Add const to some swScale functions' parameters.
Originally committed as revision 29143 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-04 22:41:46 +00:00
Ramiro Polla
95b5770bc7 swscale: Remove mmx2 params from h[yc]scale().
Originally committed as revision 29129 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-02 18:34:11 +00:00
Ramiro Polla
392b656764 swscale: Split h[yc]scale_fast() into their own functions.
Originally committed as revision 29128 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-02 18:32:49 +00:00
Ramiro Polla
5b7c7dd329 swscale: Execute sfence and emms depending on runtime flags.
Originally committed as revision 29127 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-02 18:31:22 +00:00
Måns Rullgård
99cc563f26 Make examples and test progs depend on libraries
Originally committed as revision 29119 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-04-01 00:54:23 +00:00
Diego Biurrun
e7f98e4e94 Add missing $(EXESUF) to example/test program dependency declaration.
Originally committed as revision 29114 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-31 16:52:24 +00:00
Reimar Döffinger
4ed886430c Use correct PRId64 instead of "lld" in printf string, fixes compiler warnings.
Originally committed as revision 29107 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-30 12:23:28 +00:00
Diego Biurrun
4b086e7f21 Generalize example target rule in common.mak so that it sets a -example$(EXESUF)
suffix for all example files instead of doing this in individual Makefiles.

Originally committed as revision 29100 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-29 14:35:38 +00:00
Diego Biurrun
009d2d74c2 Move swscale AltiVec template code to ppc subdirectory.
Originally committed as revision 29099 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-29 14:18:44 +00:00
Diego Biurrun
4d02387f74 Relicense file to LGPL with the permission of Romain Dolbeau, the author.
Originally committed as revision 29097 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-29 13:47:30 +00:00
Ramiro Polla
d5e9bc0636 Move bfin specific code to its subdir.
Originally committed as revision 29079 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-27 22:56:56 +00:00
Diego Biurrun
66e6aec589 Rename cs_test.c --> colorspace-test.c. This is more consistent with the names
of other test programs and more descriptive of what the program does.

Originally committed as revision 29067 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-26 14:20:15 +00:00
Ramiro Polla
befa8e665c Move yuv2rgb code to subdirs.
Originally committed as revision 29063 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-26 01:30:10 +00:00
Diego Biurrun
e43f34bd44 swscale-example is an API example, not a test program.
Originally committed as revision 29056 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-25 18:08:52 +00:00
Cédric Schieli
4626ee1a8c Adds "YUYV422 to YUVA420P" and "UYVY422 to YUVA420P" unscaled convertion
Originally committed as revision 29048 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-24 07:11:35 +00:00
Cédric Schieli
08218e6d83 Fix some places where "non-alpha to YUVA420P" do not fill the alpha plane
Originally committed as revision 29047 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-24 07:10:19 +00:00
Cédric Schieli
0928f1eb53 Simpler and more elegant fix to the x86_32/OSX+PIC build failure
Originally committed as revision 29046 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-24 07:09:19 +00:00
Diego Biurrun
9e12268c57 Rename 'tests' target to 'testprogs'. It is too easily confused with the
'test' target and a directory named tests exists.

Originally committed as revision 29039 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-22 23:15:54 +00:00
Diego Biurrun
f1c5438fbb Remove unnecessary CLEANFILES declaration. Test programs do not require it.
Originally committed as revision 29038 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-22 23:09:20 +00:00
Michael Niedermayer
ff8084cf1c Enable unscaled packed422 -> planar 420 converters by default as the
imgconvert inherited quality issues should be fixed.

Originally committed as revision 29031 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-21 23:59:02 +00:00
Michael Niedermayer
3d99e069e4 10l (C code was buggy and untested)
Originally committed as revision 29030 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-21 23:52:34 +00:00
Michael Niedermayer
870a4adbb7 Average chroma of 2 lines in packed 422 -> planar 420.
Originally committed as revision 29029 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-21 23:45:20 +00:00
Cédric Schieli
986b6f8f73 Fix build failure on x86_32 Mac OS X with PIC enabled
Originally committed as revision 29022 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-21 12:16:32 +00:00
Reimar Döffinger
6f34808691 Fix planarCopy to ignore the GRAY8 "pseudo"-palette, fixes libavtest regression test.
Originally committed as revision 29021 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-21 10:20:16 +00:00
Reimar Döffinger
20ddf5a8e4 Avoid crash on planarCopy to a destination without alpha.
Makes regression tests run again, though the results are still wrong.

Originally committed as revision 29018 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 17:22:03 +00:00
Benoit Fouet
1cd98da820 Initialize pointer arrays which may be freed before being initialized.
Originally committed as revision 29017 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 16:29:47 +00:00
Reimar Döffinger
04ef1d3f7b Do _not_ use rbx on x86_64, it will fail to compile with PIC, besides it
added completely pointless code.

Originally committed as revision 29016 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 16:23:48 +00:00
Reimar Döffinger
d55ef6362f Fix swscale compilation with Altivec enabled.
Originally committed as revision 29015 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 16:12:03 +00:00
Cédric Schieli
3164d25e19 Reindent after last commit
Originally committed as revision 29014 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:44:26 +00:00
Cédric Schieli
110f147a85 Also test the alpha channel in swscale-example
Originally committed as revision 29013 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:17:20 +00:00
Cédric Schieli
6268f55be5 YUVA420P is now supported as output format
Originally committed as revision 29012 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:16:24 +00:00
Cédric Schieli
6858492e6c Add alpha channel scaling
Originally committed as revision 29011 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:15:14 +00:00
Cédric Schieli
3acd545f0c Add YUVA420P -> RGBA/BGRA/ARGB/ABGR unscaled converters
Originally committed as revision 29010 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:14:28 +00:00
Cédric Schieli
f6cf4ed08a Use a simpler and more general check for the gray case in the planarCopy function
Originally committed as revision 29009 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-20 14:01:51 +00:00
Diego Biurrun
54ea773614 Initialize *srcContext, *dstContext, *outContext to NULL, avoids the warnings:
libswscale/swscale-example.c:60: warning: 'outContext' may be used uninitialized in this function
libswscale/swscale-example.c:60: warning: 'dstContext' may be used uninitialized in this function
libswscale/swscale-example.c:60: warning: 'srcContext' may be used uninitialized in this function

Originally committed as revision 29008 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 23:33:35 +00:00
Matthieu Castet
e29c3f934f Remove useless casting in asm "m" operand.
Patch by Matthieu Castet, castet D matthieu A free D fr

Originally committed as revision 29007 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 23:29:19 +00:00
Ramiro Polla
dd35beb29b Allocate executable memory with VirtualAlloc() in Windows.
Originally committed as revision 29006 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 21:52:44 +00:00
Ramiro Polla
16a3717f8d Drop unnecessary cast and cosmetically align.
Originally committed as revision 29005 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 21:50:10 +00:00
Michael Niedermayer
9326d3f355 Revert
Date: Wed Mar 18 23:11:50 2009
	New Revision: 28996

	Log:
	Fix libswscale compilation on non-x86, hopefully without breaking MinGW64 again.

This change was non optimal, correct would have been to revert the offending commits
if no time was available to find a clean fix.

Originally committed as revision 29003 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 15:02:44 +00:00
Michael Niedermayer
72ef3dd72e Fix 10l typo.
Originally committed as revision 29002 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 14:04:14 +00:00
Michael Niedermayer
0411072ee3 Unscaled converters for
YUYV->YUV420P
YUYV->YUV422P
UYVY->YUV420P
UYVY->YUV422P

Originally committed as revision 28997 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-19 03:45:29 +00:00
Reimar Döffinger
62651fa729 Fix libswscale compilation on non-x86, hopefully without breaking MinGW64 again.
Originally committed as revision 28996 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-18 22:11:50 +00:00
Ramiro Polla
9a034dde8b swscale-example: use LFG instead of random()
Originally committed as revision 28993 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-18 17:12:44 +00:00
Ramiro Polla
d0ce212a7a Do not assume long is same width as x86 register.
Originally committed as revision 28992 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-18 17:07:30 +00:00
Diego Biurrun
780daf2b09 Consistently use ff_ prefixes for internal symbols.
Originally committed as revision 28988 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-18 08:06:08 +00:00
Cédric Schieli
d4da3e4790 Add a fillPlane function to fill a plane with one constant value
Originally committed as revision 28986 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-17 19:53:36 +00:00
Cédric Schieli
4c01b868de Don't write outside of the picture buffer in planarCopy in the gray case
Originally committed as revision 28985 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-17 19:51:52 +00:00
Diego Biurrun
852ca0e57d Fix ff_bfin_yuv2rgb_get_func_ptr() vs. sws_ff_bfin_yuv2rgb_get_func_ptr() name
mismatch. The function is now called sws_yuv2rgb_get_func_ptr_bfin().

Originally committed as revision 28982 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-17 12:05:56 +00:00
Diego Biurrun
7f5ee4eaa9 whitespace cosmetics: Consistently format function calls without space
between name and parentheses; shorten some overly long lines.

Originally committed as revision 28981 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-17 11:52:39 +00:00
Cédric Schieli
9a10a0767c Add an alpha parameter to the YUV2RGBFUNC macro to ease the upcoming yuva2rgb patch
Originally committed as revision 28978 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-16 20:04:32 +00:00
Cédric Schieli
2816ce4c91 Split YUV2RGB operands declaration into a separate macro
Originally committed as revision 28972 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-16 08:29:40 +00:00
Cédric Schieli
786dcfef48 Make the source buffer operands parametrized in the YSCALEYUV2RGB_YA macro
Originally committed as revision 28943 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-14 08:11:03 +00:00
Cédric Schieli
fe91924dd7 Make MMX registers parametrized in the YSCALEYUV2PACKEDX_YA macro
Originally committed as revision 28934 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-11 14:44:22 +00:00
Cédric Schieli
c662e788ce In initMMX2HScaler, when chrDstW is not divisible by 4, the last filterPos element is initialized on the wrong index (not evenly aligned). This fixes it
Originally committed as revision 28933 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-11 14:22:53 +00:00
Kostya Shishkov
bcff32d1b4 Mask all unused bits for packed pixel format instead of green and alpha mask only.
That fixes the case when converting 15-bit RGB/BGR to YUV and high bit is set
for input value(s).

Originally committed as revision 28916 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-09 17:25:43 +00:00
Cédric Schieli
6208d67664 Let the 4th plane reach the swScale function
Originally committed as revision 28868 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-07 09:39:48 +00:00
Cédric Schieli
9621f2f540 YUVA420P is a planar YUV format
Originally committed as revision 28867 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-07 09:37:25 +00:00
Cédric Schieli
a3398feb26 Fix bug introduced by me in r28756
Originally committed as revision 28825 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-05 21:02:33 +00:00
Cédric Schieli
a284d03093 Rewrite of rgb15to32 and rgb16to32 using fewer asm instructions and setting alpha channel to 0xFF
Originally committed as revision 28808 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-04 19:12:49 +00:00
Jindřich Makovička
57f9a56051 remove the rest of x86 asm from LGPL build
Originally committed as revision 28804 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-03 19:47:23 +00:00
Dominik Mierzejewski
9c36693924 Fix typo in comments.
Originally committed as revision 28777 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-01 11:43:56 +00:00
Reimar Döffinger
b62bb661ed Add warnings to yuv2rgb_vis.c because alpha is set wrong (0 instead of 255).
Originally committed as revision 28776 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-01 11:38:46 +00:00
Reimar Döffinger
68363b6989 Make AltiVec code write alpha as 255 instead of 0 when converting to RGBA
Originally committed as revision 28774 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-01 11:35:00 +00:00
Reimar Döffinger
f78b9c0656 Fix braindead and broken way to calculate abase, fixes regression tests on
big-endian systems.

Originally committed as revision 28773 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-03-01 11:33:10 +00:00
Cédric Schieli
f8a138be52 When converting from a non alpha format to an alpha format, defaults
Originally committed as revision 28756 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-28 08:01:52 +00:00
Cédric Schieli
c27516003f Add an isALPHA macro to check if pixel format has alpha channel
Originally committed as revision 28747 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-27 22:23:20 +00:00
Cédric Schieli
2c89734255 Use YUV420P code path for YUVA420P where appropriate
Originally committed as revision 28746 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-27 22:13:55 +00:00
Cédric Schieli
771ac0de04 Refactor code for upcoming alpha patches.
Patch by Cédric Schieli, cschieli A gmail

Originally committed as revision 28741 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-27 20:44:59 +00:00
Diego Biurrun
1e5304c69e Rename yuv2rgb2.c --> yuv2rgb.c.
Originally committed as revision 28723 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-24 22:40:20 +00:00
Diego Biurrun
ee8ee340a1 Relicense AltiVec optimizations as LGPL with the permission of Marc Hoffman
and Reza Jelveh, the original authors.

Originally committed as revision 28717 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-24 15:27:14 +00:00
Diego Biurrun
876a4dc013 Remove GPL version of yuv2rgb.c that has been replaced by an LGPL substitute.
Originally committed as revision 28716 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-24 14:50:28 +00:00
Kostya Shishkov
e76709d8a6 New LGPLed YUV2RGB table generator for SwScaler
Originally committed as revision 28700 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-22 09:22:05 +00:00
Cédric Schieli
431ac29046 Factorize some code in yuv2rgb_template.c to ease further yuva2rgb patch.
Patch by Cédric Schieli, cschieli gmail

Originally committed as revision 28690 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-21 14:51:01 +00:00
Cédric Schieli
404944183d move zeroing of alpha channel register out of YSCALEYUV2xxx macros,
patch by Cédric Schieli (cschieli at gmail youknowwhat)

Originally committed as revision 28687 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-21 10:54:29 +00:00
Cédric Schieli
df57ab1479 splits various YSCALEYUV2xxx macros into YSCALEYUV2xxx_UV,
YSCALEYUV2xxx_YA and YSCALEYUV2xxx_COEFF,
patch by Cédric Schieli (cschieli at gmail youknowwhat)

Originally committed as revision 28686 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-21 10:52:59 +00:00
Cédric Schieli
9c77b26b35 make MMX registers parametrized in the WRITEBGR32 macro,
patch by Cédric Schieli (cschieli at gmail youknowwhat)

Originally committed as revision 28685 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-21 10:49:52 +00:00
Stefano Sabatini
15239b7fcc Rename the "src" parameter in the sws_scale() declaration to
"srcSlice" to stress the fact that it references a slice rather than an
image.

Originally committed as revision 28655 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-18 23:16:31 +00:00
Stefano Sabatini
583799c459 Document sws_scale().
Originally committed as revision 28654 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-18 23:11:47 +00:00
Stefano Sabatini
e14ff1e628 Use sws_printVec2() instead of the deprecated sws_printVec().
Originally committed as revision 28567 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-14 20:18:50 +00:00
Stefano Sabatini
26b40a659d Implement sws_printVec2() and deprecate sws_printVec().
Originally committed as revision 28566 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-14 20:14:28 +00:00
Stefano Sabatini
a26b51cd4a Document sws_normalizeVec().
Originally committed as revision 28565 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-14 19:37:13 +00:00
Kostya Shishkov
43cbf8adbb Make hScale_altivec_real() trim its output like other implementations do
Originally committed as revision 28556 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-14 16:39:15 +00:00
Kostya Shishkov
12794f73eb Some AltiVec functions in SwScaler produce different output than their
counterparts in pure C, so don't invoke them in bitexact mode.

Originally committed as revision 28555 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-14 16:37:39 +00:00
Stefano Sabatini
39e80e6cb9 Apply misc fixes for sws_getCachedContext() documentation.
Originally committed as revision 28537 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-12 00:12:10 +00:00
Stefano Sabatini
70bf0416cf Bump micro version, related to r28491.
See the thread:
"[FFmpeg-devel] [PATCH] Explicitely declare {dst, src}Format sws_get*Context() params as enum PixelFormat".

Originally committed as revision 28536 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-12 00:07:44 +00:00
Stefano Sabatini
a15886540b Document sws_getContext().
Originally committed as revision 28535 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-11 23:42:29 +00:00
Stefano Sabatini
b5fdaebb44 Document sws_getIdentityVec().
Originally committed as revision 28533 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-11 21:34:44 +00:00
Stefano Sabatini
6d3cf67c2a Move sws_getGaussianVec() documentation from swscale.c to swscale.h.
Originally committed as revision 28528 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:45:50 +00:00
Stefano Sabatini
89b7464732 Document sws_cloneVec().
Originally committed as revision 28527 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:43:08 +00:00
Stefano Sabatini
70838eefbf Fix typo: lenght -> length.
Originally committed as revision 28526 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:40:58 +00:00
Stefano Sabatini
0bcb5b3918 Document sws_scaleVec().
Originally committed as revision 28525 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:38:01 +00:00
Stefano Sabatini
c326825e51 Document sws_getConstVec().
Originally committed as revision 28524 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:32:16 +00:00
Stefano Sabatini
b954b34a6d Move documentation of sws_getCachedContext() from swscale.c to
swscale.h.

Originally committed as revision 28523 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:26:56 +00:00
Stefano Sabatini
9ea5e6f639 Remove pointless comment regarding sws_scale_ordered().
Originally committed as revision 28522 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:25:09 +00:00
Stefano Sabatini
1eeded3992 Add a @deprecated notice to swscale_get_ordered().
Originally committed as revision 28521 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 23:22:07 +00:00
Diego Biurrun
3d021dd6eb Remove unnecessary emms Assembler instructions.
Originally committed as revision 28518 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-10 02:00:45 +00:00
Stefano Sabatini
edbdf77ec5 Document coeff and length fields in SwsVector.
Originally committed as revision 28512 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 23:42:16 +00:00
Diego Biurrun
945f7c6e92 Revert #undefining system functions, it is not necessary.
Originally committed as revision 28502 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 20:31:35 +00:00
Diego Biurrun
516c5f88a1 Add config.h #include for ARCH_X86 definition.
Originally committed as revision 28500 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 18:04:19 +00:00
Diego Biurrun
84205e0239 Add #undefs to reenable system functions that are normally forbidden in other
parts of FFmpeg but OK in this test program. Fixes the build.

Originally committed as revision 28499 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 18:01:36 +00:00
Diego Biurrun
43175f5010 Drop DECLARE_ALIGNED from extern declarations. It creates trouble when
swscale_internal.h is #included without HAVE_AV_CONFIG_H defined.

Originally committed as revision 28498 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 17:53:33 +00:00
Kostya Shishkov
e2a004ad4e Prefix visible YUV2RGB functions with sws_
Originally committed as revision 28496 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 14:31:53 +00:00
Kostya Shishkov
fa58ba15f8 Give better name to Inverse_Table_6_9
Originally committed as revision 28495 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 14:17:30 +00:00
Diego Biurrun
2907deed0f Remove file name from file headers.
It provides no useful information and breaks on renames.

Originally committed as revision 28494 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-09 11:19:19 +00:00
Stefano Sabatini
c099766fad Drop the deprecated sws_scale_ordered() at the next major version
bump.

Originally committed as revision 28492 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-08 23:06:05 +00:00
Stefano Sabatini
96b27045d2 Replace int type with enum PixelFormat for the dstFormat/srcFormat
params of the sws_getContext() and sws_getCachedContext()
declarations, consistent with the implementation.

Originally committed as revision 28491 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-08 23:02:06 +00:00
Stefano Sabatini
b534f73d25 Fix a typo: lumaSarpen -> lumaSharpen.
Originally committed as revision 28490 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-08 22:50:57 +00:00
Diego Biurrun
bf89d54edb cosmetics: Remove period after copyright statement non-sentence.
Originally committed as revision 28444 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-01 15:51:48 +00:00
Diego Biurrun
82aaa790d2 Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 28414 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-02-01 02:01:31 +00:00
Diego Biurrun
f4406ec177 HAVE_3DNOW --> HAVE_AMD3DNOW to sync with latest configure changes.
Originally committed as revision 28358 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-25 19:58:33 +00:00
Diego Biurrun
1615fb91a1 Declare struct SwsContext before using it, fixes the checkheaders warning:
libswscale/swscale_internal.h:58: warning: `struct SwsContext' declared inside parameter list
libswscale/swscale_internal.h:58: warning: its scope is only this definition or declaration, which is probably not what you want

Originally committed as revision 28353 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-25 12:03:28 +00:00
Diego Biurrun
dfe44a855d Disable C code when compiling AltiVec code, fixes the warning:
swscale_template.c:2623: warning: `swScale_C' defined but not used

Originally committed as revision 28352 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-25 11:59:22 +00:00
Diego Biurrun
f40c7dbb7e spelling/grammar cosmetics
Originally committed as revision 28351 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-25 11:57:17 +00:00
Diego Biurrun
7a24ec506c Fix #endif comments.
Originally committed as revision 28350 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-25 11:33:35 +00:00
Carl Eugen Hoyos
0ab8039577 Add PIX_FMT_VDPAU_WMV3 and PIX_FMT_VDPAU_VC1.
Originally committed as revision 28344 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-20 09:31:07 +00:00
NVIDIA Corporation
4e2b48760b Add VDPAU hardware accelerated decoding for MPEG1 and MPEG2 which will
be used by MPlayer.

Original patch by NVIDIA corporation.

Originally committed as revision 28322 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-16 02:14:25 +00:00
Aurelien Jacobs
b63f641e9b Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 28311 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-14 00:13:56 +00:00
Carl Eugen Hoyos
420169e520 Add PIX_FMT_VDPAU_H264.
Originally committed as revision 28281 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2009-01-08 19:54:43 +00:00
Diego Biurrun
643d2e880f Avoid POSIX-reserved _t namespace.
Originally committed as revision 28195 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-27 11:45:46 +00:00
Diego Biurrun
cb82a0736d consistency cosmetics: Rename POWERPC identifiers to PPC.
Originally committed as revision 28194 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-27 11:33:54 +00:00
Diego Biurrun
b9263c945f Remove pointless malloc.h #include.
Originally committed as revision 28164 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-19 09:59:59 +00:00
Reimar Döffinger
217d820253 Some forgotten eax -> REG_a changes.
It seems that binutils >= 2.18 just treat eax as rax but older versions fail.

Originally committed as revision 28136 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-12 16:46:43 +00:00
Diego Biurrun
376924583a Delete unnecessary 'extern' keywords.
Originally committed as revision 28082 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-03 15:25:27 +00:00
Diego Biurrun
1599c47ce3 Remove commented-out duplicate declarations.
Originally committed as revision 28058 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-02 00:26:14 +00:00
Diego Biurrun
2ef8819c9a Remove unused declarations.
Originally committed as revision 28057 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-12-02 00:21:37 +00:00
Diego Biurrun
4d382e2076 cosmetics: Consistently place HEADERS before OBJS in all Makefiles.
Originally committed as revision 27970 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-20 22:54:30 +00:00
Diego Biurrun
5155b8395c Put variable declaration inside an #ifdef to avoid an unused variable warning.
Originally committed as revision 27945 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-17 10:33:59 +00:00
Diego Biurrun
dcc37c9b6a Add some const specifiers to function name variables; fixes a bunch of
"initialization discards qualifiers from pointer target type" warnings.

Originally committed as revision 27894 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-04 20:38:55 +00:00
Diego Biurrun
6408c25b95 Merge ARCH_BFIN lines.
Originally committed as revision 27889 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-03 22:06:45 +00:00
Diego Biurrun
efa430faed Add tests target for libswscale test programs.
Originally committed as revision 27888 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-03 22:01:03 +00:00
Måns Rullgård
1a220bcde3 Remove forgotten ASM_OBJS in libswscale
Originally committed as revision 27887 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-11-03 21:49:54 +00:00
Vitor Sessak
75add6fbfc Silence GCC warnings:
ibswscale/swscale.c: In function ‘sws_scale’:
libswscale/swscale.c:2678: warning: ‘b’ may be used uninitialized in
this function
libswscale/swscale.c:2678: warning: ‘g’ may be used uninitialized in
this function
libswscale/swscale.c:2678: warning: ‘r’ may be used uninitialized in
this function

Originally committed as revision 27837 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-27 19:59:01 +00:00
Michael Niedermayer
bddddb5a0b rgb2rgb.h was not really intended to be a public header, thus remove it.
Originally committed as revision 27836 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-27 09:05:27 +00:00
Michael Niedermayer
b29e65513c Remove rgb2rgb.h dependancy.
Originally committed as revision 27835 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-27 09:03:47 +00:00
Vitor Sessak
65f65c3021 Silence GCC warning
Originally committed as revision 27834 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-26 15:41:11 +00:00
Carl Eugen Hoyos
36e8de07ed Remove unused code that can't be compiled without svn archive.
Originally committed as revision 27827 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-25 20:41:51 +00:00
Michael Niedermayer
9b0d44ef67 Do not attempt to use the unscaled yuv2rgb converter when height is odd because
it will overflow the buffer by 1 line. This might have been exploitable.

Originally committed as revision 27826 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-25 15:00:28 +00:00
Vitor Sessak
76e9fd01dd Cosmetics: alignment
Originally committed as revision 27818 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-23 19:20:14 +00:00
Vitor Sessak
522ce95786 Fix broken palette8to*.
Originally committed as revision 27817 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-23 19:13:11 +00:00
Diego Biurrun
aeb87a49a7 cosmetics: typo fix
Originally committed as revision 27816 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-23 16:23:42 +00:00
David Conrad
9655ffb59e Convert typeof keyword into __typeof__; this is a gcc extension and the former is not accepted in C99 without GNU extensions enabled (e.g. via -fasm). This fixes compilation on PPC.
Originally committed as revision 27805 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-19 18:56:35 +00:00
Diego Pettenò
7ad6469eae Convert asm keyword into __asm__.
Neither the asm() nor the __asm__() keyword is not 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 synta.

Originally committed as revision 27778 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-16 13:34:30 +00:00
Diego Pettenò
b5c44b1ab6 Mark some symbols in swscale.c as constant.
These are only used in swscale_template.c (and thus don't need to be
made extern), and can be declared as ASM constants.

Originally committed as revision 27737 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-09 11:13:14 +00:00
Diego Pettenò
d0b69b2855 Mark dither_2x2_{8,4} static to swscale.c
These two tables are not used outside swscale.c even though they are
declared also in yuv2rgb.c.

Originally committed as revision 27736 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-09 11:12:38 +00:00
Diego Pettenò
faf6112e26 Mark variation-specific interleaveBytes static.
These functions are never called by themselves, the alias
interleaveBytes is used instead.

Originally committed as revision 27735 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-09 11:11:35 +00:00
Diego Pettenò
6683a37f89 Invert logic for the single-pass in swScale() functions.
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).

Originally committed as revision 27734 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-09 11:10:30 +00:00
Carl Eugen Hoyos
f5a2c9816e Change variable types from int to enum PixelFormat.
Fixes icc warning #188: enumerated type mixed with another type

Originally committed as revision 27733 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-09 08:36:04 +00:00
Vitor Sessak
e150ef8d34 Do not set src[1] to the palette, it is now in the context
Originally committed as revision 27731 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-08 17:48:23 +00:00
Vitor Sessak
4900461742 Add a new unscaled PAL8 -> RGB converter.
Originally committed as revision 27730 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-08 17:46:22 +00:00
Aurelien Jacobs
13394e8cbb Change one more variable type from int to enum PixelFormat.
This one was missing from r27727.

Originally committed as revision 27728 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-08 11:59:01 +00:00
Carl Eugen Hoyos
58e4b706c5 Change variable types from int to enum PixelFormat.
Fixes icc warning #188: enumerated type mixed with another type

Originally committed as revision 27727 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-07 19:44:39 +00:00
Luca Barbato
7cff2c7f44 gcc-apple specific fallback not necessary anymore (btw no apple hardware is less than a Intel core, thus it won't come there w/out disabling all the optimizations)
Originally committed as revision 27722 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-05 21:00:16 +00:00
Diego Biurrun
02a6a6eea4 Use HAVE_FAST_64BIT instead of nonstandard __WORDSIZE macro.
Originally committed as revision 27720 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-05 16:47:55 +00:00
Carl Eugen Hoyos
88e2a9aebc Remove b5Dither, g5Dither and r5Dither from libswscale.
Originally committed as revision 27718 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-04 18:50:39 +00:00
Carl Eugen Hoyos
92c7b4713d Remove g6Dither from libswscale.
Originally committed as revision 27715 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-04 16:40:35 +00:00
Diego Biurrun
0d696d34ef Remove MPlayer-specific MP_WORDSIZE hack.
Originally committed as revision 27698 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-10-04 09:52:07 +00:00
Diego Biurrun
92ca910542 Remove unused function fast_memcpy.
Originally committed as revision 27673 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-29 06:06:19 +00:00
Diego Biurrun
ed2164f37e cosmetics: indentation
Originally committed as revision 27672 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-29 05:41:54 +00:00
Michael Niedermayer
8335a9f0cb Revert mistakely commited hunk.
Originally committed as revision 27671 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-29 01:15:54 +00:00
Michael Niedermayer
0473e31faa Print all cases that are tested, not just the ones that are bad.
Originally committed as revision 27670 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-29 01:14:27 +00:00
Michael Niedermayer
f830d8244a Fix infinite loop with spline, bug was introduced in r27612 by me.
Originally committed as revision 27669 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-29 01:08:01 +00:00
Luca Barbato
896a22b851 Uniform *ToY and *ToUV function signatures
Originally committed as revision 27636 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-18 00:26:37 +00:00
Luca Barbato
3a5ba0c33f Split mono2Y in monowhite and monoblack
Originally committed as revision 27635 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-18 00:24:32 +00:00
Luca Barbato
e48a79c91a Factorize unit32_t* casts for palette pointer
Originally committed as revision 27634 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-18 00:22:53 +00:00
Michael Niedermayer
d616c8ae3d Fix segfault with rgb24 and full_internal_chrome due to non existing alpha
byte being written after the array.

Originally committed as revision 27628 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-16 03:49:54 +00:00
Michael Niedermayer
a64a062fb9 Avoid using floating point for calculating filter coefficients.
Originally committed as revision 27612 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-15 03:33:09 +00:00
Michael Niedermayer
8588e1484e Avoid some explicit types in sizeof().
Originally committed as revision 27611 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-14 19:29:14 +00:00
Michael Niedermayer
22129c78d7 Use av_mallocz() instead of for() =0;
Originally committed as revision 27610 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-14 19:25:16 +00:00
Michael Niedermayer
45e18be87d Move dither tables from yuv2rgb to swscale, they have been written by me and
can be used under LGPL.

Originally committed as revision 27609 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-14 18:00:49 +00:00
Benjamin Zores
a35acd7f8c Fix libswscale build after r27561 if --enable-runtime-cpudetection is used.
Originally committed as revision 27602 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 16:13:04 +00:00
Michael Niedermayer
14014d47cb Fix indention.
Originally committed as revision 27600 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 13:41:47 +00:00
Michael Niedermayer
43c164788c Rename yuv2rgb variables to avoid name clashes with the ones used by bfin asm.
Originally committed as revision 27599 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 11:52:03 +00:00
Michael Niedermayer
f433c8abd3 Disable mmx routines that are not bitexact when the user wants
bitexact ones.

Originally committed as revision 27597 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 03:12:15 +00:00
Michael Niedermayer
ef423a6618 Make horizontal mmx scaling code match C code.
Originally committed as revision 27596 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 02:18:12 +00:00
Michael Niedermayer
88bc5a64f6 Ensure that additional filter coeffs that exist due to alignment
are 0 if bitexact mode is requested.

Originally committed as revision 27595 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-13 02:04:10 +00:00
Michael Niedermayer
84c1253513 yvu9toyv12Wrapper is not bitexact so disable it when the user wants
bitexactness to C.

Originally committed as revision 27594 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 23:52:37 +00:00
Michael Niedermayer
881c429407 Make the horizontal C scaler code clip only against INT16_MAX not 0,
this decreases the difference between C and MMX, its also faster.

Originally committed as revision 27593 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 22:29:21 +00:00
Michael Niedermayer
ceb700babb Add bitexact flag.
Originally committed as revision 27592 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 21:46:53 +00:00
Michael Niedermayer
b82ecd6258 The yuv->rgb tables are too small for cliping to be avoidable,
thus revert the respective optimization. The table generator code
has to be rewritten anyway one day by some volunteer because its
not LGPL, fixing the GPL table generator thus seems like wasted time.

Originally committed as revision 27591 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 21:25:42 +00:00
Michael Niedermayer
78454dfc01 Fix another 1000l bug in the mono input code.
Originally committed as revision 27590 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 18:05:57 +00:00
Michael Niedermayer
6c80eb1626 Add support for PIX_FMT_YUV440P.
Originally committed as revision 27589 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 17:51:13 +00:00
Michael Niedermayer
4bb9adcff1 10000l PIX_FMT_MONOWHITE check was really a || 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 its a trivial change".

Originally committed as revision 27588 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 17:28:36 +00:00
Michael Niedermayer
3d05e078ee Support mono as input format.
Originally committed as revision 27587 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 16:46:38 +00:00
Michael Niedermayer
ec1bca2a0f Add support for PIX_FMT_MONOWHITE as output format.
Originally committed as revision 27586 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 16:01:17 +00:00
Michael Niedermayer
0885770455 rgb24toyv12 isnt accuratly rounding, so disable it as well when the
user asks for accurate rounding.

Originally committed as revision 27585 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 04:40:51 +00:00
Michael Niedermayer
4155ece530 Do not use the unscaled yuv->rgb converters if SWS_ACCURATE_RND is set,
because they do not accurately round.

Originally committed as revision 27584 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-12 02:05:37 +00:00
Michael Niedermayer
fd5c57b813 100000000000000l, forgot to commit header change for r27580.
Originally committed as revision 27583 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 22:02:15 +00:00
Michael Niedermayer
e09d7eef37 Fix typo that lead to averaging of the same pixel in rgb24ToUV_half().
Originally committed as revision 27582 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 14:47:18 +00:00
Michael Niedermayer
8e7ba004ed Remove mistakely commited code i used for testing.
Originally committed as revision 27581 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 14:40:29 +00:00
Michael Niedermayer
f0faee4c63 Implement full horizontal chroma for rgb/bgr24/32 output.
Originally committed as revision 27580 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 14:39:12 +00:00
Michael Niedermayer
bdf397ba4b Do not do unneeded cliping in YSCALE_YUV_2_PACKEDX_C.
Originally committed as revision 27579 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 03:22:39 +00:00
Michael Niedermayer
e69bd29425 Factorize yuv2packedXinC().
Originally committed as revision 27578 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 02:36:51 +00:00
Michael Niedermayer
7b5d7b9e85 Set rgb2yuv constants more accurately, makes no real difference though.
Originally committed as revision 27577 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 01:49:35 +00:00
Michael Niedermayer
85a51e6bd5 Fix chroma yuv->rgb tables for jpeg style yuv, this was missed as it
only affects the C code while mmx uses different tables.

Originally committed as revision 27576 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-11 00:09:01 +00:00
Michael Niedermayer
5fe4aad711 Correct normalization constant for the vertical filter, iam not
completely sure why this was at such incorrect value, but i could
not find any problems when it was set correctly.

Originally committed as revision 27575 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 23:23:47 +00:00
Michael Niedermayer
ac0ad72981 Make the 2point linear interpolation coefficients correct even for the
nearly never occuring 0.0, 1.0.

Originally committed as revision 27574 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 22:41:55 +00:00
Michael Niedermayer
33a67bd6c7 Fix overflow.
Originally committed as revision 27573 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 20:47:16 +00:00
Michael Niedermayer
ff9a056d1a Fix build failure due to %%eip on x86_64.
Originally committed as revision 27569 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 17:50:49 +00:00
Michael Niedermayer
6b79dbce0c Change RGB2YUV_SHIFT from 16 to 15 to make it able to work
with 16bit signed constants (like SIMD might use).

Originally committed as revision 27568 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 16:39:56 +00:00
Michael Niedermayer
ba83d86299 Add bgr/rgb15/16/32->UV-half to the macro so theres less code duplication
at the source level.

Originally committed as revision 27567 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 13:55:51 +00:00
Michael Niedermayer
a0baa07aef Factorize RGB/BGR15/16/32->UV by using the preprocessor.
Originally committed as revision 27566 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 03:56:06 +00:00
Michael Niedermayer
214892ee42 Factorize rgb/bgr15/16/32->Y by using the preprocessor.
Originally committed as revision 27565 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 03:42:45 +00:00
Michael Niedermayer
2f60f6297c Make SWS_FULL_CHR_H_INP work.
Originally committed as revision 27564 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 02:28:38 +00:00
Diego Biurrun
58f0ec5ff6 spelling/wording cosmetics
Originally committed as revision 27563 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-10 00:02:31 +00:00
Michael Niedermayer
cbcb408ff6 More accurate rounding for 8bit inputs.
Originally committed as revision 27562 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-09 23:39:32 +00:00
Michael Niedermayer
dfb09bd1d4 Rewrite bgr24->yuv mmx code, the new code is cleaner, more accurate,
and does not throw half the chroma away.

Originally committed as revision 27561 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-09 23:30:06 +00:00
Michael Niedermayer
0f5d4aa83b Add table of rgb->yuv convertion coefficients.
Originally committed as revision 27558 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-09 18:01:25 +00:00
Michael Niedermayer
35ab2b6445 More correct rounding for the rgb/bgr->yuv converters.
Originally committed as revision 27557 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-09 16:55:58 +00:00
Michael Niedermayer
aa13b0fc55 Prevent overflows during mpeg->jpeg yuv.
Originally committed as revision 27552 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-09 03:35:07 +00:00
Michael Niedermayer
6bc0c7928a Fix jpeg yuv.
Fixes issue504.

Originally committed as revision 27547 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-08 12:36:38 +00:00
Michael Niedermayer
59ded10ca2 Fix typo in comment.
Originally committed as revision 27546 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-08 00:52:22 +00:00
Michael Niedermayer
1625216eaa Fix accurate rounding mode on x86_64.
Fixes issue222.

Originally committed as revision 27545 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-07 21:06:21 +00:00
Luca Barbato
97b93389af Make ToY and ToUV family of function consistent part I
Convert width argument from int to long (note: srcW is still an int).

Originally committed as revision 27544 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-07 18:22:29 +00:00
Michael Niedermayer
d63a2cb103 Make fast bilinear scaler work again.
Originally committed as revision 27543 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-07 16:59:04 +00:00
Baptiste Coudurier
3b38f1c60b simplify function selection code
Originally committed as revision 27528 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-05 01:44:33 +00:00
Baptiste Coudurier
a6100f39a1 enable yuv422p to uyvy converter
Originally committed as revision 27527 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-05 00:25:39 +00:00
Michael Niedermayer
b0880d5da4 Make 16bit grayscale output work.
Originally committed as revision 27524 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 22:58:16 +00:00
Michael Niedermayer
736143c8d9 Fix SWS_FAST_BILINEAR and SWS_POINT with some unscaled rgb<->bgr converters.
Originally committed as revision 27523 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 22:31:22 +00:00
Michael Niedermayer
9990e4269c Support PIX_FMT_RGB32_1 and PIX_FMT_BGR32_1.
Fixes issue248.

Originally committed as revision 27522 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 21:59:15 +00:00
Michael Niedermayer
1462302027 Fix 4 and 8 bit RGB/BGR input.
Originally committed as revision 27521 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 20:46:36 +00:00
Michael Niedermayer
d52337af70 Remove workaround for rgb/bgr mess.
Originally committed as revision 27520 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 20:16:41 +00:00
Michael Niedermayer
7372e9bbe5 Fix 4 of the unscaled rgb15/16 converters, each of these contained
2-3 bugs each of which made it fail completely, this code clearly
has never been tested and been written by somone who knows the
difference between a potato and a computer is that the first is round.

Originally committed as revision 27519 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 19:49:13 +00:00
Michael Niedermayer
6107059c2c rgb vs bgr fix for the unscaled converters.
Originally committed as revision 27518 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 19:11:39 +00:00
Michael Niedermayer
27a90b0450 Fix rgb15/16 vs. bgr part2.
Originally committed as revision 27517 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 18:24:25 +00:00
Michael Niedermayer
688b5e8020 Fix rgb15/16 vs. bgr part1.
Originally committed as revision 27516 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 18:14:29 +00:00
Michael Niedermayer
ae9e0e8391 Add fflush to prevent stdout & stderr from being mixed.
Originally committed as revision 27515 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-09-04 15:13:55 +00:00
Stefano Sabatini
0eaf523548 Change headers' guardnames consistently with r15120.
Originally committed as revision 27499 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-08-31 07:42:11 +00:00
Stefano Sabatini
b3e03fa7b0 Implement swscale_version().
Originally committed as revision 27492 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-08-29 18:23:54 +00:00
Guillaume Poirier
14b83f9a3d compilation fix with GCC 4.0.1 on MacOSX tiger, broken by the removal of AVV() macro
Originally committed as revision 27349 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-25 09:15:08 +00:00
Diego Biurrun
6b83bb1ee8 Fix indentation after last commit.
Originally committed as revision 27345 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-24 16:52:35 +00:00
Diego Biurrun
f22e5e22ef Remove AltiVec vector declaration compiler compatibility macros.
The original problem was that FSF and Apple gcc used a different syntax
for vector declarations, i.e. {} vs. (). Nowadays Apple gcc versions support
the standard {} syntax and versions that support {} are available on all
relevant Mac OS X versions. Thus the greater compatibility is no longer
worth cluttering the code with macros.

Originally committed as revision 27344 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-24 16:49:14 +00:00
Michael Niedermayer
091d3bdc73 fix memleak
Originally committed as revision 27332 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-21 11:41:13 +00:00
Michael Niedermayer
47b7382d29 Cleanup, use av_freep() instead of av_free(x); x=NULL
Originally committed as revision 27331 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-21 11:18:24 +00:00
Michael Niedermayer
a1f3ffa3ce Make C code in yuv2yuv1() do accurate rounding, this could be split
depending on SWS_ACCURATE as well if someone wants.

Originally committed as revision 27323 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-18 00:09:09 +00:00
Michael Niedermayer
d78c1ea16f indent
Originally committed as revision 27322 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-17 23:43:48 +00:00
Michael Niedermayer
bf2bdde67a Forgotten accurate rounding function YSCALEYUV2YV121_ACCURATE.
Originally committed as revision 27321 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-17 23:42:06 +00:00
Michael Niedermayer
7bae01c62c simplify yuv2yuv1()
Originally committed as revision 27320 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-17 23:35:36 +00:00
Michael Niedermayer
6afc7c19f0 10l forgot SWS_BILINEAR
Originally committed as revision 27318 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-17 22:30:02 +00:00
Michael Niedermayer
010c00bc81 Ensure that exactly one scaler algo is used.
Originally committed as revision 27317 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-17 22:01:18 +00:00
Alexander Strange
88c5cadc2a Cosmetics: reindent.
Originally committed as revision 27279 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-13 22:27:50 +00:00
Alexander Strange
2ac6ff2ecb Remove const vector casts.
Fixes compilation with altivec and -std=gnu99.

Originally committed as revision 27278 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-13 22:27:19 +00:00
Luca Barbato
1619f426b9 100L, avoption splited code added, I should double check with svn status...
Originally committed as revision 27245 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-10 15:37:06 +00:00
Luca Barbato
e40b183d3a Split AVOption/AVClass in a separate file. SoC Patch from Keiji Costantini
Originally committed as revision 27244 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-09 22:43:08 +00:00
Luca Barbato
fcc402b1c9 Remove ASSERT() macro. SoC Patch from Keiji Costantini
Originally committed as revision 27214 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-06 03:32:47 +00:00
Luca Barbato
bc5a04440b Reindent. SoC Patch from Keiji Costantini
Originally committed as revision 27213 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-06 03:27:31 +00:00
Luca Barbato
2d35ae567f Split simpleCopy into packedCopy and planarCopy. SoC Patch from Keiji Costantini
Originally committed as revision 27212 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-06 03:26:32 +00:00
Diego Biurrun
8a3227968c spelling/grammar/wording overhaul
Originally committed as revision 27190 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-04 13:49:45 +00:00
Diego Biurrun
4bdc44c7fe whitespace cosmetics
Originally committed as revision 27188 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-04 13:14:29 +00:00
Diego Biurrun
7a4d5e174c Place license header at the top of the file for consistency.
Originally committed as revision 27187 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-07-04 13:12:47 +00:00
Diego Biurrun
b146e17df5 OBJS should end in .o, not .c.
Originally committed as revision 27035 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-08 14:44:38 +00:00
Jan Knutar
862ae1d6a2 VIS OBJS should end in .o, not .c; patch by Jan Knutar, jknutar nic fi.
Originally committed as revision 27034 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-08 14:44:05 +00:00
Jan Knutar
f3bbfe785e Add missing #include, patch by Jan Knutar, jknutar nic fi.
Originally committed as revision 27033 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-08 14:41:44 +00:00
Baptiste Coudurier
ce3d365f2f restore needed cast to correct type with const
Originally committed as revision 26957 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 19:08:16 +00:00
Baptiste Coudurier
b8b015f483 cast to correct type, suppress warnings
Originally committed as revision 26949 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:36:23 +00:00
Baptiste Coudurier
74498eb44b cast to correct type, suppress warnings
Originally committed as revision 26948 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:35:27 +00:00
Baptiste Coudurier
73d046e21f add const, suppress warnings
Originally committed as revision 26947 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:34:39 +00:00
Baptiste Coudurier
87cf861c7d cast to correct type, suppress warnings
Originally committed as revision 26946 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:28:15 +00:00
Baptiste Coudurier
3e62b7e34c add const, suppress warnings
Originally committed as revision 26945 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:27:45 +00:00
Baptiste Coudurier
72d6b61074 remove useless casts
Originally committed as revision 26944 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:25:07 +00:00
Baptiste Coudurier
774c386a10 add const, suppress warnings
Originally committed as revision 26943 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:23:50 +00:00
Baptiste Coudurier
994c1ef014 add const, suppress warnings
Originally committed as revision 26942 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:21:12 +00:00
Baptiste Coudurier
baf7f7c64a remove useless casts
Originally committed as revision 26941 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-06-01 03:17:42 +00:00
Keiji Costantini
49f2339cbf Remove in_asm_used_var_warning_killer()
Patch by Keiji Costantini ( strites gmail com )

Originally committed as revision 26706 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-09 12:47:55 +00:00
Diego Biurrun
83da2c6f26 Use full path for #includes from another directory.
Originally committed as revision 26702 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-09 12:00:25 +00:00
Diego Biurrun
8ab52e71e1 cosmetics: sort lines (correctly)
Originally committed as revision 26673 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-05 10:10:05 +00:00
Luca Barbato
e3e0d99332 Cosmetics: reorder and align targets
Originally committed as revision 26671 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-04 20:22:03 +00:00
Luca Barbato
5478959b8f Build sparc arch specific code using the Makefile
Originally committed as revision 26670 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-04 20:19:33 +00:00
Diego Biurrun
4405c986f9 cosmetics: alphabetical order
Originally committed as revision 26669 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-05-04 18:28:24 +00:00
Diego Biurrun
c6d4cef7c3 cosmetics: __asm__ __volatile__ --> asm volatile
Originally committed as revision 26456 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-04-17 21:54:43 +00:00
Diego Biurrun
54e3ae2ea6 Relicense test/example files as LGPL with Michael's permission.
Originally committed as revision 26429 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-04-13 01:29:24 +00:00
Måns Rullgård
7669899bdf non-recursive makefiles
Originally committed as revision 26346 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-04-07 21:16:50 +00:00
Diego Biurrun
5202ed315b Fix wrong #endif comment.
Originally committed as revision 26300 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-03-29 15:51:05 +00:00
Diego Biurrun
bfffdb81c2 Classify mlib as a configurable option, not as a hardware feature.
Originally committed as revision 26275 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-03-25 21:30:46 +00:00
Alexander Strange
86593486b4 Fix 64 bit shared library compilation with MMX2 by properly using PIC mangling.
patch by Alexander Strange, astrange ithinksw com

Originally committed as revision 26270 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
2008-03-22 18:22:53 +00:00