mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-14 22:22:59 +02:00
avformat/img2dec: add GEM Raster image demuxer
Signed-off-by: Peter Ross <pross@xvid.org>
This commit is contained in:
parent
60a9d3778f
commit
4ff8840697
@ -499,6 +499,7 @@ extern const AVInputFormat ff_image_cri_pipe_demuxer;
|
|||||||
extern const AVInputFormat ff_image_dds_pipe_demuxer;
|
extern const AVInputFormat ff_image_dds_pipe_demuxer;
|
||||||
extern const AVInputFormat ff_image_dpx_pipe_demuxer;
|
extern const AVInputFormat ff_image_dpx_pipe_demuxer;
|
||||||
extern const AVInputFormat ff_image_exr_pipe_demuxer;
|
extern const AVInputFormat ff_image_exr_pipe_demuxer;
|
||||||
|
extern const AVInputFormat ff_image_gem_pipe_demuxer;
|
||||||
extern const AVInputFormat ff_image_gif_pipe_demuxer;
|
extern const AVInputFormat ff_image_gif_pipe_demuxer;
|
||||||
extern const AVInputFormat ff_image_j2k_pipe_demuxer;
|
extern const AVInputFormat ff_image_j2k_pipe_demuxer;
|
||||||
extern const AVInputFormat ff_image_jpeg_pipe_demuxer;
|
extern const AVInputFormat ff_image_jpeg_pipe_demuxer;
|
||||||
|
@ -84,6 +84,9 @@ const IdStrMap ff_img_tags[] = {
|
|||||||
{ AV_CODEC_ID_XPM, "xpm" },
|
{ AV_CODEC_ID_XPM, "xpm" },
|
||||||
{ AV_CODEC_ID_XFACE, "xface" },
|
{ AV_CODEC_ID_XFACE, "xface" },
|
||||||
{ AV_CODEC_ID_XWD, "xwd" },
|
{ AV_CODEC_ID_XWD, "xwd" },
|
||||||
|
{ AV_CODEC_ID_GEM, "img" },
|
||||||
|
{ AV_CODEC_ID_GEM, "ximg" },
|
||||||
|
{ AV_CODEC_ID_GEM, "timg" },
|
||||||
{ AV_CODEC_ID_NONE, NULL }
|
{ AV_CODEC_ID_NONE, NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1105,6 +1105,27 @@ static int photocd_probe(const AVProbeData *p)
|
|||||||
return AVPROBE_SCORE_MAX - 1;
|
return AVPROBE_SCORE_MAX - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int gem_probe(const AVProbeData *p)
|
||||||
|
{
|
||||||
|
const uint8_t *b = p->buf;
|
||||||
|
int ret = 0;
|
||||||
|
if ( AV_RB16(b ) >= 1 && AV_RB16(b ) <= 3 &&
|
||||||
|
AV_RB16(b + 2) >= 8 && AV_RB16(b + 2) <= 779 &&
|
||||||
|
(AV_RB16(b + 4) > 0 || AV_RB16(b + 4) <= 8) &&
|
||||||
|
(AV_RB16(b + 6) > 0 || AV_RB16(b + 6) <= 8) &&
|
||||||
|
AV_RB16(b + 8) &&
|
||||||
|
AV_RB16(b + 10) &&
|
||||||
|
AV_RB16(b + 12) &&
|
||||||
|
AV_RB16(b + 14)) {
|
||||||
|
ret = AVPROBE_SCORE_EXTENSION / 4;
|
||||||
|
if (AV_RN32(b + 16) == AV_RN32("STTT") ||
|
||||||
|
AV_RN32(b + 16) == AV_RN32("TIMG") ||
|
||||||
|
AV_RN32(b + 16) == AV_RN32("XIMG"))
|
||||||
|
ret += 1;
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
#define IMAGEAUTO_DEMUXER(imgname, codecid)\
|
#define IMAGEAUTO_DEMUXER(imgname, codecid)\
|
||||||
const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
|
const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
|
||||||
.name = AV_STRINGIFY(imgname) "_pipe",\
|
.name = AV_STRINGIFY(imgname) "_pipe",\
|
||||||
@ -1123,6 +1144,7 @@ IMAGEAUTO_DEMUXER(cri, AV_CODEC_ID_CRI)
|
|||||||
IMAGEAUTO_DEMUXER(dds, AV_CODEC_ID_DDS)
|
IMAGEAUTO_DEMUXER(dds, AV_CODEC_ID_DDS)
|
||||||
IMAGEAUTO_DEMUXER(dpx, AV_CODEC_ID_DPX)
|
IMAGEAUTO_DEMUXER(dpx, AV_CODEC_ID_DPX)
|
||||||
IMAGEAUTO_DEMUXER(exr, AV_CODEC_ID_EXR)
|
IMAGEAUTO_DEMUXER(exr, AV_CODEC_ID_EXR)
|
||||||
|
IMAGEAUTO_DEMUXER(gem, AV_CODEC_ID_GEM)
|
||||||
IMAGEAUTO_DEMUXER(gif, AV_CODEC_ID_GIF)
|
IMAGEAUTO_DEMUXER(gif, AV_CODEC_ID_GIF)
|
||||||
IMAGEAUTO_DEMUXER(j2k, AV_CODEC_ID_JPEG2000)
|
IMAGEAUTO_DEMUXER(j2k, AV_CODEC_ID_JPEG2000)
|
||||||
IMAGEAUTO_DEMUXER(jpeg, AV_CODEC_ID_MJPEG)
|
IMAGEAUTO_DEMUXER(jpeg, AV_CODEC_ID_MJPEG)
|
||||||
|
@ -32,8 +32,8 @@
|
|||||||
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
|
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
|
||||||
// Also please add any ticket numbers that you believe might be affected here
|
// Also please add any ticket numbers that you believe might be affected here
|
||||||
#define LIBAVFORMAT_VERSION_MAJOR 59
|
#define LIBAVFORMAT_VERSION_MAJOR 59
|
||||||
#define LIBAVFORMAT_VERSION_MINOR 5
|
#define LIBAVFORMAT_VERSION_MINOR 6
|
||||||
#define LIBAVFORMAT_VERSION_MICRO 101
|
#define LIBAVFORMAT_VERSION_MICRO 100
|
||||||
|
|
||||||
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
||||||
LIBAVFORMAT_VERSION_MINOR, \
|
LIBAVFORMAT_VERSION_MINOR, \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user