aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/gif.c
Commit message (Collapse)AuthorAgeFilesLines
* gif: remove outdated comments.Clément Bœsch2013-04-181-10/+4
|
* lavc/gif: return more meaningful error code.Clément Bœsch2013-04-181-1/+1
|
* lavc/gif: merge two allocation checks.Clément Bœsch2013-04-181-4/+2
|
* gif: reindent after previous commits.Clément Bœsch2013-04-181-1/+1
|
* lavc/gif: crop image when possible.Clément Bœsch2013-04-181-9/+73
| | | | | | Increase compression when pictures are similar. -f lavfi testsrc=300: 61M -> 21M
* Cleanse GIF muxer and encoder.Clément Bœsch2013-04-181-44/+40
| | | | | | | | | | | | | | | | | This commit removes the badly duplicated code between the encoder and the muxer. That may sound surprising, but the encoder is now responsible from the encoding of the picture when muxing to a .gif file. It also does not require anymore a manual user intervention such as a -pix_fmt rgb24 to work properly. To summarize, output gif are now easier to generate, code is saner and simpler, and files are smaller (thanks to the lzw encoding which was unused so far with the default .gif output). We can certainly make things even better, but this is the first step. FATE is updated because of the output being produced by the encoder and not the muxer (no lzw in the muxer), and in the seek test only the size mismatches. Fixes Ticket #2262
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-04-111-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Move misplaced file author information where it belongs Conflicts: libavcodec/adpcm.c libavcodec/adpcmenc.c libavcodec/gif.c libavcodec/x86/dsputilenc_mmx.c libavcodec/x86/fmtconvert_init.c libavformat/au.c libavformat/gif.c libavformat/mov.c libavformat/nsvdec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Move misplaced file author information where it belongsDiego Biurrun2013-04-111-2/+2
| |
* | lavc/gif: remove some obsolete/irrelevant chunksPaul B Mahol2013-01-261-7/+0
| | | | | | | | | | | | | | | | Some code was copy pasted from muxer, which still have same comments but unlike encoder they are still relevant to muxer. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | Merge commit '716d413c13981da15323c7a3821860536eefdbbb'Michael Niedermayer2012-10-081-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-081-3/+3
| |
* | Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'Michael Niedermayer2012-08-071-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '36ef5369ee9b336febc2c270f8718cec4476cb85': Replace all CODEC_ID_* with AV_CODEC_ID_* lavc: add AV prefix to codec ids. Conflicts: doc/APIchanges doc/examples/decoding_encoding.c doc/examples/muxing.c ffmpeg.c ffprobe.c ffserver.c libavcodec/8svx.c libavcodec/avcodec.h libavcodec/dnxhd_parser.c libavcodec/dvdsubdec.c libavcodec/error_resilience.c libavcodec/h263dec.c libavcodec/libvorbisenc.c libavcodec/mjpeg_parser.c libavcodec/mjpegenc.c libavcodec/mpeg12.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/pcm.c libavcodec/r210dec.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/version.h libavdevice/alsa-audio-dec.c libavdevice/bktr.c libavdevice/v4l2.c libavformat/asfdec.c libavformat/asfenc.c libavformat/avformat.h libavformat/avidec.c libavformat/caf.c libavformat/electronicarts.c libavformat/flacdec.c libavformat/flvdec.c libavformat/flvenc.c libavformat/framecrcenc.c libavformat/img2.c libavformat/img2dec.c libavformat/img2enc.c libavformat/ipmovie.c libavformat/isom.c libavformat/matroska.c libavformat/matroskadec.c libavformat/matroskaenc.c libavformat/mov.c libavformat/movenc.c libavformat/mp3dec.c libavformat/mpeg.c libavformat/mpegts.c libavformat/mxf.c libavformat/mxfdec.c libavformat/mxfenc.c libavformat/nsvdec.c libavformat/nut.c libavformat/oggenc.c libavformat/pmpdec.c libavformat/rawdec.c libavformat/rawenc.c libavformat/riff.c libavformat/sdp.c libavformat/utils.c libavformat/vocenc.c libavformat/wtv.c libavformat/xmv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-071-1/+1
| |
* | gifenc: support resolutions up to 65535x65535Piotr Bandurski2012-05-311-0/+5
| | | | | | | | | | | | Maybe someone can add a check in the second gif encoder (rgb24), because I'm not sure where it should be added. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-04-071-2/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: rtpdec_asf: Set the no_resync_search option for the chained asf demuxer asfdec: Add an option for not searching for the packet markers cosmetics: Clean up the tiffenc pix_fmts declaration to match the style of others cosmetics: Align codec declarations cosmetics: Convert mimic.c to utf-8 avconv: remove an unused function parameter. avconv: remove now pointless variables. avconv: drop support for building without libavfilter. nellymoserenc: fix crash due to memsetting the wrong area. libavformat: Only require first packet to be known for audio/video streams avplay: Don't try to scale timestamps if the tb isn't set Conflicts: Changelog configure ffmpeg.c libavcodec/aacenc.c libavcodec/bmpenc.c libavcodec/dnxhddec.c libavcodec/dnxhdenc.c libavcodec/ffv1.c libavcodec/flacenc.c libavcodec/fraps.c libavcodec/huffyuv.c libavcodec/libopenjpegdec.c libavcodec/mpeg12enc.c libavcodec/mpeg4videodec.c libavcodec/pamenc.c libavcodec/pgssubdec.c libavcodec/pngenc.c libavcodec/qtrleenc.c libavcodec/rawdec.c libavcodec/sgienc.c libavcodec/tiffenc.c libavcodec/v210dec.c libavcodec/wmv2dec.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cosmetics: Align codec declarationsMartin Storsjö2012-04-061-2/+5
| | | | | | | | | | | | | | Also break some long lines, remove codec function placeholder comments and add spaces in sample/pixel format lists. Signed-off-by: Martin Storsjö <martin@martin.st>
* | cosmetics: remove superfluous curly bracketsPaul B Mahol2012-03-231-2/+1
| | | | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | gifenc: switch to ff_alloc_packet2()Michael Niedermayer2012-03-221-2/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-031-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) amrwb: remove duplicate arguments from extrapolate_isf(). amrwb: error out early if mode is invalid. h264: change underread for 10bit QPEL to overread. matroska: check buffer size for RM-style byte reordering. vp8: disable mmx functions with sse/sse2 counterparts on x86-64. vp8: change int stride to ptrdiff_t stride. wma: fix invalid buffer size assumptions causing random overreads. Windows Media Audio Lossless decoder rv10/20: Fix slice overflow with checked bitstream reader. h263dec: Disallow width/height changing with frame threads. rv10/20: Fix a buffer overread caused by losing track of the remaining buffer size. rmdec: Honor .RMF tag size rather than assuming 18. g722: Fix the QMF scaling r3d: don't set codec timebase. electronicarts: set timebase for tgv video. electronicarts: parse the framerate for cmv video. ogg: don't set codec timebase electronicarts: don't set codec timebase avs: don't set codec timebase wavpack: Fix an integer overflow ... Conflicts: libavcodec/arm/vp8dsp_init_arm.c libavcodec/fraps.c libavcodec/h264.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/msmpeg4.c libavcodec/pnmdec.c libavcodec/qpeg.c libavcodec/rawenc.c libavcodec/ulti.c libavcodec/vcr1.c libavcodec/version.h libavcodec/wmalosslessdec.c libavformat/electronicarts.c libswscale/ppc/yuv2rgb_altivec.c tests/ref/acodec/g722 tests/ref/fate/ea-cmv Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unnecessary AVFrame pointer casts.Diego Biurrun2012-03-011-1/+1
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-241-6/+19
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (40 commits) swf: check return values for av_get/new_packet(). wavpack: Don't shift minclip/maxclip rtpenc: Expose the max packet size via an avoption rtpenc: Move max_packet_size to a context variable rtpenc: Add an option for not sending RTCP packets lavc: drop encode() support for video. snowenc: switch to encode2(). snowenc: don't abuse input picture for storing information. a64multienc: switch to encode2(). a64multienc: don't write into output buffer when there's no output. libxvid: switch to encode2(). tiffenc: switch to encode2(). tiffenc: properly forward error codes in encode_frame(). lavc: drop libdirac encoder. gifenc: switch to encode2(). libvpxenc: switch to encode2(). flashsvenc: switch to encode2(). Remove libpostproc. lcl: don't overwrite input memory. swscale: take first/lastline over/underflows into account for MMX. ... Conflicts: .gitignore Makefile cmdutils.c configure doc/APIchanges libavcodec/Makefile libavcodec/allcodecs.c libavcodec/libdiracenc.c libavcodec/libxvidff.c libavcodec/qtrleenc.c libavcodec/tiffenc.c libavcodec/utils.c libavformat/mov.c libavformat/movenc.c libpostproc/Makefile libpostproc/postprocess.c libpostproc/postprocess.h libpostproc/postprocess_altivec_template.c libpostproc/postprocess_internal.h libpostproc/postprocess_template.c libswscale/swscale.c libswscale/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * gifenc: switch to encode2().Anton Khirnov2012-02-231-6/+19
| |
* | Mark one colour as transparent in the gif image encoderCarl Eugen Hoyos2011-12-081-1/+15
| | | | | | | | | | | | | | if the input palette contains at least one colour that is more than 50% transparent. Fixes ticket #715.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-07-301-7/+7
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata. H.264: tweak some other x86 asm for Atom probe: Fix insane flow control. mpegts: remove invalid error check s302m: use nondeprecated audio sample format API lavc: use designated initialisers for all codecs. x86: cabac: add operand size suffixes missing from 6c32576 Conflicts: libavcodec/ac3enc_float.c libavcodec/flacenc.c libavcodec/frwu.c libavcodec/pictordec.c libavcodec/qtrleenc.c libavcodec/v210enc.c libavcodec/wmv2dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: use designated initialisers for all codecs.Anton Khirnov2011-07-291-7/+7
| | | | | | | | It's more readable and less prone to breakage.
| * Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini2011-05-021-1/+1
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.Diego Elio Pettenò2011-01-261-1/+1
| | | | | | | | | | | | | | None of these symbols should be accessed directly, so declare them as hidden. Signed-off-by: Mans Rullgard <mans@mansr.com>
* | replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*Stefano Sabatini2011-05-021-1/+1
| |
* | Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.Diego Elio Pettenò2011-01-281-1/+1
|/ | | | | | | | None of these symbols should be accessed directly, so declare them as hidden. Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit d36beb3f6902b1217beda576aa18abf7eb72b03c)
* In gif encoder, fix uninitialized value, patch by Clément Bœsch, ubitux at ↵Clément Bœsch2011-01-101-1/+1
| | | | | | gmail dot com Originally committed as revision 26303 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace all remaining occurrences of AVERROR_NOMEM withStefano Sabatini2010-04-031-2/+2
| | | | | | | | | AVERROR(ENOMEM). AVERROR_NOMEM is deprecated and will be dropped at the next libavutil major bump. Originally committed as revision 22791 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Define AVMediaType enum, and use it instead of enum CodecType, whichStefano Sabatini2010-03-301-1/+1
| | | | | | is deprecated and will be dropped at the next major bump. Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
* use lzw compression in gif encoderBaptiste Coudurier2009-12-031-40/+42
| | | | Originally committed as revision 20723 to svn://svn.ffmpeg.org/ffmpeg/trunk
* pass avctx as argument instead of width and heightBaptiste Coudurier2009-12-021-14/+12
| | | | Originally committed as revision 20710 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove useless paramsBaptiste Coudurier2009-12-021-2/+2
| | | | Originally committed as revision 20709 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove useless paramsBaptiste Coudurier2009-12-021-4/+4
| | | | Originally committed as revision 20708 to svn://svn.ffmpeg.org/ffmpeg/trunk
* move private context declaration at the topBaptiste Coudurier2009-12-021-4/+4
| | | | Originally committed as revision 20707 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Mark all pix_fmts and supported_framerates compound literals as const.Reimar Döffinger2009-09-061-1/+1
| | | | | | Makes no difference for gcc but at least icc can put them in .rodata then. Originally committed as revision 19789 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename pbBufPtr() to put_bits_ptr().Stefano Sabatini2009-04-131-3/+3
| | | | | | | The new name is more readable and consistent with the FFmpeg naming style. Originally committed as revision 18497 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split bitstream.h, put the bitstream writer stuff in the new fileStefano Sabatini2009-04-121-1/+1
| | | | | | put_bits.h. Originally committed as revision 18461 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove no more needed fields in GIFContext, patch by Daniel Verkamp, daniel ↵Daniel Verkamp2009-02-091-2/+0
| | | | | | at drv dot nu Originally committed as revision 17096 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove dead rgb24 code, gif encoder now directly takes palette, patch by ↵Daniel Verkamp2009-02-091-76/+5
| | | | | | Daniel Verkamp, daniel at drv dot nu Originally committed as revision 17095 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove dead netscape loop header code in gif encoder, patch by Daniel ↵Daniel Verkamp2009-02-091-38/+2
| | | | | | Verkamp, daniel at drv dot nu Originally committed as revision 17094 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix list of input pix_fmts supported by GIF. This makes it work with swscale.Michael Niedermayer2009-02-061-1/+1
| | | | | | | It also allows encoding GIF with a 4-bit palette and with a graycale one as a side effect. Originally committed as revision 17019 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cosmetics: Remove pointless period after copyright statement non-sentences.Diego Biurrun2009-01-191-3/+3
| | | | Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
* cleanup gif, use BISTREAM_WRITER_LEBaptiste Coudurier2009-01-141-66/+9
| | | | Originally committed as revision 16591 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make AVCodec long_names definition conditional depending on CONFIG_SMALL.Stefano Sabatini2008-06-121-1/+1
| | | | Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace some occurrences of -1 with PIX_FMT_NONE.Carl Eugen Hoyos2008-05-111-1/+1
| | | | | | Fixes icc warning #188: enumerated type mixed with another type Originally committed as revision 13130 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add long names to AVCodec declarations.Stefano Sabatini2008-04-271-0/+1
| | | | | | patch by Stefano Sabatini, stefano.sabatini-lala poste it Originally committed as revision 13009 to svn://svn.ffmpeg.org/ffmpeg/trunk