comparison mjpegdec.c @ 7931:fd6c05a225aa libavcodec

Simplify pix_fmt_id instead of listing a subset of non-simplified ones.
author michael
date Sat, 27 Sep 2008 01:59:50 +0000
parents fae5e74eef1b
children 7729da3e4866
comparison
equal deleted inserted replaced
7930:fae5e74eef1b 7931:fd6c05a225aa
287 pix_fmt_id = (s->h_count[0] << 28) | (s->v_count[0] << 24) | 287 pix_fmt_id = (s->h_count[0] << 28) | (s->v_count[0] << 24) |
288 (s->h_count[1] << 20) | (s->v_count[1] << 16) | 288 (s->h_count[1] << 20) | (s->v_count[1] << 16) |
289 (s->h_count[2] << 12) | (s->v_count[2] << 8) | 289 (s->h_count[2] << 12) | (s->v_count[2] << 8) |
290 (s->h_count[3] << 4) | s->v_count[3]; 290 (s->h_count[3] << 4) | s->v_count[3];
291 av_log(s->avctx, AV_LOG_DEBUG, "pix fmt id %x\n", pix_fmt_id); 291 av_log(s->avctx, AV_LOG_DEBUG, "pix fmt id %x\n", pix_fmt_id);
292 if(!(pix_fmt_id & 0x10101010))
293 pix_fmt_id-= (pix_fmt_id & 0xF0F0F0F0)>>1;
294 if(!(pix_fmt_id & 0x01010101))
295 pix_fmt_id-= (pix_fmt_id & 0x0F0F0F0F)>>1;
296
292 switch(pix_fmt_id){ 297 switch(pix_fmt_id){
293 case 0x22222200:
294 case 0x11111100: 298 case 0x11111100:
295 if(s->rgb){ 299 if(s->rgb){
296 s->avctx->pix_fmt = PIX_FMT_RGB32; 300 s->avctx->pix_fmt = PIX_FMT_RGB32;
297 }else if(s->nb_components==3) 301 }else if(s->nb_components==3)
298 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV444P : PIX_FMT_YUVJ444P; 302 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV444P : PIX_FMT_YUVJ444P;
304 break; 308 break;
305 case 0x12111100: 309 case 0x12111100:
306 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV440P : PIX_FMT_YUVJ440P; 310 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV440P : PIX_FMT_YUVJ440P;
307 break; 311 break;
308 case 0x21111100: 312 case 0x21111100:
309 case 0x22121200:
310 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV422P : PIX_FMT_YUVJ422P; 313 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV422P : PIX_FMT_YUVJ422P;
311 break; 314 break;
312 case 0x22111100: 315 case 0x22111100:
313 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV420P : PIX_FMT_YUVJ420P; 316 s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV420P : PIX_FMT_YUVJ420P;
314 break; 317 break;