47 static const int8_t
fibonacci[16] = { -34, -21, -13, -8, -5, -3, -2, -1,
48 0, 1, 2, 3, 5, 8, 13, 21 };
49 static const int8_t
exponential[16] = { -128, -64, -32, -16, -8, -4, -2, -1,
50 0, 1, 2, 4, 8, 16, 32, 64 };
52 #define MAX_FRAME_SIZE 32768
60 static void delta_decode(uint8_t *dst,
const uint8_t *src,
int src_size,
61 uint8_t *
state,
const int8_t *table,
int channels)
67 val = av_clip_uint8(val + table[d & 0xF]);
70 val = av_clip_uint8(val + table[d >> 4]);
78 static void raw_decode(uint8_t *dst,
const int8_t *src,
int src_size,
99 int hdr_size = is_compr ? 2 : 0;
114 esc->
fib_acc[1] = avpkt->
data[2+chan_size+1] + 128;
127 memcpy(esc->
data[0], &avpkt->
data[hdr_size], chan_size);
129 memcpy(esc->
data[1], &avpkt->
data[2*hdr_size+chan_size], chan_size);
160 for (ch = 0; ch < avctx->
channels; ch++) {
184 case CODEC_ID_8SVX_FIB:
187 case CODEC_ID_8SVX_EXP:
216 .id = CODEC_ID_8SVX_FIB,
228 .id = CODEC_ID_8SVX_EXP,
238 .
name =
"pcm_s8_planar",