summaryrefslogtreecommitdiff
path: root/libswscale/output.c
Commit message (Collapse)AuthorAge
* Merge commit '92b099daf4b8ef93513e38b43899cb8458a2fde3'Michael Niedermayer2014-04-09
|\ | | | | | | | | | | | | | | | | | | * commit '92b099daf4b8ef93513e38b43899cb8458a2fde3': swscale: support converting YVYU422 pixel format Conflicts: libswscale/input.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: support converting YVYU422 pixel formatVittorio Giovara2014-04-07
| |
* | swscale: add full bgra64 supportMichael Niedermayer2014-04-02
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | swscale: add two spatially stable dithering methodsØyvind Kolås2014-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | Both of these dithering methods are from http://pippin.gimp.org/a_dither/ for GIF they can be considered better than bayer (provides more gray-levels), and spatial stability - often more than twice as good compression and less visual flicker than error diffusion methods (the methods also avoids error-shadow artifacts of diffusion dithers). These methods are similar to blue/green noise type dither masks; but are simple enough to generate their mask on the fly. They are still research work in progress; though more expensive to generate masks (which can be used in a LUT) like 'void and cluster' and similar methods will yield superior results
* | Merge commit 'aa2ba8c99e5708884a56aea9c1d96e014866f8a3'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'aa2ba8c99e5708884a56aea9c1d96e014866f8a3': swscale: Move extern declarations for tables to swscale_internal.h Conflicts: libswscale/output.c libswscale/swscale_internal.h libswscale/swscale_unscaled.c libswscale/utils.c libswscale/yuv2rgb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: Move extern declarations for tables to swscale_internal.hDiego Biurrun2013-08-15
| | | | | | | | Also add missing ff_ prefixes where necessary.
* | sws: add dither enumMichael Niedermayer2013-08-15
| | | | | | | | | | | | | | | | | | | | | | This allows specifying more dither algorithms without using up flags and without ambiguities. Also initialize the new field based on the flags and use it. Note, improving the logic of the checks is left to subsequent commits, this here only switches from flags to enum. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | swscale/output: silence warning about undefined 'ASSERT_LEVEL'Paul B Mahol2013-05-19
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | swscale/output: remove unused headerPaul B Mahol2013-05-19
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | sws/output: yuv2rgb_write() assert that alpha has the correct value in the ↵Michael Niedermayer2013-05-18
| | | | | | | | | | | | tables Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: init A1/A2 so that rgba64 ends with 0xffff in the absence of ↵Michael Niedermayer2013-05-18
| | | | | | | | | | | | alpha input Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | replace remaining PIX_FMT_* flags with AV_PIX_FMT_FLAG_*Michael Niedermayer2013-05-15
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | swscale/output: silence compiler warnings about uninitialized variablesMichael Niedermayer2013-05-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: remove offset/coef for alpha in rgba64Michael Niedermayer2013-05-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | swscale: RGBA64 outputPaul B Mahol2013-05-12
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output/yuv2gbrp_full_X_c(): silence warning about uninitialized variableMichael Niedermayer2013-05-10
| | | | | | | | | | | | clang did not show this one, so i missed it in the last batch Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: silence warnings about uninitialized use of variablesMichael Niedermayer2013-05-10
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libswscale: GBRAP input & output and GBRAP16 input supportPaul B Mahol2013-05-08
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | swscale/output: fix alpha scale in the new functionsMichael Niedermayer2013-04-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: add yuv2rgb_full_1_c_template()Michael Niedermayer2013-04-14
| | | | | | | | | | | | 7500->4500 cycles on sandybridge Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: add +yuv2rgb_full_2_c_template()Michael Niedermayer2013-04-14
| | | | | | | | | | | | 8100 cycles -> 5800 cycles on sandybridge Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws/output: factor yuv2rgb_write_full() outMichael Niedermayer2013-04-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'd6d5ef5534d582f9dbaf18ac2605cf5bb72cd821'Michael Niedermayer2013-02-10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd6d5ef5534d582f9dbaf18ac2605cf5bb72cd821': sws: GBRP9, GBRP10, and GBRP16 output support Conflicts: libswscale/output.c libswscale/utils.c tests/ref/lavfi/pixdesc tests/ref/lavfi/pixfmts_copy tests/ref/lavfi/pixfmts_null tests/ref/lavfi/pixfmts_scale tests/ref/lavfi/pixfmts_vflip Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * sws: GBRP9, GBRP10, and GBRP16 output supportMichael Niedermayer2013-02-09
| | | | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | Merge commit '05b0998f511ffa699407465d48c7d5805f746ad2'Michael Niedermayer2013-01-28
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '05b0998f511ffa699407465d48c7d5805f746ad2': dsputil: Fix error by not using redzone and register name swscale: GBRP output support Conflicts: libswscale/output.c libswscale/swscale.c libswscale/swscale_internal.h libswscale/utils.c tests/ref/lavfi/pixdesc tests/ref/lavfi/pixfmts_copy tests/ref/lavfi/pixfmts_null tests/ref/lavfi/pixfmts_scale tests/ref/lavfi/pixfmts_vflip Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: GBRP output supportMichael Niedermayer2013-01-27
| | | | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | sws: GBRP9, GBRP10 GBRP12 GBRP14 output supportMichael Niedermayer2013-01-26
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: GBRP output supportMichael Niedermayer2013-01-26
| | | | | | | | | | Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: fix ED mono dither black levelMichael Niedermayer2013-01-19
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: rgb/bgr 4/8 error diffusion ditherMichael Niedermayer2013-01-19
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: Support error diffusion dither for mono outputMichael Niedermayer2013-01-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | swscale: fix 12 and 14 bit YUV planar output with scaling.Michael Niedermayer2012-12-01
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '9953ff3cd844eb5f6d8dfce98cad94b78a0fc7dc'Michael Niedermayer2012-10-12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9953ff3cd844eb5f6d8dfce98cad94b78a0fc7dc': mpegvideo: fix indentation sws: do not use av_pix_fmt_descriptors directly. Conflicts: libavcodec/mpegvideo.c libswscale/swscale_internal.h libswscale/swscale_unscaled.c libswscale/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * sws: do not use av_pix_fmt_descriptors directly.Anton Khirnov2012-10-12
| |
* | Merge commit '716d413c13981da15323c7a3821860536eefdbbb'Michael Niedermayer2012-10-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '716d413c13981da15323c7a3821860536eefdbbb': Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat Conflicts: doc/examples/muxing.c ffmpeg.h ffmpeg_filter.c ffmpeg_opt.c ffplay.c ffprobe.c libavcodec/8bps.c libavcodec/aasc.c libavcodec/aura.c libavcodec/avcodec.h libavcodec/avs.c libavcodec/bfi.c libavcodec/bmp.c libavcodec/bmpenc.c libavcodec/c93.c libavcodec/cscd.c libavcodec/cyuv.c libavcodec/dpx.c libavcodec/dpxenc.c libavcodec/eatgv.c libavcodec/escape124.c libavcodec/ffv1.c libavcodec/flashsv.c libavcodec/fraps.c libavcodec/h264.c libavcodec/huffyuv.c libavcodec/iff.c libavcodec/imgconvert.c libavcodec/indeo3.c libavcodec/kmvc.c libavcodec/libopenjpegdec.c libavcodec/libopenjpegenc.c libavcodec/libx264.c libavcodec/ljpegenc.c libavcodec/mjpegdec.c libavcodec/mjpegenc.c libavcodec/motionpixels.c libavcodec/mpeg12.c libavcodec/mpeg12enc.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo_enc.c libavcodec/pamenc.c libavcodec/pcxenc.c libavcodec/pgssubdec.c libavcodec/pngdec.c libavcodec/pngenc.c libavcodec/pnm.c libavcodec/pnmdec.c libavcodec/pnmenc.c libavcodec/ptx.c libavcodec/qdrw.c libavcodec/qpeg.c libavcodec/qtrleenc.c libavcodec/raw.c libavcodec/rawdec.c libavcodec/rl2.c libavcodec/sgidec.c libavcodec/sgienc.c libavcodec/snowdec.c libavcodec/snowenc.c libavcodec/sunrast.c libavcodec/targa.c libavcodec/targaenc.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/tmv.c libavcodec/truemotion2.c libavcodec/utils.c libavcodec/vb.c libavcodec/vp3.c libavcodec/wnv1.c libavcodec/xl.c libavcodec/xwddec.c libavcodec/xwdenc.c libavcodec/yop.c libavdevice/v4l2.c libavdevice/x11grab.c libavfilter/avfilter.c libavfilter/avfilter.h libavfilter/buffersrc.c libavfilter/drawutils.c libavfilter/formats.c libavfilter/src_movie.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_format.c libavfilter/vf_hflip.c libavfilter/vf_lut.c libavfilter/vf_overlay.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavfilter/vf_transpose.c libavfilter/vf_yadif.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/movenc.c libavformat/mxf.h libavformat/utils.c libavformat/yuv4mpeg.c libavutil/imgutils.c libavutil/pixdesc.c libswscale/input.c libswscale/output.c libswscale/swscale_internal.h libswscale/swscale_unscaled.c libswscale/utils.c libswscale/x86/swscale_template.c libswscale/x86/yuv2rgb.c libswscale/x86/yuv2rgb_template.c libswscale/yuv2rgb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov2012-10-08
| |
* | sws/output: use unsigned variables where harmless overflows are expected.Michael Niedermayer2012-09-10
| | | | | | | | | | | | signed overflow is undefined in C ... Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-07-23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: v410dec: Implement explode mode support zerocodec: fix direct rendering. wav: init st to NULL to avoid a false-positive warning. wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit h264: refactor NAL decode loop RTMPTE protocol support RTMPE protocol support rtmp: Add ff_rtmp_calc_digest_pos() rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global swscale: add missing HAVE_INLINE_ASM check. lavfi: place x86 inline assembly under HAVE_INLINE_ASM. vc1: Add a test for interlaced field pictures swscale: Mark all init functions as av_cold swscale: x86: Drop pointless _mmx suffix from filenames lavf: use conditional notation for default codec in muxer declarations. swscale: place inline assembly bilinear scaler under HAVE_INLINE_ASM. dsputil: ppc: cosmetics: pretty-print dsputil: x86: add SHUFFLE_MASK_W macro configure: respect CC_O setting in check_cc Conflicts: Changelog configure libavcodec/v410dec.c libavcodec/zerocodec.c libavformat/asfenc.c libavformat/version.h libswscale/utils.c libswscale/x86/swscale.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: Mark all init functions as av_coldDiego Biurrun2012-07-23
| |
* | yuv2rgb: implement 15/16bit ordered ditherMichael Niedermayer2012-07-17
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: extend dither tables by 1 line so simpler arithmetic can be used to ↵Michael Niedermayer2012-07-17
| | | | | | | | | | | | address the next line Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | sws: remove cliping in yuv2rgb code.Michael Niedermayer2012-04-15
| | | | | | | | | | | | This code should not be needed and it slows things down. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: doc: Improve suggested Emacs settings for our coding style. utvideo: Remove unused variable 'src_size' mov: free memory on header parsing failure mov: fix leaking memory with multiple drefs. swscale: clip before assigning tables in RGB output functions. swscale: fix off-by-one in second coefficient in bilinear filters. Conflicts: libavformat/mov.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: clip before assigning tables in RGB output functions.Ronald S. Bultje2012-04-14
| |
| * swscale: fix off-by-one in second coefficient in bilinear filters.Ronald S. Bultje2012-04-14
| | | | | | | | | | If coefficient A is 12-bits xixed-point number "X", then the other coefficient is (1 << 12) - X, not (1 << 12) - X - 1.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: vsrc_buffer: fix check from 7ae7c41. libxvid: Reorder functions to avoid forward declarations; make functions static. libxvid: drop some pointless dead code wmal: vertical alignment cosmetics wmal: Warn about missing bitstream splicing feature and ask for sample. wmal: Skip seekable_frame_in_packet. wmal: Drop unused variable num_possible_block_size. avfiltergraph: make the AVFilterInOut alloc/free API public graphparser: allow specifying sws flags in the graph description. graphparser: fix the order of connecting unlabeled links. graphparser: add avfilter_graph_parse2(). vsrc_buffer: allow using a NULL buffer to signal EOF. swscale: handle last pixel if lines have an odd width. qdm2: fix a dubious pointer cast WMAL: Do not try to read rawpcm coefficients if bits is invalid mov: Fix detecting there is no sync sample. tiffdec: K&R cosmetics avf: has_duration does not check the global one dsputil: fix optimized emu_edge function on Win64. Conflicts: doc/APIchanges libavcodec/libxvid_rc.c libavcodec/libxvidff.c libavcodec/tiff.c libavcodec/wmalosslessdec.c libavfilter/avfiltergraph.h libavfilter/graphparser.c libavfilter/version.h libavfilter/vsrc_buffer.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: handle last pixel if lines have an odd width.Ronald S. Bultje2012-04-13
| | | | | | | | Fixes bug 270.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-05
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: h264: Factorize declaration of mb_sizes array. vsrc_buffer: when no frame is available, return an error instead of segfaulting. configure: add dl to frei0r extralibs. dsputil x86: use SSE float instruction instead of SSE2 integer equivalent dsputil x86: remove deprecated parameter from scalarproduct_int16 prototype vp8dsp x86: perform rounding shift with a single instruction fate: add BMP tests. swscale: handle complete dimensions for monoblack/white. aacenc: Mark deinterleave_input_samples argument as const. vf_unsharp: Mark readonly variable as const. h264: fix 4:2:2 PCM-macroblocks decoding Conflicts: configure libavcodec/h264.h libavcodec/x86/dsputil_mmx.c libavfilter/vf_unsharp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * swscale: handle complete dimensions for monoblack/white.Ronald S. Bultje2012-04-04
| | | | | | | | Fixes bug 269.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) sbrdsp.asm: convert all instructions to float/SSE ones. dv: cosmetics. dv: check buffer size before reading profile. Revert "AAC SBR: group some writes." udp: Print an error message if bind fails cook: extend channel uncoupling tables so the full bit range is covered. roqvideo: cosmetics. roqvideo: convert to bytestream2 API. dca: don't use av_clip_uintp2(). wmall: fix build with -DDEBUG enabled. smc: port to bytestream2 API. AAC SBR: group some writes. dsputil: remove shift parameter from scalarproduct_int16 SBR DSP: unroll sum_square rv34: remove dead code in intra availability check rv34: clean a bit availability checks. v4l2: update documentation tgq: convert to bytestream2 API. parser: remove forward declaration of MpegEncContext dca: prevent accessing static arrays with invalid indexes. ... Conflicts: doc/indevs.texi libavcodec/Makefile libavcodec/dca.c libavcodec/dvdata.c libavcodec/eatgq.c libavcodec/mmvideo.c libavcodec/roqvideodec.c libavcodec/smc.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>