huffman: update to current coding style
This commit is contained in:
parent
125c6c0752
commit
f76e47877c
@ -31,7 +31,9 @@
|
|||||||
#define HNODE -1
|
#define HNODE -1
|
||||||
|
|
||||||
|
|
||||||
static void get_tree_codes(uint32_t *bits, int16_t *lens, uint8_t *xlat, Node *nodes, int node, uint32_t pfx, int pl, int *pos, int no_zero_count)
|
static void get_tree_codes(uint32_t *bits, int16_t *lens, uint8_t *xlat,
|
||||||
|
Node *nodes, int node,
|
||||||
|
uint32_t pfx, int pl, int *pos, int no_zero_count)
|
||||||
{
|
{
|
||||||
int s;
|
int s;
|
||||||
|
|
||||||
@ -44,11 +46,11 @@ static void get_tree_codes(uint32_t *bits, int16_t *lens, uint8_t *xlat, Node *n
|
|||||||
} else {
|
} else {
|
||||||
pfx <<= 1;
|
pfx <<= 1;
|
||||||
pl++;
|
pl++;
|
||||||
get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0, pfx, pl, pos,
|
get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0, pfx, pl,
|
||||||
no_zero_count);
|
pos, no_zero_count);
|
||||||
pfx |= 1;
|
pfx |= 1;
|
||||||
get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0+1, pfx, pl, pos,
|
get_tree_codes(bits, lens, xlat, nodes, nodes[node].n0 + 1, pfx, pl,
|
||||||
no_zero_count);
|
pos, no_zero_count);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -60,7 +62,8 @@ static int build_huff_tree(VLC *vlc, Node *nodes, int head, int flags)
|
|||||||
uint8_t xlat[256];
|
uint8_t xlat[256];
|
||||||
int pos = 0;
|
int pos = 0;
|
||||||
|
|
||||||
get_tree_codes(bits, lens, xlat, nodes, head, 0, 0, &pos, no_zero_count);
|
get_tree_codes(bits, lens, xlat, nodes, head, 0, 0,
|
||||||
|
&pos, no_zero_count);
|
||||||
return ff_init_vlc_sparse(vlc, 9, pos, lens, 2, 2, bits, 4, 4, xlat, 1, 1, 0);
|
return ff_init_vlc_sparse(vlc, 9, pos, lens, 2, 2, bits, 4, 4, xlat, 1, 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,7 +86,9 @@ int ff_huff_build_tree(AVCodecContext *avctx, VLC *vlc, int nb_codes,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (sum >> 31) {
|
if (sum >> 31) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "Too high symbol frequencies. Tree construction is not possible\n");
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
|
"Too high symbol frequencies. "
|
||||||
|
"Tree construction is not possible\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
qsort(nodes, nb_codes, sizeof(Node), cmp);
|
qsort(nodes, nb_codes, sizeof(Node), cmp);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user