comparison mdec.c @ 5986:da1e68b0e975 libavcodec

Fix missing chroma in version 3 STR. Closes issue 290 Patch by Alexander Strange: astrange ithinksw com
author benoit
date Wed, 05 Dec 2007 13:11:18 +0000
parents 470601203f44
children 0ed0d9d578ad
comparison
equal deleted inserted replaced
5985:51b4b51fa622 5986:da1e68b0e975
173 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); 173 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
174 return -1; 174 return -1;
175 } 175 }
176 p->pict_type= I_TYPE; 176 p->pict_type= I_TYPE;
177 p->key_frame= 1; 177 p->key_frame= 1;
178 a->last_dc[0]=
179 a->last_dc[1]=
180 a->last_dc[2]= 0;
181 178
182 a->bitstream_buffer= av_fast_realloc(a->bitstream_buffer, &a->bitstream_buffer_size, buf_size + FF_INPUT_BUFFER_PADDING_SIZE); 179 a->bitstream_buffer= av_fast_realloc(a->bitstream_buffer, &a->bitstream_buffer_size, buf_size + FF_INPUT_BUFFER_PADDING_SIZE);
183 for(i=0; i<buf_size; i+=2){ 180 for(i=0; i<buf_size; i+=2){
184 a->bitstream_buffer[i] = buf[i+1]; 181 a->bitstream_buffer[i] = buf[i+1];
185 a->bitstream_buffer[i+1]= buf[i ]; 182 a->bitstream_buffer[i+1]= buf[i ];
189 /* skip over 4 preamble bytes in stream (typically 0xXX 0xXX 0x00 0x38) */ 186 /* skip over 4 preamble bytes in stream (typically 0xXX 0xXX 0x00 0x38) */
190 skip_bits(&a->gb, 32); 187 skip_bits(&a->gb, 32);
191 188
192 a->qscale= get_bits(&a->gb, 16); 189 a->qscale= get_bits(&a->gb, 16);
193 a->version= get_bits(&a->gb, 16); 190 a->version= get_bits(&a->gb, 16);
191
192 a->last_dc[0]=
193 a->last_dc[1]=
194 a->last_dc[2]= 128;
194 195
195 // printf("qscale:%d (0x%X), version:%d (0x%X)\n", a->qscale, a->qscale, a->version, a->version); 196 // printf("qscale:%d (0x%X), version:%d (0x%X)\n", a->qscale, a->qscale, a->version, a->version);
196 197
197 for(a->mb_x=0; a->mb_x<a->mb_width; a->mb_x++){ 198 for(a->mb_x=0; a->mb_x<a->mb_width; a->mb_x++){
198 for(a->mb_y=0; a->mb_y<a->mb_height; a->mb_y++){ 199 for(a->mb_y=0; a->mb_y<a->mb_height; a->mb_y++){