[FFmpeg-devel] Official status of FFv1?
Peter B.
pb
Mon Mar 22 19:24:19 CET 2010
About FFv1 and colorspaces:
I'm not quite sure how to interpret the sourcecode.
It looks like it's able to cope with several colorspaces - and although
the case-statement (in ffv1.c / line #667) looks like it groups some
colorspaces together, I propose it simply uses it to distinguish between
RGB and YUV color models (and 8/16 bit), later on at line #755.
Here's the switch-block I'm talking about:
---------------------------------------------------------
switch(avctx->pix_fmt){
case PIX_FMT_YUV444P16:
case PIX_FMT_YUV422P16:
case PIX_FMT_YUV420P16:
if(avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL){
av_log(avctx, AV_LOG_ERROR, "More than 8 bit per component
is still experimental and no gurantee is yet made for future
compatibility\n"
"Use vstrict=-2 / -strict -2 to use it anyway.\n");
return -1;
}
if(avctx->bits_per_raw_sample <=8){
av_log(avctx, AV_LOG_ERROR, "bits_per_raw_sample invalid\n");
return -1;
}
s->version= 1;
case PIX_FMT_YUV444P:
case PIX_FMT_YUV422P:
case PIX_FMT_YUV420P:
case PIX_FMT_YUV411P:
case PIX_FMT_YUV410P:
s->colorspace= 0;
break;
case PIX_FMT_RGB32:
s->colorspace= 1;
break;
default:
av_log(avctx, AV_LOG_ERROR, "format not supported\n");
return -1;
}
---------------------------------------------------------
So, if I understood correctly, FFV1 *is* able to properly handle all
colorspaces mentioned in the statement above, right?
Yours,
Peter
More information about the ffmpeg-devel
mailing list