summaryrefslogtreecommitdiff
path: root/libavformat/img2dec.c
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2022-03-19 01:22:23 +0100
committerMarton Balint <cus@passwd.hu>2022-04-10 20:12:23 +0200
commit013d774e225c685cf2a9674f4c5dc9bb13941cb4 (patch)
tree25f14d51dbbcc4b30a9a71db020c0fcb882cb6a0 /libavformat/img2dec.c
parenta4570d7a66da772d2f530980a60ef5057750f8e6 (diff)
avcodec/vbndec: add VBN decoder
Add support for decoding Vizrt Binary Image (VBN) files. LZW-compressed data is not supported yet. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat/img2dec.c')
-rw-r--r--libavformat/img2dec.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c
index b9c06c5b54..551b9d508e 100644
--- a/libavformat/img2dec.c
+++ b/libavformat/img2dec.c
@@ -37,6 +37,7 @@
#include "internal.h"
#include "img2.h"
#include "libavcodec/mjpeg.h"
+#include "libavcodec/vbn.h"
#include "libavcodec/xwd.h"
#include "subtitles.h"
@@ -1131,6 +1132,16 @@ static int gem_probe(const AVProbeData *p)
return 0;
}
+static int vbn_probe(const AVProbeData *p)
+{
+ const uint8_t *b = p->buf;
+ if (AV_RL32(b ) == VBN_MAGIC &&
+ AV_RL32(b + 4) == VBN_MAJOR &&
+ AV_RL32(b + 8) == VBN_MINOR)
+ return AVPROBE_SCORE_MAX - 1;
+ return 0;
+}
+
#define IMAGEAUTO_DEMUXER_0(imgname, codecid)
#define IMAGEAUTO_DEMUXER_1(imgname, codecid)\
const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
@@ -1181,6 +1192,7 @@ IMAGEAUTO_DEMUXER(sgi, SGI)
IMAGEAUTO_DEMUXER(sunrast, SUNRAST)
IMAGEAUTO_DEMUXER(svg, SVG)
IMAGEAUTO_DEMUXER(tiff, TIFF)
+IMAGEAUTO_DEMUXER(vbn, VBN)
IMAGEAUTO_DEMUXER(webp, WEBP)
IMAGEAUTO_DEMUXER(xbm, XBM)
IMAGEAUTO_DEMUXER(xpm, XPM)