| OLD | NEW | 
|     1 /* |     1 /* | 
|     2  *  Copyright 2011 The LibYuv Project Authors. All rights reserved. |     2  *  Copyright 2011 The LibYuv Project Authors. All rights reserved. | 
|     3  * |     3  * | 
|     4  *  Use of this source code is governed by a BSD-style license |     4  *  Use of this source code is governed by a BSD-style license | 
|     5  *  that can be found in the LICENSE file in the root of the source |     5  *  that can be found in the LICENSE file in the root of the source | 
|     6  *  tree. An additional intellectual property rights grant can be found |     6  *  tree. An additional intellectual property rights grant can be found | 
|     7  *  in the file PATENTS. All contributing project authors may |     7  *  in the file PATENTS. All contributing project authors may | 
|     8  *  be found in the AUTHORS file in the root of the source tree. |     8  *  be found in the AUTHORS file in the root of the source tree. | 
|     9  */ |     9  */ | 
|    10  |    10  | 
| (...skipping 661 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   672   for (x = 0; x < width - 3; x += 4) { |   672   for (x = 0; x < width - 3; x += 4) { | 
|   673     uint8 ab = (src_argb[0] + src_argb[4] + src_argb[8] + src_argb[12]) >> 2; |   673     uint8 ab = (src_argb[0] + src_argb[4] + src_argb[8] + src_argb[12]) >> 2; | 
|   674     uint8 ag = (src_argb[1] + src_argb[5] + src_argb[9] + src_argb[13]) >> 2; |   674     uint8 ag = (src_argb[1] + src_argb[5] + src_argb[9] + src_argb[13]) >> 2; | 
|   675     uint8 ar = (src_argb[2] + src_argb[6] + src_argb[10] + src_argb[14]) >> 2; |   675     uint8 ar = (src_argb[2] + src_argb[6] + src_argb[10] + src_argb[14]) >> 2; | 
|   676     dst_u[0] = RGBToU(ar, ag, ab); |   676     dst_u[0] = RGBToU(ar, ag, ab); | 
|   677     dst_v[0] = RGBToV(ar, ag, ab); |   677     dst_v[0] = RGBToV(ar, ag, ab); | 
|   678     src_argb += 16; |   678     src_argb += 16; | 
|   679     dst_u += 1; |   679     dst_u += 1; | 
|   680     dst_v += 1; |   680     dst_v += 1; | 
|   681   } |   681   } | 
 |   682   // Odd width handling mimics 'any' function which replicates last pixel. | 
|   682   if ((width & 3) == 3) { |   683   if ((width & 3) == 3) { | 
|   683     uint8 ab = (src_argb[0] + src_argb[4] + src_argb[8]) / 3; |   684     uint8 ab = (src_argb[0] + src_argb[4] + src_argb[8] + src_argb[8]) >> 2; | 
|   684     uint8 ag = (src_argb[1] + src_argb[5] + src_argb[9]) / 3; |   685     uint8 ag = (src_argb[1] + src_argb[5] + src_argb[9] + src_argb[9]) >> 2; | 
|   685     uint8 ar = (src_argb[2] + src_argb[6] + src_argb[10]) / 3; |   686     uint8 ar = (src_argb[2] + src_argb[6] + src_argb[10] + src_argb[10]) >> 2; | 
|   686     dst_u[0] = RGBToU(ar, ag, ab); |   687     dst_u[0] = RGBToU(ar, ag, ab); | 
|   687     dst_v[0] = RGBToV(ar, ag, ab); |   688     dst_v[0] = RGBToV(ar, ag, ab); | 
|   688   } else if ((width & 3) == 2) { |   689   } else if ((width & 3) == 2) { | 
|   689     uint8 ab = (src_argb[0] + src_argb[4]) >> 1; |   690     uint8 ab = (src_argb[0] + src_argb[4]) >> 1; | 
|   690     uint8 ag = (src_argb[1] + src_argb[5]) >> 1; |   691     uint8 ag = (src_argb[1] + src_argb[5]) >> 1; | 
|   691     uint8 ar = (src_argb[2] + src_argb[6]) >> 1; |   692     uint8 ar = (src_argb[2] + src_argb[6]) >> 1; | 
|   692     dst_u[0] = RGBToU(ar, ag, ab); |   693     dst_u[0] = RGBToU(ar, ag, ab); | 
|   693     dst_v[0] = RGBToV(ar, ag, ab); |   694     dst_v[0] = RGBToV(ar, ag, ab); | 
|   694   } else if ((width & 3) == 1) { |   695   } else if ((width & 3) == 1) { | 
|   695     uint8 ab = src_argb[0]; |   696     uint8 ab = src_argb[0]; | 
| (...skipping 2004 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  2700     dst_rgb565 += twidth * 2; |  2701     dst_rgb565 += twidth * 2; | 
|  2701     width -= twidth; |  2702     width -= twidth; | 
|  2702   } |  2703   } | 
|  2703 } |  2704 } | 
|  2704 #endif |  2705 #endif | 
|  2705  |  2706  | 
|  2706 #ifdef __cplusplus |  2707 #ifdef __cplusplus | 
|  2707 }  // extern "C" |  2708 }  // extern "C" | 
|  2708 }  // namespace libyuv |  2709 }  // namespace libyuv | 
|  2709 #endif |  2710 #endif | 
| OLD | NEW |