Mercurial > libavcodec.hg
changeset 12520:5915f4f0e172 libavcodec
RES_SM in WMV3 is really two flags, so split it in decoder
author | kostya |
---|---|
date | Sun, 26 Sep 2010 13:54:35 +0000 |
parents | 0b6bd91bbe57 |
children | db36486a6f89 |
files | vc1.c vc1.h |
diffstat | 2 files changed, 10 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/vc1.c Sun Sep 26 09:15:18 2010 +0000 +++ b/vc1.c Sun Sep 26 13:54:35 2010 +0000 @@ -306,11 +306,16 @@ { v->zz_8x4 = wmv2_scantableA; v->zz_4x8 = wmv2_scantableB; - v->res_sm = get_bits(gb, 2); //reserved - if (v->res_sm) + v->res_y411 = get_bits1(gb); + v->res_sprite = get_bits1(gb); + if (v->res_y411) { av_log(avctx, AV_LOG_ERROR, - "Reserved RES_SM=%i is forbidden\n", v->res_sm); + "Old interlaced mode is not supported\n"); + return -1; + } + if (v->res_sprite) { + av_log(avctx, AV_LOG_ERROR, "WMVP is not supported\n"); return -1; } }
--- a/vc1.h Sun Sep 26 09:15:18 2010 +0000 +++ b/vc1.h Sun Sep 26 13:54:35 2010 +0000 @@ -160,7 +160,8 @@ /** Simple/Main Profile sequence header */ //@{ - int res_sm; ///< reserved, 2b + int res_sprite; ///< reserved, sprite mode + int res_y411; ///< reserved, old interlaced mode int res_x8; ///< reserved int multires; ///< frame-level RESPIC syntax element present int res_fasttx; ///< reserved, always 1