Commit 5a18106f authored by Dmitry Kovalev's avatar Dmitry Kovalev
Browse files

Code cleanup.

Removing redundant 'extern' keywords. Moving VP9DX_BOOL_DECODER from .h
to .c file.

Change-Id: I5a3056cb3d33db7ed3c3f4629675aa8e21014e66
parent 9837bf4d
...@@ -17,10 +17,10 @@ int vp9_start_decode(BOOL_DECODER *br, ...@@ -17,10 +17,10 @@ int vp9_start_decode(BOOL_DECODER *br,
const unsigned char *source, const unsigned char *source,
unsigned int source_sz) { unsigned int source_sz) {
br->user_buffer_end = source + source_sz; br->user_buffer_end = source + source_sz;
br->user_buffer = source; br->user_buffer = source;
br->value = 0; br->value = 0;
br->count = -8; br->count = -8;
br->range = 255; br->range = 255;
if (source_sz && !source) if (source_sz && !source)
return 1; return 1;
...@@ -33,16 +33,27 @@ int vp9_start_decode(BOOL_DECODER *br, ...@@ -33,16 +33,27 @@ int vp9_start_decode(BOOL_DECODER *br,
void vp9_bool_decoder_fill(BOOL_DECODER *br) { void vp9_bool_decoder_fill(BOOL_DECODER *br) {
const unsigned char *bufptr; const unsigned char *bufptr = br->user_buffer;
const unsigned char *bufend; const unsigned char *bufend = br->user_buffer_end;
VP9_BD_VALUE value; VP9_BD_VALUE value = br->value;
int count; int count = br->count;
bufend = br->user_buffer_end; int shift = VP9_BD_VALUE_SIZE - 8 - (count + 8);
bufptr = br->user_buffer; int loop_end = 0;
value = br->value; int bits_left = (int)((bufend - bufptr)*CHAR_BIT);
count = br->count; int x = shift + CHAR_BIT - bits_left;
VP9DX_BOOL_DECODER_FILL(count, value, bufptr, bufend); if (x >= 0) {
count += VP9_LOTS_OF_BITS;
loop_end = x;
}
if (x < 0 || bits_left) {
while (shift >= loop_end) {
count += CHAR_BIT;
value |= (VP9_BD_VALUE)*bufptr++ << shift;
shift -= CHAR_BIT;
}
}
br->user_buffer = bufptr; br->user_buffer = bufptr;
br->value = value; br->value = value;
......
...@@ -19,11 +19,11 @@ ...@@ -19,11 +19,11 @@
typedef size_t VP9_BD_VALUE; typedef size_t VP9_BD_VALUE;
# define VP9_BD_VALUE_SIZE ((int)sizeof(VP9_BD_VALUE)*CHAR_BIT) #define VP9_BD_VALUE_SIZE ((int)sizeof(VP9_BD_VALUE)*CHAR_BIT)
/*This is meant to be a large, positive constant that can still be efficiently /*This is meant to be a large, positive constant that can still be efficiently
loaded as an immediate (on platforms like ARM, for example). loaded as an immediate (on platforms like ARM, for example).
Even relatively modest values like 100 would work fine.*/ Even relatively modest values like 100 would work fine.*/
# define VP9_LOTS_OF_BITS (0x40000000) #define VP9_LOTS_OF_BITS (0x40000000)
typedef struct { typedef struct {
const unsigned char *user_buffer_end; const unsigned char *user_buffer_end;
...@@ -150,6 +150,6 @@ static int bool_error(BOOL_DECODER *br) { ...@@ -150,6 +150,6 @@ static int bool_error(BOOL_DECODER *br) {
return 0; return 0;
} }
extern int vp9_decode_unsigned_max(BOOL_DECODER *br, int max); int vp9_decode_unsigned_max(BOOL_DECODER *br, int max);
#endif // VP9_DECODER_VP9_DBOOLHUFF_H_ #endif // VP9_DECODER_VP9_DBOOLHUFF_H_
...@@ -14,6 +14,6 @@ ...@@ -14,6 +14,6 @@
struct VP9Decompressor; struct VP9Decompressor;
extern void vp9_init_de_quantizer(struct VP9Decompressor *pbi); void vp9_init_de_quantizer(struct VP9Decompressor *pbi);
#endif // VP9_DECODER_VP9_DECODFRAME_H_ #endif // VP9_DECODER_VP9_DECODFRAME_H_
...@@ -11,34 +11,39 @@ ...@@ -11,34 +11,39 @@
#ifndef VP9_DECODER_VP9_DEQUANTIZE_H_ #ifndef VP9_DECODER_VP9_DEQUANTIZE_H_
#define VP9_DECODER_VP9_DEQUANTIZE_H_ #define VP9_DECODER_VP9_DEQUANTIZE_H_
#include "vp9/common/vp9_blockd.h" #include "vp9/common/vp9_blockd.h"
extern void vp9_dequant_idct_add_lossless_c(int16_t *input, const int16_t *dq, void vp9_dequant_idct_add_lossless_c(int16_t *input, const int16_t *dq,
unsigned char *pred, unsigned char *pred,
unsigned char *output, unsigned char *output,
int pitch, int stride); int pitch, int stride);
extern void vp9_dequant_dc_idct_add_lossless_c(int16_t *input, const int16_t *dq,
unsigned char *pred, void vp9_dequant_dc_idct_add_lossless_c(int16_t *input, const int16_t *dq,
unsigned char *output, unsigned char *pred,
int pitch, int stride, int dc); unsigned char *output,
extern void vp9_dequant_dc_idct_add_y_block_lossless_c(int16_t *q, int pitch, int stride, int dc);
const int16_t *dq,
unsigned char *pre, void vp9_dequant_dc_idct_add_y_block_lossless_c(int16_t *q,
unsigned char *dst, const int16_t *dq,
int stride, unsigned char *pre,
const int16_t *dc); unsigned char *dst,
extern void vp9_dequant_idct_add_y_block_lossless_c(int16_t *q, const int16_t *dq, int stride,
unsigned char *pre, const int16_t *dc);
unsigned char *dst,
int stride, void vp9_dequant_idct_add_y_block_lossless_c(int16_t *q, const int16_t *dq,
struct macroblockd *xd); unsigned char *pre,
extern void vp9_dequant_idct_add_uv_block_lossless_c(int16_t *q, const int16_t *dq, unsigned char *dst,
unsigned char *pre, int stride,
unsigned char *dst_u, struct macroblockd *xd);
unsigned char *dst_v,
int stride, void vp9_dequant_idct_add_uv_block_lossless_c(int16_t *q, const int16_t *dq,
struct macroblockd *xd); unsigned char *pre,
unsigned char *dst_u,
unsigned char *dst_v,
int stride,
struct macroblockd *xd);
void vp9_ht_dequant_idct_add_c(TX_TYPE tx_type, int16_t *input, const int16_t *dq, void vp9_ht_dequant_idct_add_c(TX_TYPE tx_type, int16_t *input, const int16_t *dq,
unsigned char *pred, unsigned char *dest, unsigned char *pred, unsigned char *dest,
...@@ -88,4 +93,4 @@ void vp9_dequant_idct_add_uv_block_4x4_inplace_c(int16_t *q, const int16_t *dq, ...@@ -88,4 +93,4 @@ void vp9_dequant_idct_add_uv_block_4x4_inplace_c(int16_t *q, const int16_t *dq,
int stride, int stride,
MACROBLOCKD *xd); MACROBLOCKD *xd);
#endif #endif // VP9_DECODER_VP9_DEQUANTIZE_H_
...@@ -40,7 +40,6 @@ const unsigned int vp9_prob_cost[256] = { ...@@ -40,7 +40,6 @@ const unsigned int vp9_prob_cost[256] = {
}; };
void vp9_start_encode(BOOL_CODER *br, unsigned char *source) { void vp9_start_encode(BOOL_CODER *br, unsigned char *source) {
br->lowvalue = 0; br->lowvalue = 0;
br->range = 255; br->range = 255;
br->value = 0; br->value = 0;
......
...@@ -14,8 +14,8 @@ ...@@ -14,8 +14,8 @@
struct macroblock; struct macroblock;
extern void vp9_build_block_offsets(struct macroblock *x); void vp9_build_block_offsets(struct macroblock *x);
extern void vp9_setup_block_ptrs(struct macroblock *x); void vp9_setup_block_ptrs(struct macroblock *x);
#endif // VP9_ENCODER_VP9_ENCODEFRAME_H_ #endif // VP9_ENCODER_VP9_ENCODEFRAME_H_
...@@ -11,12 +11,12 @@ ...@@ -11,12 +11,12 @@
#ifndef VP9_ENCODER_VP9_FIRSTPASS_H_ #ifndef VP9_ENCODER_VP9_FIRSTPASS_H_
#define VP9_ENCODER_VP9_FIRSTPASS_H_ #define VP9_ENCODER_VP9_FIRSTPASS_H_
extern void vp9_init_first_pass(VP9_COMP *cpi); void vp9_init_first_pass(VP9_COMP *cpi);
extern void vp9_first_pass(VP9_COMP *cpi); void vp9_first_pass(VP9_COMP *cpi);
extern void vp9_end_first_pass(VP9_COMP *cpi); void vp9_end_first_pass(VP9_COMP *cpi);
extern void vp9_init_second_pass(VP9_COMP *cpi); void vp9_init_second_pass(VP9_COMP *cpi);
extern void vp9_second_pass(VP9_COMP *cpi); void vp9_second_pass(VP9_COMP *cpi);
extern void vp9_end_second_pass(VP9_COMP *cpi); void vp9_end_second_pass(VP9_COMP *cpi);
#endif // VP9_ENCODER_VP9_FIRSTPASS_H_ #endif // VP9_ENCODER_VP9_FIRSTPASS_H_
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment