Mercurial > libavformat.hg
changeset 864:00a3ba030166 libavformat
support for FLX and DTA extensions in the FLIC format, courtesy of
Steven Johnson (mplayer -at- sakuraindustries.com)
author | melanson |
---|---|
date | Thu, 13 Oct 2005 04:35:31 +0000 |
parents | 227caa55d8ea |
children | 1646098f8e26 |
files | flic.c |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/flic.c Thu Oct 13 04:31:55 2005 +0000 +++ b/flic.c Thu Oct 13 04:35:31 2005 +0000 @@ -33,6 +33,8 @@ #define FLIC_FILE_MAGIC_1 0xAF11 #define FLIC_FILE_MAGIC_2 0xAF12 +#define FLIC_FILE_MAGIC_3 0xAF44 /* Flic Type for Extended FLX Format which + originated in Dave's Targa Animator (DTA) */ #define FLIC_CHUNK_MAGIC_1 0xF1FA #define FLIC_CHUNK_MAGIC_2 0xF5FA #define FLIC_MC_PTS_INC 6000 /* pts increment for Magic Carpet game FLIs */ @@ -56,7 +58,8 @@ magic_number = LE_16(&p->buf[4]); if ((magic_number != FLIC_FILE_MAGIC_1) && - (magic_number != FLIC_FILE_MAGIC_2)) + (magic_number != FLIC_FILE_MAGIC_2) && + (magic_number != FLIC_FILE_MAGIC_3)) return 0; return AVPROBE_SCORE_MAX; @@ -129,7 +132,8 @@ * therefore, the frame pts increment = n * 1285.7 */ flic->frame_pts_inc = speed * 1285.7; - } else if (magic_number == FLIC_FILE_MAGIC_2) { + } else if ((magic_number == FLIC_FILE_MAGIC_2) || + (magic_number == FLIC_FILE_MAGIC_3)) { /* * in this case, the speed (n) is number of milliseconds between frames: * @@ -206,7 +210,7 @@ static AVInputFormat flic_iformat = { "flic", - "FLI/FLC animation format", + "FLI/FLC/FLX animation format", sizeof(FlicDemuxContext), flic_probe, flic_read_header,