Реалізація ідеї арифметичного кодування, Детальна інформація
Реалізація ідеї арифметичного кодування
static code_value low, high;
static long bits_to_follow;
/* Ii/aoie eiaeoaaiiy iioiea neiaie\x00B3a */
start_encoding()
{ low = 0;
high = Top_value;
bits_to_follow = 0;
}
/* Eiaeoaaiiy neiaieo */
encode_symbol(symbol,cum_freq)
int symbol;
int cum_freq[];
{ long range;
range = (long)(high-low)+1;
high = low + (range*cum_freq[symbol-1])/cum_freq[0]-1;
low = low + (range*cum_freq[symbol])/cum_freq[0];
for (;;) {
if (high
bit_plus_follow(0);
}
else if (low>=Half) {
bit_plus_follow(1);
low -= Half;
high -= Half;
}
else if (low>=First_qtr && high
{ bits_to_follow +=1;
low -= First_qtr;
high -= First_qtr;
}
static long bits_to_follow;
/* Ii/aoie eiaeoaaiiy iioiea neiaie\x00B3a */
start_encoding()
{ low = 0;
high = Top_value;
bits_to_follow = 0;
}
/* Eiaeoaaiiy neiaieo */
encode_symbol(symbol,cum_freq)
int symbol;
int cum_freq[];
{ long range;
range = (long)(high-low)+1;
high = low + (range*cum_freq[symbol-1])/cum_freq[0]-1;
low = low + (range*cum_freq[symbol])/cum_freq[0];
for (;;) {
if (high
bit_plus_follow(0);
}
else if (low>=Half) {
bit_plus_follow(1);
low -= Half;
high -= Half;
}
else if (low>=First_qtr && high
{ bits_to_follow +=1;
low -= First_qtr;
high -= First_qtr;
}
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021