Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Xiph.Org
aom-rav1e
Commits
d8216b19
Commit
d8216b19
authored
May 02, 2012
by
John Koleszar
Committed by
Gerrit Code Review
May 02, 2012
Browse files
Options
Browse Files
Download
Plain Diff
Merge "Fix compiler warnings" into eider
parents
8b1a14d1
14c9fce8
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
62 additions
and
82 deletions
+62
-82
configure
configure
+4
-0
vp8/common/arm/variance_arm.c
vp8/common/arm/variance_arm.c
+11
-0
vp8/common/mbpitch.c
vp8/common/mbpitch.c
+13
-42
vp8/common/mfqe.c
vp8/common/mfqe.c
+3
-5
vp8/common/rtcd_defs.sh
vp8/common/rtcd_defs.sh
+1
-0
vp8/decoder/decodframe.c
vp8/decoder/decodframe.c
+1
-1
vp8/encoder/arm/neon/picklpf_arm.c
vp8/encoder/arm/neon/picklpf_arm.c
+0
-2
vp8/encoder/bitstream.c
vp8/encoder/bitstream.c
+1
-2
vp8/encoder/firstpass.c
vp8/encoder/firstpass.c
+0
-6
vp8/encoder/onyx_if.c
vp8/encoder/onyx_if.c
+21
-14
vp8/encoder/picklpf.c
vp8/encoder/picklpf.c
+0
-2
vp8/encoder/temporal_filter.c
vp8/encoder/temporal_filter.c
+1
-6
vp8_scalable_patterns.c
vp8_scalable_patterns.c
+1
-2
vpx/vpx_encoder.h
vpx/vpx_encoder.h
+5
-0
No files found.
configure
View file @
d8216b19
...
...
@@ -528,6 +528,10 @@ process_toolchain() {
check_add_cflags
-Wpointer-arith
check_add_cflags
-Wtype-limits
check_add_cflags
-Wcast-qual
check_add_cflags
-Wimplicit-function-declaration
check_add_cflags
-Wuninitialized
check_add_cflags
-Wunused-variable
check_add_cflags
-Wunused-but-set-variable
enabled extra_warnings
||
check_add_cflags
-Wno-unused-function
fi
...
...
vp8/common/arm/variance_arm.c
View file @
d8216b19
...
...
@@ -97,6 +97,17 @@ unsigned int vp8_sub_pixel_variance16x16_armv6
#if HAVE_NEON
extern
unsigned
int
vp8_sub_pixel_variance16x16_neon_func
(
const
unsigned
char
*
src_ptr
,
int
src_pixels_per_line
,
int
xoffset
,
int
yoffset
,
const
unsigned
char
*
dst_ptr
,
int
dst_pixels_per_line
,
unsigned
int
*
sse
);
unsigned
int
vp8_sub_pixel_variance16x16_neon
(
const
unsigned
char
*
src_ptr
,
...
...
vp8/common/mbpitch.c
View file @
d8216b19
...
...
@@ -11,45 +11,6 @@
#include "blockd.h"
typedef
enum
{
PRED
=
0
,
DEST
=
1
}
BLOCKSET
;
static
void
setup_macroblock
(
MACROBLOCKD
*
x
,
BLOCKSET
bs
)
{
int
block
;
unsigned
char
**
y
,
**
u
,
**
v
;
if
(
bs
==
DEST
)
{
y
=
&
x
->
dst
.
y_buffer
;
u
=
&
x
->
dst
.
u_buffer
;
v
=
&
x
->
dst
.
v_buffer
;
}
else
{
y
=
&
x
->
pre
.
y_buffer
;
u
=
&
x
->
pre
.
u_buffer
;
v
=
&
x
->
pre
.
v_buffer
;
}
for
(
block
=
0
;
block
<
16
;
block
++
)
/* y blocks */
{
x
->
block
[
block
].
offset
=
(
block
>>
2
)
*
4
*
x
->
dst
.
y_stride
+
(
block
&
3
)
*
4
;
}
for
(
block
=
16
;
block
<
20
;
block
++
)
/* U and V blocks */
{
x
->
block
[
block
+
4
].
offset
=
x
->
block
[
block
].
offset
=
((
block
-
16
)
>>
1
)
*
4
*
x
->
dst
.
uv_stride
+
(
block
&
1
)
*
4
;
}
}
void
vp8_setup_block_dptrs
(
MACROBLOCKD
*
x
)
{
int
r
,
c
;
...
...
@@ -90,8 +51,18 @@ void vp8_setup_block_dptrs(MACROBLOCKD *x)
void
vp8_build_block_doffsets
(
MACROBLOCKD
*
x
)
{
int
block
;
/* handle the destination pitch features */
setup_macroblock
(
x
,
DEST
);
setup_macroblock
(
x
,
PRED
);
for
(
block
=
0
;
block
<
16
;
block
++
)
/* y blocks */
{
x
->
block
[
block
].
offset
=
(
block
>>
2
)
*
4
*
x
->
dst
.
y_stride
+
(
block
&
3
)
*
4
;
}
for
(
block
=
16
;
block
<
20
;
block
++
)
/* U and V blocks */
{
x
->
block
[
block
+
4
].
offset
=
x
->
block
[
block
].
offset
=
((
block
-
16
)
>>
1
)
*
4
*
x
->
dst
.
uv_stride
+
(
block
&
1
)
*
4
;
}
}
vp8/common/mfqe.c
View file @
d8216b19
...
...
@@ -118,7 +118,7 @@ static unsigned int int_sqrt(unsigned int x)
#define USE_SSD
static
void
multiframe_quality_enhance_block
(
int
blksize
,
/* Currently only values supported are 16, 8
, 4
*/
int
blksize
,
/* Currently only values supported are 16, 8 */
int
qcurr
,
int
qprev
,
unsigned
char
*
y
,
...
...
@@ -140,9 +140,7 @@ static void multiframe_quality_enhance_block
int
uvblksize
=
blksize
>>
1
;
int
qdiff
=
qcurr
-
qprev
;
int
i
,
j
;
unsigned
char
*
yp
;
unsigned
char
*
ydp
;
int
i
;
unsigned
char
*
up
;
unsigned
char
*
udp
;
unsigned
char
*
vp
;
...
...
@@ -167,7 +165,7 @@ static void multiframe_quality_enhance_block
vsad
=
(
vp8_sad8x8
(
v
,
uv_stride
,
vd
,
uvd_stride
,
INT_MAX
)
+
32
)
>>
6
;
#endif
}
else
if
(
blksize
==
8
)
else
/*
if (blksize == 8)
*/
{
actd
=
(
vp8_variance8x8
(
yd
,
yd_stride
,
VP8_ZEROS
,
0
,
&
sse
)
+
32
)
>>
6
;
act
=
(
vp8_variance8x8
(
y
,
y_stride
,
VP8_ZEROS
,
0
,
&
sse
)
+
32
)
>>
6
;
...
...
vp8/common/rtcd_defs.sh
View file @
d8216b19
...
...
@@ -129,6 +129,7 @@ specialize vp8_build_intra_predictors_mby_s sse2 ssse3
prototype void vp8_build_intra_predictors_mbuv_s
"struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row, unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride"
specialize vp8_build_intra_predictors_mbuv_s sse2 ssse3
prototype void vp8_intra4x4_predict_d
"unsigned char *above, unsigned char *left, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left"
prototype void vp8_intra4x4_predict
"unsigned char *src, int src_stride, int b_mode, unsigned char *dst, int dst_stride"
specialize vp8_intra4x4_predict media
vp8_intra4x4_predict_media
=
vp8_intra4x4_predict_armv6
...
...
vp8/decoder/decodframe.c
View file @
d8216b19
...
...
@@ -508,7 +508,7 @@ static unsigned int read_available_partition_size(
{
VP8_COMMON
*
pc
=
&
pbi
->
common
;
const
unsigned
char
*
partition_size_ptr
=
token_part_sizes
+
i
*
3
;
unsigned
int
partition_size
;
unsigned
int
partition_size
=
0
;
ptrdiff_t
bytes_left
=
fragment_end
-
fragment_start
;
/* Calculate the length of this partition. The last partition
* size is implicit. If the partition size can't be read, then
...
...
vp8/encoder/arm/neon/picklpf_arm.c
View file @
d8216b19
...
...
@@ -22,11 +22,9 @@ void vp8_yv12_copy_partial_frame_neon(YV12_BUFFER_CONFIG *src_ybc,
unsigned
char
*
src_y
,
*
dst_y
;
int
yheight
;
int
ystride
;
int
border
;
int
yoffset
;
int
linestocopy
;
border
=
src_ybc
->
border
;
yheight
=
src_ybc
->
y_height
;
ystride
=
src_ybc
->
y_stride
;
...
...
vp8/encoder/bitstream.c
View file @
d8216b19
...
...
@@ -521,12 +521,11 @@ static void pack_inter_mode_mvs(VP8_COMP *const cpi)
const
MV_CONTEXT
*
mvc
=
pc
->
fc
.
mvc
;
MODE_INFO
*
m
=
pc
->
mi
,
*
ms
;
MODE_INFO
*
m
=
pc
->
mi
;
const
int
mis
=
pc
->
mode_info_stride
;
int
mb_row
=
-
1
;
int
prob_skip_false
=
0
;
ms
=
pc
->
mi
-
1
;
cpi
->
mb
.
partition_info
=
cpi
->
mb
.
pi
;
...
...
vp8/encoder/firstpass.c
View file @
d8216b19
...
...
@@ -2313,12 +2313,9 @@ void vp8_second_pass(VP8_COMP *cpi)
FIRSTPASS_STATS
this_frame
=
{
0
};
FIRSTPASS_STATS
this_frame_copy
;
double
this_frame_error
;
double
this_frame_intra_error
;
double
this_frame_coded_error
;
FIRSTPASS_STATS
*
start_pos
;
int
overhead_bits
;
if
(
!
cpi
->
twopass
.
stats_in
)
...
...
@@ -2331,12 +2328,9 @@ void vp8_second_pass(VP8_COMP *cpi)
if
(
EOF
==
input_stats
(
cpi
,
&
this_frame
))
return
;
this_frame_error
=
this_frame
.
ssim_weighted_pred_err
;
this_frame_intra_error
=
this_frame
.
intra_error
;
this_frame_coded_error
=
this_frame
.
coded_error
;
start_pos
=
cpi
->
twopass
.
stats_in
;
// keyframe and section processing !
if
(
cpi
->
twopass
.
frames_to_key
==
0
)
{
...
...
vp8/encoder/onyx_if.c
View file @
d8216b19
...
...
@@ -1030,8 +1030,10 @@ void vp8_set_speed_features(VP8_COMP *cpi)
static
void
alloc_raw_frame_buffers
(
VP8_COMP
*
cpi
)
{
#if VP8_TEMPORAL_ALT_REF
int
width
=
(
cpi
->
oxcf
.
Width
+
15
)
&
~
15
;
int
height
=
(
cpi
->
oxcf
.
Height
+
15
)
&
~
15
;
#endif
cpi
->
lookahead
=
vp8_lookahead_init
(
cpi
->
oxcf
.
Width
,
cpi
->
oxcf
.
Height
,
cpi
->
oxcf
.
lag_in_frames
);
...
...
@@ -3180,20 +3182,21 @@ static void encode_frame_to_data_rate
int
Loop
=
0
;
int
loop_count
;
int
this_q
;
int
last_zbin_oq
;
VP8_COMMON
*
cm
=
&
cpi
->
common
;
int
active_worst_qchanged
=
0
;
#if !(CONFIG_REALTIME_ONLY)
int
q_low
;
int
q_high
;
int
zbin_oq_high
;
int
zbin_oq_low
=
0
;
int
top_index
;
int
bottom_index
;
VP8_COMMON
*
cm
=
&
cpi
->
common
;
int
active_worst_qchanged
=
0
;
int
overshoot_seen
=
0
;
int
undershoot_seen
=
0
;
#endif
int
drop_mark
=
cpi
->
oxcf
.
drop_frames_water_mark
*
cpi
->
oxcf
.
optimal_buffer_level
/
100
;
int
drop_mark75
=
drop_mark
*
2
/
3
;
int
drop_mark50
=
drop_mark
/
4
;
...
...
@@ -3353,7 +3356,6 @@ static void encode_frame_to_data_rate
{
cpi
->
decimation_factor
=
1
;
}
//vpx_log("Encoder: Decimation Factor: %d \n",cpi->decimation_factor);
}
...
...
@@ -3595,7 +3597,8 @@ static void encode_frame_to_data_rate
// Determine initial Q to try
Q
=
vp8_regulate_q
(
cpi
,
cpi
->
this_frame_target
);
last_zbin_oq
=
cpi
->
zbin_over_quant
;
#if !(CONFIG_REALTIME_ONLY)
// Set highest allowed value for Zbin over quant
if
(
cm
->
frame_type
==
KEY_FRAME
)
...
...
@@ -3607,6 +3610,7 @@ static void encode_frame_to_data_rate
}
else
zbin_oq_high
=
ZBIN_OQ_MAX
;
#endif
// Setup background Q adjustment for error resilient mode.
// For multi-layer encodes only enable this for the base layer.
...
...
@@ -3615,18 +3619,20 @@ static void encode_frame_to_data_rate
vp8_compute_frame_size_bounds
(
cpi
,
&
frame_under_shoot_limit
,
&
frame_over_shoot_limit
);
#if !(CONFIG_REALTIME_ONLY)
// Limit Q range for the adaptive loop.
bottom_index
=
cpi
->
active_best_quality
;
top_index
=
cpi
->
active_worst_quality
;
q_low
=
cpi
->
active_best_quality
;
q_high
=
cpi
->
active_worst_quality
;
#endif
vp8_save_coding_context
(
cpi
);
loop_count
=
0
;
scale_and_extend_source
(
cpi
->
un_scaled_source
,
cpi
);
#if !(CONFIG_REALTIME_ONLY) && CONFIG_POSTPROC && !(CONFIG_TEMPORAL_DENOISING)
if
(
cpi
->
oxcf
.
noise_sensitivity
>
0
)
...
...
@@ -3690,7 +3696,6 @@ static void encode_frame_to_data_rate
*/
vp8_set_quantizer
(
cpi
,
Q
);
this_q
=
Q
;
// setup skip prob for costing in mode/mv decision
if
(
cpi
->
common
.
mb_no_coeff_skip
)
...
...
@@ -3813,9 +3818,10 @@ static void encode_frame_to_data_rate
if
(
cpi
->
compressor_speed
==
2
)
{
/* we don't do re-encoding in realtime mode
* if key frame is decided th
a
n we force it on next frame */
* if key frame is decided th
e
n we force it on next frame */
cpi
->
force_next_frame_intra
=
key_frame_decision
;
}
#if !(CONFIG_REALTIME_ONLY)
else
if
(
key_frame_decision
)
{
// Reset all our sizing numbers and recode
...
...
@@ -3853,6 +3859,7 @@ static void encode_frame_to_data_rate
continue
;
}
#endif
}
vp8_clear_system_state
();
...
...
@@ -3872,10 +3879,12 @@ static void encode_frame_to_data_rate
while
((
cpi
->
active_worst_quality
<
cpi
->
worst_quality
)
&&
(
over_size_percent
>
0
))
{
cpi
->
active_worst_quality
++
;
top_index
=
cpi
->
active_worst_quality
;
over_size_percent
=
(
int
)(
over_size_percent
*
0
.
96
);
// Assume 1 qstep = about 4% on frame size.
}
#if !(CONFIG_REALTIME_ONLY)
top_index
=
cpi
->
active_worst_quality
;
#endif
// If we have updated the active max Q do not call vp8_update_rate_correction_factors() this loop.
active_worst_qchanged
=
1
;
}
...
...
@@ -4034,9 +4043,7 @@ static void encode_frame_to_data_rate
// Clamp cpi->zbin_over_quant
cpi
->
zbin_over_quant
=
(
cpi
->
zbin_over_quant
<
zbin_oq_low
)
?
zbin_oq_low
:
(
cpi
->
zbin_over_quant
>
zbin_oq_high
)
?
zbin_oq_high
:
cpi
->
zbin_over_quant
;
//Loop = (Q != last_q) || (last_zbin_oq != cpi->zbin_over_quant);
Loop
=
Q
!=
last_q
;
last_zbin_oq
=
cpi
->
zbin_over_quant
;
}
else
#endif
...
...
vp8/encoder/picklpf.c
View file @
d8216b19
...
...
@@ -29,11 +29,9 @@ void vp8_yv12_copy_partial_frame_c(YV12_BUFFER_CONFIG *src_ybc,
unsigned
char
*
src_y
,
*
dst_y
;
int
yheight
;
int
ystride
;
int
border
;
int
yoffset
;
int
linestocopy
;
border
=
src_ybc
->
border
;
yheight
=
src_ybc
->
y_height
;
ystride
=
src_ybc
->
y_stride
;
...
...
vp8/encoder/temporal_filter.c
View file @
d8216b19
...
...
@@ -148,7 +148,6 @@ static int vp8_temporal_filter_find_matching_mb_c
{
MACROBLOCK
*
x
=
&
cpi
->
mb
;
int
step_param
;
int
further_steps
;
int
sadpb
=
x
->
sadperbit16
;
int
bestsme
=
INT_MAX
;
...
...
@@ -184,15 +183,11 @@ static int vp8_temporal_filter_find_matching_mb_c
// Further step/diamond searches as necessary
if
(
cpi
->
Speed
<
8
)
{
step_param
=
cpi
->
sf
.
first_step
+
(
cpi
->
Speed
>
5
);
further_steps
=
(
cpi
->
sf
.
max_step_search_steps
-
1
)
-
step_param
;
step_param
=
cpi
->
sf
.
first_step
+
(
cpi
->
Speed
>
5
);
}
else
{
step_param
=
cpi
->
sf
.
first_step
+
2
;
further_steps
=
0
;
}
/*cpi->sf.search_method == HEX*/
...
...
vp8_scalable_patterns.c
View file @
d8216b19
...
...
@@ -438,6 +438,7 @@ int main(int argc, char **argv) {
}
case
8
:
default:
{
// 3-layers
int
ids
[
4
]
=
{
0
,
2
,
1
,
2
};
...
...
@@ -469,8 +470,6 @@ int main(int argc, char **argv) {
VP8_EFLAG_NO_UPD_ENTROPY
;
break
;
}
default:
break
;
}
// Open input file
...
...
vpx/vpx_encoder.h
View file @
d8216b19
...
...
@@ -32,7 +32,12 @@ extern "C" {
#define VPX_ENCODER_H
#include "vpx_codec.h"
/*! Temporal Scalability: Maximum length of the sequence defining frame
* layer membership
*/
#define MAX_PERIODICITY 16
/*! Temporal Scalability: Maximum number of coding layers */
#define MAX_LAYERS 5
/*!\brief Current ABI version number
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment