Browse Source

avcodec: add BitJazz SheerVideo decoder

Signed-off-by: Paul B Mahol <onemda@gmail.com>
tags/n3.1
Paul B Mahol 9 years ago
parent
commit
fdf832a986
9 changed files with 1905 additions and 2 deletions
  1. +1
    -0
      Changelog
  2. +1
    -0
      doc/general.texi
  3. +1
    -0
      libavcodec/Makefile
  4. +1
    -0
      libavcodec/allcodecs.c
  5. +1
    -0
      libavcodec/avcodec.h
  6. +7
    -0
      libavcodec/codec_desc.c
  7. +1882
    -0
      libavcodec/sheervideo.c
  8. +2
    -2
      libavcodec/version.h
  9. +9
    -0
      libavformat/isom.c

+ 1
- 0
Changelog View File

@@ -39,6 +39,7 @@ version <next>:
- MTAF demuxer and decoder
- MagicYUV decoder
- OpenExr improvements (tile data and B44/B44A support)
- BitJazz SheerVideo decoder

version 3.0:
- Common Encryption (CENC) MP4 encoding and decoding support


+ 1
- 0
doc/general.texi View File

@@ -644,6 +644,7 @@ following image formats are supported:
@item Bethesda VID video @tab @tab X
@tab Used in some games from Bethesda Softworks.
@item Bink Video @tab @tab X
@item BitJazz SheerVideo @tab @tab X
@item Bitmap Brothers JV video @tab @tab X
@item y41p Brooktree uncompressed 4:1:1 12-bit @tab X @tab X
@item Brute Force & Ignorance @tab @tab X


+ 1
- 0
libavcodec/Makefile View File

@@ -474,6 +474,7 @@ OBJS-$(CONFIG_SDX2_DPCM_DECODER) += dpcm.o
OBJS-$(CONFIG_SGI_DECODER) += sgidec.o
OBJS-$(CONFIG_SGI_ENCODER) += sgienc.o rle.o
OBJS-$(CONFIG_SGIRLE_DECODER) += sgirledec.o
OBJS-$(CONFIG_SHEERVIDEO_DECODER) += sheervideo.o
OBJS-$(CONFIG_SHORTEN_DECODER) += shorten.o
OBJS-$(CONFIG_SIPR_DECODER) += sipr.o acelp_pitch_delay.o \
celp_math.o acelp_vectors.o \


+ 1
- 0
libavcodec/allcodecs.c View File

@@ -294,6 +294,7 @@ void avcodec_register_all(void)
REGISTER_DECODER(SDX2_DPCM, sdx2_dpcm);
REGISTER_ENCDEC (SGI, sgi);
REGISTER_DECODER(SGIRLE, sgirle);
REGISTER_DECODER(SHEERVIDEO, sheervideo);
REGISTER_DECODER(SMACKER, smacker);
REGISTER_DECODER(SMC, smc);
REGISTER_DECODER(SMVJPEG, smvjpeg);


+ 1
- 0
libavcodec/avcodec.h View File

@@ -407,6 +407,7 @@ enum AVCodecID {
AV_CODEC_ID_TRUEMOTION2RT,
AV_CODEC_ID_M101,
AV_CODEC_ID_MAGICYUV,
AV_CODEC_ID_SHEERVIDEO,

/* various PCM "codecs" */
AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs


+ 7
- 0
libavcodec/codec_desc.c View File

@@ -1549,6 +1549,13 @@ static const AVCodecDescriptor codec_descriptors[] = {
.long_name = NULL_IF_CONFIG_SMALL("MagicYUV Lossless Video"),
.props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
},
{
.id = AV_CODEC_ID_SHEERVIDEO,
.type = AVMEDIA_TYPE_VIDEO,
.name = "sheervideo",
.long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
.props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS,
},

/* various PCM "codecs" */
{


+ 1882
- 0
libavcodec/sheervideo.c
File diff suppressed because it is too large
View File


+ 2
- 2
libavcodec/version.h View File

@@ -28,8 +28,8 @@
#include "libavutil/version.h"

#define LIBAVCODEC_VERSION_MAJOR 57
#define LIBAVCODEC_VERSION_MINOR 44
#define LIBAVCODEC_VERSION_MICRO 101
#define LIBAVCODEC_VERSION_MINOR 45
#define LIBAVCODEC_VERSION_MICRO 100

#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \


+ 9
- 0
libavformat/isom.c View File

@@ -277,6 +277,15 @@ const AVCodecTag ff_codec_movvideo_tags[] = {
{ AV_CODEC_ID_MAGICYUV, MKTAG('M', '8', 'Y', '4') },
{ AV_CODEC_ID_MAGICYUV, MKTAG('M', '8', 'Y', 'A') },

{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '0') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '1') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '2') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '3') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '4') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '5') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '6') },
{ AV_CODEC_ID_SHEERVIDEO, MKTAG('S', 'h', 'r', '7') },

{ AV_CODEC_ID_NONE, 0 },
};



Loading…
Cancel
Save