You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master: lavf/img2dec: Autodetect qdraw images. lavc/qdrw: Also support real-world qdraw images. Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -124,6 +124,10 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
int w, h, ret;
|
int w, h, ret;
|
||||||
|
|
||||||
bytestream2_init(&gbc, avpkt->data, avpkt->size);
|
bytestream2_init(&gbc, avpkt->data, avpkt->size);
|
||||||
|
if ( avpkt->size >= 552
|
||||||
|
&& AV_RB32(&avpkt->data[ 10]) != 0x001102FF
|
||||||
|
&& AV_RB32(&avpkt->data[522]) == 0x001102FF)
|
||||||
|
bytestream2_skip(&gbc, 512);
|
||||||
|
|
||||||
/* smallest PICT header */
|
/* smallest PICT header */
|
||||||
if (bytestream2_get_bytes_left(&gbc) < 40) {
|
if (bytestream2_get_bytes_left(&gbc) < 40) {
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
#define LIBAVCODEC_VERSION_MAJOR 56
|
#define LIBAVCODEC_VERSION_MAJOR 56
|
||||||
#define LIBAVCODEC_VERSION_MINOR 37
|
#define LIBAVCODEC_VERSION_MINOR 37
|
||||||
#define LIBAVCODEC_VERSION_MICRO 101
|
#define LIBAVCODEC_VERSION_MICRO 102
|
||||||
|
|
||||||
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
||||||
LIBAVCODEC_VERSION_MINOR, \
|
LIBAVCODEC_VERSION_MINOR, \
|
||||||
|
@@ -206,6 +206,7 @@ OBJS-$(CONFIG_IMAGE_JPEG_PIPE_DEMUXER) += img2dec.o img2.o
|
|||||||
OBJS-$(CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_JPEGLS_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
OBJS-$(CONFIG_IMAGE_PICTOR_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_PICTOR_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
OBJS-$(CONFIG_IMAGE_PNG_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_PNG_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
|
OBJS-$(CONFIG_IMAGE_QDRAW_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
OBJS-$(CONFIG_IMAGE_SGI_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_SGI_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
OBJS-$(CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_SUNRAST_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
OBJS-$(CONFIG_IMAGE_TIFF_PIPE_DEMUXER) += img2dec.o img2.o
|
OBJS-$(CONFIG_IMAGE_TIFF_PIPE_DEMUXER) += img2dec.o img2.o
|
||||||
|
@@ -339,6 +339,7 @@ void av_register_all(void)
|
|||||||
REGISTER_DEMUXER (IMAGE_JPEGLS_PIPE, image_jpegls_pipe);
|
REGISTER_DEMUXER (IMAGE_JPEGLS_PIPE, image_jpegls_pipe);
|
||||||
REGISTER_DEMUXER (IMAGE_PICTOR_PIPE, image_pictor_pipe);
|
REGISTER_DEMUXER (IMAGE_PICTOR_PIPE, image_pictor_pipe);
|
||||||
REGISTER_DEMUXER (IMAGE_PNG_PIPE, image_png_pipe);
|
REGISTER_DEMUXER (IMAGE_PNG_PIPE, image_png_pipe);
|
||||||
|
REGISTER_DEMUXER (IMAGE_QDRAW_PIPE, image_qdraw_pipe);
|
||||||
REGISTER_DEMUXER (IMAGE_SGI_PIPE, image_sgi_pipe);
|
REGISTER_DEMUXER (IMAGE_SGI_PIPE, image_sgi_pipe);
|
||||||
REGISTER_DEMUXER (IMAGE_SUNRAST_PIPE, image_sunrast_pipe);
|
REGISTER_DEMUXER (IMAGE_SUNRAST_PIPE, image_sunrast_pipe);
|
||||||
REGISTER_DEMUXER (IMAGE_TIFF_PIPE, image_tiff_pipe);
|
REGISTER_DEMUXER (IMAGE_TIFF_PIPE, image_tiff_pipe);
|
||||||
|
@@ -707,6 +707,16 @@ static int jpegls_probe(AVProbeData *p)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int qdraw_probe(AVProbeData *p)
|
||||||
|
{
|
||||||
|
const uint8_t *b = p->buf;
|
||||||
|
|
||||||
|
if (!b[10] && AV_RB32(b+11) == 0x1102ff0c && !b[15] ||
|
||||||
|
p->buf_size >= 528 && !b[522] && AV_RB32(b+523) == 0x1102ff0c && !b[527])
|
||||||
|
return AVPROBE_SCORE_EXTENSION + 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int pictor_probe(AVProbeData *p)
|
static int pictor_probe(AVProbeData *p)
|
||||||
{
|
{
|
||||||
const uint8_t *b = p->buf;
|
const uint8_t *b = p->buf;
|
||||||
@@ -793,6 +803,7 @@ IMAGEAUTO_DEMUXER(jpeg, AV_CODEC_ID_MJPEG)
|
|||||||
IMAGEAUTO_DEMUXER(jpegls, AV_CODEC_ID_JPEGLS)
|
IMAGEAUTO_DEMUXER(jpegls, AV_CODEC_ID_JPEGLS)
|
||||||
IMAGEAUTO_DEMUXER(pictor, AV_CODEC_ID_PICTOR)
|
IMAGEAUTO_DEMUXER(pictor, AV_CODEC_ID_PICTOR)
|
||||||
IMAGEAUTO_DEMUXER(png, AV_CODEC_ID_PNG)
|
IMAGEAUTO_DEMUXER(png, AV_CODEC_ID_PNG)
|
||||||
|
IMAGEAUTO_DEMUXER(qdraw, AV_CODEC_ID_QDRAW)
|
||||||
IMAGEAUTO_DEMUXER(sgi, AV_CODEC_ID_SGI)
|
IMAGEAUTO_DEMUXER(sgi, AV_CODEC_ID_SGI)
|
||||||
IMAGEAUTO_DEMUXER(sunrast, AV_CODEC_ID_SUNRAST)
|
IMAGEAUTO_DEMUXER(sunrast, AV_CODEC_ID_SUNRAST)
|
||||||
IMAGEAUTO_DEMUXER(tiff, AV_CODEC_ID_TIFF)
|
IMAGEAUTO_DEMUXER(tiff, AV_CODEC_ID_TIFF)
|
||||||
|
@@ -30,8 +30,8 @@
|
|||||||
#include "libavutil/version.h"
|
#include "libavutil/version.h"
|
||||||
|
|
||||||
#define LIBAVFORMAT_VERSION_MAJOR 56
|
#define LIBAVFORMAT_VERSION_MAJOR 56
|
||||||
#define LIBAVFORMAT_VERSION_MINOR 31
|
#define LIBAVFORMAT_VERSION_MINOR 32
|
||||||
#define LIBAVFORMAT_VERSION_MICRO 102
|
#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, \
|
||||||
|
Reference in New Issue
Block a user