FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Functions | Variables
sheervideo.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "get_bits.h"
#include "internal.h"
#include "thread.h"

Go to the source code of this file.

Data Structures

struct  SheerVideoContext
 

Functions

static void decode_ca4i (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ca4p (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybr10i (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybr10 (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_yry10i (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_yry10 (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ca2i (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ca2p (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_c82i (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_c82p (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybyr (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_byryi (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_byry (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybri (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybr (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_aybri (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_aybr (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_argxi (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_argx (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgbxi (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgbx (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_argbi (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_argb (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgbi (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgb (AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static int build_vlc (VLC *vlc, const uint8_t *len, int count)
 
static int decode_frame (AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
 
static av_cold int decode_end (AVCodecContext *avctx)
 

Variables

static const uint8_t l_r_rgb [256]
 
static const uint8_t l_r_rgbi [256]
 
static const uint8_t l_g_rgbi [256]
 
static const uint8_t l_g_rgb [256]
 
static const uint8_t l_y_ybr [256]
 
static const uint8_t l_u_ybr [256]
 
static const uint8_t l_y_ybyr [256]
 
static const uint8_t l_u_ybyr [256]
 
static const uint8_t l_y_byry [256]
 
static const uint8_t l_u_byry [256]
 
static const uint8_t l_y_ybr10i [1024]
 
static const uint8_t l_y_ybr10 [1024]
 
static const uint8_t l_u_ybr10i [1024]
 
static const uint8_t l_u_ybr10 [1024]
 
static const uint8_t l_r_rgbx [1024]
 
static const uint8_t l_g_rgbx [1024]
 
static const uint8_t l_y_yry10 [1024]
 
static const uint8_t l_y_yry10i [1024]
 
static const uint8_t l_u_yry10 [1024]
 
static const uint8_t l_u_yry10i [1024]
 
static const uint8_t l_y_ybri [256]
 
static const uint8_t l_u_ybri [256]
 
static const uint8_t l_y_byryi [256]
 
static const uint8_t l_u_byryi [256]
 
static const uint8_t l_r_rgbxi [1024]
 
static const uint8_t l_g_rgbxi [1024]
 
AVCodec ff_sheervideo_decoder
 

Function Documentation

static void decode_ca4i ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1109 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ca4p ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1153 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ybr10i ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1241 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ybr10 ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1280 of file sheervideo.c.

Referenced by decode_frame().

static void decode_yry10i ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1356 of file sheervideo.c.

Referenced by decode_frame().

static void decode_yry10 ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1398 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ca2i ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1481 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ca2p ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1531 of file sheervideo.c.

Referenced by decode_frame().

static void decode_c82i ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1633 of file sheervideo.c.

Referenced by decode_frame().

static void decode_c82p ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1683 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ybyr ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1785 of file sheervideo.c.

Referenced by decode_frame().

static void decode_byryi ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1868 of file sheervideo.c.

Referenced by decode_frame().

static void decode_byry ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 1942 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ybri ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2025 of file sheervideo.c.

Referenced by decode_frame().

static void decode_ybr ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2093 of file sheervideo.c.

Referenced by decode_frame().

static void decode_aybri ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2169 of file sheervideo.c.

Referenced by decode_frame().

static void decode_aybr ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2247 of file sheervideo.c.

Referenced by decode_frame().

static void decode_argxi ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2335 of file sheervideo.c.

Referenced by decode_frame().

static void decode_argx ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2379 of file sheervideo.c.

Referenced by decode_frame().

static void decode_rgbxi ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2467 of file sheervideo.c.

Referenced by decode_frame().

static void decode_rgbx ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2506 of file sheervideo.c.

Referenced by decode_frame().

static void decode_argbi ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2582 of file sheervideo.c.

Referenced by decode_frame().

static void decode_argb ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2648 of file sheervideo.c.

Referenced by decode_frame().

static void decode_rgbi ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2724 of file sheervideo.c.

Referenced by decode_frame().

static void decode_rgb ( AVCodecContext avctx,
AVFrame p,
GetBitContext gb 
)
static

Definition at line 2783 of file sheervideo.c.

Referenced by decode_frame().

static int build_vlc ( VLC vlc,
const uint8_t len,
int  count 
)
static

Definition at line 2850 of file sheervideo.c.

Referenced by decode_frame().

static int decode_frame ( AVCodecContext avctx,
void data,
int got_frame,
AVPacket avpkt 
)
static

Definition at line 2873 of file sheervideo.c.

static av_cold int decode_end ( AVCodecContext avctx)
static

Definition at line 3148 of file sheervideo.c.

Variable Documentation

const uint8_t l_r_rgb[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8,
8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10,
10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12,
12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8,
8, 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 5, 5, 4, 4, 4,
}

Definition at line 39 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_r_rgbi[256]
static
Initial value:
= {
3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7,
8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8,
8, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 5, 5, 4, 4, 4,
}

Definition at line 58 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_g_rgbi[256]
static
Initial value:
= {
1, 3, 4, 5, 6, 7, 7, 8, 9, 9, 10, 10, 10, 10, 11, 11,
11, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14,
14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12,
11, 11, 11, 10, 10, 10, 9, 9, 9, 8, 8, 7, 6, 5, 5, 3,
}

Definition at line 77 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_g_rgb[256]
static
Initial value:
= {
2, 2, 4, 4, 6, 7, 9, 9, 10, 11, 11, 11, 12, 12, 12, 13,
13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
13, 13, 12, 12, 12, 11, 11, 11, 10, 9, 9, 8, 6, 4, 3, 3,
}

Definition at line 96 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_ybr[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12,
12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11,
11, 10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 8, 8,
8, 8, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 5, 4, 4, 3,
}

Definition at line 115 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_ybr[256]
static
Initial value:
= {
1, 2, 4, 6, 9, 10, 11, 11, 12, 12, 13, 13, 13, 14, 14, 14,
14, 14, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15,
14, 14, 14, 14, 14, 13, 13, 13, 12, 12, 11, 11, 10, 8, 5, 3,
}

Definition at line 134 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_ybyr[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8,
8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10,
10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8,
8, 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 5, 5, 4, 4, 4,
}

Definition at line 153 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_ybyr[256]
static
Initial value:
= {
1, 2, 4, 6, 8, 9, 10, 10, 11, 11, 12, 12, 12, 13, 13, 14,
14, 14, 14, 14, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 14, 14,
14, 14, 13, 13, 13, 12, 12, 11, 11, 10, 10, 9, 8, 7, 6, 3,
}

Definition at line 172 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_byry[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11,
11, 10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 8, 8,
8, 8, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 5, 4, 4, 3,
}

Definition at line 191 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_byry[256]
static
Initial value:
= {
1, 2, 4, 6, 8, 9, 9, 10, 11, 11, 12, 12, 13, 13, 13, 14,
14, 14, 14, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 14,
14, 14, 14, 13, 13, 12, 12, 12, 11, 11, 10, 9, 8, 7, 6, 3,
}

Definition at line 210 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_ybr10i[1024]
static

Definition at line 229 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_ybr10[1024]
static

Definition at line 296 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_ybr10i[1024]
static

Definition at line 363 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_ybr10[1024]
static

Definition at line 430 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_r_rgbx[1024]
static

Definition at line 497 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_g_rgbx[1024]
static

Definition at line 564 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_yry10[1024]
static

Definition at line 631 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_yry10i[1024]
static

Definition at line 698 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_yry10[1024]
static

Definition at line 765 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_yry10i[1024]
static

Definition at line 832 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_ybri[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8,
8, 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 5, 5, 5, 4, 3,
}

Definition at line 899 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_ybri[256]
static
Initial value:
= {
1, 3, 5, 6, 8, 8, 9, 10, 10, 11, 11, 12, 12, 13, 13, 13,
14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14,
14, 13, 13, 13, 12, 12, 11, 11, 10, 10, 9, 8, 8, 6, 5, 2,
}

Definition at line 918 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_y_byryi[256]
static
Initial value:
= {
3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10,
10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8,
8, 8, 8, 7, 7, 7, 7, 7, 7, 6, 6, 6, 5, 4, 4, 3,
}

Definition at line 937 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_u_byryi[256]
static
Initial value:
= {
1, 3, 4, 6, 6, 7, 8, 8, 9, 9, 10, 10, 10, 11, 11, 11,
12, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15,
15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15,
15, 15, 15, 15, 14, 14, 14, 14, 14, 13, 13, 13, 13, 12, 12, 12,
12, 11, 11, 11, 10, 10, 10, 9, 9, 8, 8, 7, 7, 5, 4, 3,
}

Definition at line 956 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_r_rgbxi[1024]
static

Definition at line 975 of file sheervideo.c.

Referenced by decode_frame().

const uint8_t l_g_rgbxi[1024]
static

Definition at line 1042 of file sheervideo.c.

Referenced by decode_frame().

AVCodec ff_sheervideo_decoder
Initial value:
= {
.name = "sheervideo",
.long_name = NULL_IF_CONFIG_SMALL("BitJazz SheerVideo"),
.priv_data_size = sizeof(SheerVideoContext),
.init_thread_copy = ONLY_IF_THREADS_ENABLED(decode_init_thread_copy),
.close = decode_end,
.decode = decode_frame,
}
static av_cold int decode_end(AVCodecContext *avctx)
Definition: sheervideo.c:3148
static int init_thread_copy(AVCodecContext *avctx)
Definition: tta.c:392
static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
Definition: sheervideo.c:2873
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
#define AV_CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading.
Definition: avcodec.h:1012
#define ONLY_IF_THREADS_ENABLED(x)
Define a function with only the non-default version specified.
Definition: internal.h:225
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators.
Definition: avcodec.h:956

Definition at line 3158 of file sheervideo.c.