diff --git a/source/row_common.cc b/source/row_common.cc index f4e987621..83442496c 100644 --- a/source/row_common.cc +++ b/source/row_common.cc @@ -1654,8 +1654,8 @@ MAKEYUVCONSTANTS(V2020, YG, YB, UB, UG, VG, VR) #define CALC_RGB16 \ int32_t y1 = ((uint32_t)(y32 * yg) >> 16) + yb; \ - int8_t ui = u; \ - int8_t vi = v; \ + int8_t ui = (int8_t)u; \ + int8_t vi = (int8_t)v; \ ui -= 0x80; \ vi -= 0x80; \ int b16 = y1 + (ui * ub); \ diff --git a/source/row_win.cc b/source/row_win.cc index 7dccacc7f..c7c1ff60d 100644 --- a/source/row_win.cc +++ b/source/row_win.cc @@ -75,7 +75,7 @@ extern "C" { // Convert 8 pixels: 8 UV and 8 Y. #define YUVTORGB(yuvconstants) \ - xmm3 = _mm_sub_epi8(xmm3, _mm_set1_epi8(0x80)); \ + xmm3 = _mm_sub_epi8(xmm3, _mm_set1_epi8((char)0x80)); \ xmm4 = _mm_mulhi_epu16(xmm4, *(__m128i*)yuvconstants->kYToRgb); \ xmm4 = _mm_add_epi16(xmm4, *(__m128i*)yuvconstants->kYBiasToRgb); \ xmm0 = _mm_maddubs_epi16(*(__m128i*)yuvconstants->kUVToB, xmm3); \