Cleanse GIF muxer and encoder.
authorClément Bœsch <ubitux@gmail.com>
Wed, 17 Apr 2013 02:20:48 +0000 (04:20 +0200)
committerClément Bœsch <ubitux@gmail.com>
Wed, 17 Apr 2013 22:24:25 +0000 (00:24 +0200)
commit635389ccfa96cff33ece7bfbb1e9fe5e9a0c21a8
tree1925ba2c644f3443c6a842d65135ada6226d4eaa
parent1efcab02b6c717567c370239b5fc94ac77095079
Cleanse GIF muxer and encoder.

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
libavcodec/gif.c
libavformat/gif.c
libavformat/img2.c
tests/ref/lavf/gif
tests/ref/seek/lavf-gif