| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2011 The WebRTC 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 167 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 178 { | 178 { | 
| 179   uint32_t    W_lower, W_upper; | 179   uint32_t    W_lower, W_upper; | 
| 180   uint32_t    W_tmp; | 180   uint32_t    W_tmp; | 
| 181   uint32_t    W_upper_LSB, W_upper_MSB; | 181   uint32_t    W_upper_LSB, W_upper_MSB; | 
| 182   uint32_t    streamval; | 182   uint32_t    streamval; | 
| 183   const uint8_t *stream_ptr; | 183   const uint8_t *stream_ptr; | 
| 184   uint32_t    cdf_tmp; | 184   uint32_t    cdf_tmp; | 
| 185   int16_t     candQ7; | 185   int16_t     candQ7; | 
| 186   int             k; | 186   int             k; | 
| 187 | 187 | 
|  | 188   // Position just past the end of the stream. STREAM_SIZE_MAX_60 instead of | 
|  | 189   // STREAM_SIZE_MAX (which is the size of the allocated buffer) because that's | 
|  | 190   // the limit to how much data is filled in. | 
|  | 191   const uint8_t* const stream_end = streamdata->stream + STREAM_SIZE_MAX_60; | 
|  | 192 | 
| 188   stream_ptr = streamdata->stream + streamdata->stream_index; | 193   stream_ptr = streamdata->stream + streamdata->stream_index; | 
| 189   W_upper = streamdata->W_upper; | 194   W_upper = streamdata->W_upper; | 
| 190   if (streamdata->stream_index == 0)   /* first time decoder is called for this 
     stream */ | 195   if (streamdata->stream_index == 0)   /* first time decoder is called for this 
     stream */ | 
| 191   { | 196   { | 
| 192     /* read first word from bytestream */ | 197     /* read first word from bytestream */ | 
|  | 198     if (stream_ptr + 3 >= stream_end) | 
|  | 199       return -1;  // Would read out of bounds. Malformed input? | 
| 193     streamval = *stream_ptr << 24; | 200     streamval = *stream_ptr << 24; | 
| 194     streamval |= *++stream_ptr << 16; | 201     streamval |= *++stream_ptr << 16; | 
| 195     streamval |= *++stream_ptr << 8; | 202     streamval |= *++stream_ptr << 8; | 
| 196     streamval |= *++stream_ptr; | 203     streamval |= *++stream_ptr; | 
| 197   } else { | 204   } else { | 
| 198     streamval = streamdata->streamval; | 205     streamval = streamdata->streamval; | 
| 199   } | 206   } | 
| 200 | 207 | 
| 201 | 208 | 
| 202   for (k = 0; k < N; k++) | 209   for (k = 0; k < N; k++) | 
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 270     /* shift interval to start at zero */ | 277     /* shift interval to start at zero */ | 
| 271     W_upper -= ++W_lower; | 278     W_upper -= ++W_lower; | 
| 272 | 279 | 
| 273     /* add integer to bitstream */ | 280     /* add integer to bitstream */ | 
| 274     streamval -= W_lower; | 281     streamval -= W_lower; | 
| 275 | 282 | 
| 276     /* renormalize interval and update streamval */ | 283     /* renormalize interval and update streamval */ | 
| 277     while ( !(W_upper & 0xFF000000) )    /* W_upper < 2^24 */ | 284     while ( !(W_upper & 0xFF000000) )    /* W_upper < 2^24 */ | 
| 278     { | 285     { | 
| 279       /* read next byte from stream */ | 286       /* read next byte from stream */ | 
|  | 287       if (stream_ptr + 1 >= stream_end) | 
|  | 288         return -1;  // Would read out of bounds. Malformed input? | 
| 280       streamval = (streamval << 8) | *++stream_ptr; | 289       streamval = (streamval << 8) | *++stream_ptr; | 
| 281       W_upper <<= 8; | 290       W_upper <<= 8; | 
| 282     } | 291     } | 
| 283   } | 292   } | 
| 284 | 293 | 
| 285   streamdata->stream_index = (int)(stream_ptr - streamdata->stream); | 294   streamdata->stream_index = (int)(stream_ptr - streamdata->stream); | 
| 286   streamdata->W_upper = W_upper; | 295   streamdata->W_upper = W_upper; | 
| 287   streamdata->streamval = streamval; | 296   streamdata->streamval = streamval; | 
| 288 | 297 | 
| 289   /* find number of bytes in original stream (determined by current interval wid
     th) */ | 298   /* find number of bytes in original stream (determined by current interval wid
     th) */ | 
| 290   if ( W_upper > 0x01FFFFFF ) | 299   if ( W_upper > 0x01FFFFFF ) | 
| 291     return streamdata->stream_index - 2; | 300     return streamdata->stream_index - 2; | 
| 292   else | 301   else | 
| 293     return streamdata->stream_index - 1; | 302     return streamdata->stream_index - 1; | 
| 294 } | 303 } | 
| OLD | NEW | 
|---|