You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-07-16 22:42:38 +02:00
dsicinav: K&R formatting cosmetics
This commit is contained in:
@ -108,13 +108,15 @@ static av_cold int cinvideo_decode_init(AVCodecContext *avctx)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cin_apply_delta_data(const unsigned char *src, unsigned char *dst, int size)
|
static void cin_apply_delta_data(const unsigned char *src, unsigned char *dst,
|
||||||
|
int size)
|
||||||
{
|
{
|
||||||
while (size--)
|
while (size--)
|
||||||
*dst++ += *src++;
|
*dst++ += *src++;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int cin_decode_huffman(const unsigned char *src, int src_size, unsigned char *dst, int dst_size)
|
static int cin_decode_huffman(const unsigned char *src, int src_size,
|
||||||
|
unsigned char *dst, int dst_size)
|
||||||
{
|
{
|
||||||
int b, huff_code = 0;
|
int b, huff_code = 0;
|
||||||
unsigned char huff_code_table[15];
|
unsigned char huff_code_table[15];
|
||||||
@ -122,7 +124,8 @@ static int cin_decode_huffman(const unsigned char *src, int src_size, unsigned c
|
|||||||
unsigned char *dst_end = dst + dst_size;
|
unsigned char *dst_end = dst + dst_size;
|
||||||
const unsigned char *src_end = src + src_size;
|
const unsigned char *src_end = src + src_size;
|
||||||
|
|
||||||
memcpy(huff_code_table, src, 15); src += 15;
|
memcpy(huff_code_table, src, 15);
|
||||||
|
src += 15;
|
||||||
|
|
||||||
while (src < src_end) {
|
while (src < src_end) {
|
||||||
huff_code = *src++;
|
huff_code = *src++;
|
||||||
@ -147,7 +150,8 @@ static int cin_decode_huffman(const unsigned char *src, int src_size, unsigned c
|
|||||||
return dst_cur - dst;
|
return dst_cur - dst;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int cin_decode_lzss(const unsigned char *src, int src_size, unsigned char *dst, int dst_size)
|
static int cin_decode_lzss(const unsigned char *src, int src_size,
|
||||||
|
unsigned char *dst, int dst_size)
|
||||||
{
|
{
|
||||||
uint16_t cmd;
|
uint16_t cmd;
|
||||||
int i, sz, offset, code;
|
int i, sz, offset, code;
|
||||||
@ -160,13 +164,15 @@ static int cin_decode_lzss(const unsigned char *src, int src_size, unsigned char
|
|||||||
if (code & (1 << i)) {
|
if (code & (1 << i)) {
|
||||||
*dst++ = *src++;
|
*dst++ = *src++;
|
||||||
} else {
|
} else {
|
||||||
cmd = AV_RL16(src); src += 2;
|
cmd = AV_RL16(src);
|
||||||
|
src += 2;
|
||||||
offset = cmd >> 4;
|
offset = cmd >> 4;
|
||||||
if ((int) (dst - dst_start) < offset + 1)
|
if ((int)(dst - dst_start) < offset + 1)
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
sz = (cmd & 0xF) + 2;
|
sz = (cmd & 0xF) + 2;
|
||||||
/* don't use memcpy/memmove here as the decoding routine (ab)uses */
|
/* don't use memcpy/memmove here as the decoding routine
|
||||||
/* buffer overlappings to repeat bytes in the destination */
|
* (ab)uses buffer overlappings to repeat bytes in the
|
||||||
|
* destination */
|
||||||
sz = FFMIN(sz, dst_end - dst);
|
sz = FFMIN(sz, dst_end - dst);
|
||||||
while (sz--) {
|
while (sz--) {
|
||||||
*dst = *(dst - offset - 1);
|
*dst = *(dst - offset - 1);
|
||||||
@ -179,7 +185,8 @@ static int cin_decode_lzss(const unsigned char *src, int src_size, unsigned char
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cin_decode_rle(const unsigned char *src, int src_size, unsigned char *dst, int dst_size)
|
static void cin_decode_rle(const unsigned char *src, int src_size,
|
||||||
|
unsigned char *dst, int dst_size)
|
||||||
{
|
{
|
||||||
int len, code;
|
int len, code;
|
||||||
unsigned char *dst_end = dst + dst_size;
|
unsigned char *dst_end = dst + dst_size;
|
||||||
@ -206,10 +213,11 @@ static int cinvideo_decode_frame(AVCodecContext *avctx,
|
|||||||
const uint8_t *buf = avpkt->data;
|
const uint8_t *buf = avpkt->data;
|
||||||
int buf_size = avpkt->size;
|
int buf_size = avpkt->size;
|
||||||
CinVideoContext *cin = avctx->priv_data;
|
CinVideoContext *cin = avctx->priv_data;
|
||||||
int i, y, palette_type, palette_colors_count, bitmap_frame_type, bitmap_frame_size, res = 0;
|
int i, y, palette_type, palette_colors_count,
|
||||||
|
bitmap_frame_type, bitmap_frame_size, res = 0;
|
||||||
|
|
||||||
palette_type = buf[0];
|
palette_type = buf[0];
|
||||||
palette_colors_count = AV_RL16(buf+1);
|
palette_colors_count = AV_RL16(buf + 1);
|
||||||
bitmap_frame_type = buf[3];
|
bitmap_frame_type = buf[3];
|
||||||
buf += 4;
|
buf += 4;
|
||||||
|
|
||||||
@ -227,13 +235,14 @@ static int cinvideo_decode_frame(AVCodecContext *avctx,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (i = 0; i < palette_colors_count; ++i) {
|
for (i = 0; i < palette_colors_count; ++i) {
|
||||||
cin->palette[buf[0]] = AV_RL24(buf+1);
|
cin->palette[buf[0]] = AV_RL24(buf + 1);
|
||||||
buf += 4;
|
buf += 4;
|
||||||
bitmap_frame_size -= 4;
|
bitmap_frame_size -= 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* note: the decoding routines below assumes that surface.width = surface.pitch */
|
/* note: the decoding routines below assumes that
|
||||||
|
* surface.width = surface.pitch */
|
||||||
switch (bitmap_frame_type) {
|
switch (bitmap_frame_type) {
|
||||||
case 9:
|
case 9:
|
||||||
cin_decode_rle(buf, bitmap_frame_size,
|
cin_decode_rle(buf, bitmap_frame_size,
|
||||||
@ -253,7 +262,8 @@ static int cinvideo_decode_frame(AVCodecContext *avctx,
|
|||||||
break;
|
break;
|
||||||
case 36:
|
case 36:
|
||||||
bitmap_frame_size = cin_decode_huffman(buf, bitmap_frame_size,
|
bitmap_frame_size = cin_decode_huffman(buf, bitmap_frame_size,
|
||||||
cin->bitmap_table[CIN_INT_BMP], cin->bitmap_size);
|
cin->bitmap_table[CIN_INT_BMP],
|
||||||
|
cin->bitmap_size);
|
||||||
cin_decode_rle(cin->bitmap_table[CIN_INT_BMP], bitmap_frame_size,
|
cin_decode_rle(cin->bitmap_table[CIN_INT_BMP], bitmap_frame_size,
|
||||||
cin->bitmap_table[CIN_CUR_BMP], cin->bitmap_size);
|
cin->bitmap_table[CIN_CUR_BMP], cin->bitmap_size);
|
||||||
cin_apply_delta_data(cin->bitmap_table[CIN_PRE_BMP],
|
cin_apply_delta_data(cin->bitmap_table[CIN_PRE_BMP],
|
||||||
@ -282,7 +292,8 @@ static int cinvideo_decode_frame(AVCodecContext *avctx,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((res = ff_reget_buffer(avctx, &cin->frame)) < 0) {
|
if ((res = ff_reget_buffer(avctx, &cin->frame)) < 0) {
|
||||||
av_log(cin->avctx, AV_LOG_ERROR, "delphinecinvideo: reget_buffer() failed to allocate a frame\n");
|
av_log(cin->avctx, AV_LOG_ERROR,
|
||||||
|
"delphinecinvideo: reget_buffer() failed to allocate a frame\n");
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -293,7 +304,8 @@ static int cinvideo_decode_frame(AVCodecContext *avctx,
|
|||||||
cin->bitmap_table[CIN_CUR_BMP] + y * cin->avctx->width,
|
cin->bitmap_table[CIN_CUR_BMP] + y * cin->avctx->width,
|
||||||
cin->avctx->width);
|
cin->avctx->width);
|
||||||
|
|
||||||
FFSWAP(uint8_t *, cin->bitmap_table[CIN_CUR_BMP], cin->bitmap_table[CIN_PRE_BMP]);
|
FFSWAP(uint8_t *, cin->bitmap_table[CIN_CUR_BMP],
|
||||||
|
cin->bitmap_table[CIN_PRE_BMP]);
|
||||||
|
|
||||||
if ((res = av_frame_ref(data, &cin->frame)) < 0)
|
if ((res = av_frame_ref(data, &cin->frame)) < 0)
|
||||||
return res;
|
return res;
|
||||||
@ -366,7 +378,6 @@ static int cinaudio_decode_frame(AVCodecContext *avctx, void *data,
|
|||||||
return avpkt->size;
|
return avpkt->size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
AVCodec ff_dsicinvideo_decoder = {
|
AVCodec ff_dsicinvideo_decoder = {
|
||||||
.name = "dsicinvideo",
|
.name = "dsicinvideo",
|
||||||
.type = AVMEDIA_TYPE_VIDEO,
|
.type = AVMEDIA_TYPE_VIDEO,
|
||||||
|
Reference in New Issue
Block a user