Make type conversions explicit
This fixes a number of MSVC compiler warnings.
Change-Id: I046afb92f9350a534e66220846bd32e1701f4e87
diff --git a/aom_dsp/noise_model.c b/aom_dsp/noise_model.c
index 6c0cf62..a1287f7 100644
--- a/aom_dsp/noise_model.c
+++ b/aom_dsp/noise_model.c
@@ -1341,7 +1341,7 @@
int init_success = 1;
aom_flat_block_finder_t block_finder_full;
aom_flat_block_finder_t block_finder_chroma;
- const float kBlockNormalization = (1 << bit_depth) - 1;
+ const float kBlockNormalization = (float)((1 << bit_depth) - 1);
if (chroma_sub[0] != chroma_sub[1]) {
fprintf(stderr,
"aom_wiener_denoise_2d doesn't handle different chroma "
diff --git a/av1/common/av1_txfm.c b/av1/common/av1_txfm.c
index 9b2f5f9..1e66541 100644
--- a/av1/common/av1_txfm.c
+++ b/av1/common/av1_txfm.c
@@ -78,7 +78,7 @@
}
} else {
for (i = 0; i < size; i++) {
- arr[i] = (int32_t)clamp64((int64_t)arr[i] * (1 << (-bit)), INT32_MIN,
+ arr[i] = (int32_t)clamp64(((int64_t)1 << (-bit)) * arr[i], INT32_MIN,
INT32_MAX);
}
}
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index 37f2c2b..33ee8c6 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -604,8 +604,8 @@
double dist_mean = 0;
const int train_num = data_num;
for (int i = 0; i < train_num; ++i) {
- const double sse = inter_mode_data_sse[block_idx][i];
- const double dist = inter_mode_data_dist[block_idx][i];
+ const double sse = (double)inter_mode_data_sse[block_idx][i];
+ const double dist = (double)inter_mode_data_dist[block_idx][i];
const double residue_cost = inter_mode_data_residue_cost[block_idx][i];
const double ld = (sse - dist) / residue_cost;
dist_mean += dist;
diff --git a/examples/lightfield_bitstream_parsing.c b/examples/lightfield_bitstream_parsing.c
index d8ece41..5a6c5ba 100644
--- a/examples/lightfield_bitstream_parsing.c
+++ b/examples/lightfield_bitstream_parsing.c
@@ -183,8 +183,8 @@
size_t obu_size_offset =
(uint8_t *)frame_header_info.coded_tile_data - frame;
size_t length_field_size = frame_header_info.coded_tile_data_size;
- uint32_t frame_header_size =
- frame_header_info.extra_size - 1; // Remove ext-tile tile info.
+ // Remove ext-tile tile info.
+ uint32_t frame_header_size = (uint32_t)frame_header_info.extra_size - 1;
size_t bytes_to_copy =
obu_size_offset + length_field_size + frame_header_size;
diff --git a/test/noise_model_test.cc b/test/noise_model_test.cc
index 26c4aa6..9b7fff8 100644
--- a/test/noise_model_test.cc
+++ b/test/noise_model_test.cc
@@ -1296,8 +1296,9 @@
std::vector<double> measured_noise(kWidth * kHeight);
double var = 0;
- for (int x = 0; x<kWidth>> (c > 0); ++x) {
- for (int y = 0; y<kHeight>> (c > 0); ++y) {
+ const int shift = (c > 0);
+ for (int x = 0; x < (kWidth >> shift); ++x) {
+ for (int y = 0; y < (kHeight >> shift); ++y) {
const double diff = this->denoised_[c][y * this->stride_[c] + x] -
x * this->kScaleNoise;
var += diff * diff;
@@ -1316,9 +1317,10 @@
measured_psd_d.begin());
std::copy(this->noise_psd_[0].begin(), this->noise_psd_[0].end(),
noise_psd_d.begin());
- EXPECT_LT(aom_normalized_cross_correlation(
- &measured_psd_d[0], &noise_psd_d[0], noise_psd_d.size()),
- 0.35);
+ EXPECT_LT(
+ aom_normalized_cross_correlation(&measured_psd_d[0], &noise_psd_d[0],
+ (int)(noise_psd_d.size())),
+ 0.35);
}
}
}