It is far from complete, anyway : General: -------- Encoder: ######## * CABAC: check if adaptive model is really working. (I didn't see any improvments) * Field support : no and I probably won't do it. * Slice A/B/C (partion): is there any interest doing it ? (Shouldn't be hard). - extend x264_t - review x264_macroblock_write_cavlc * Intra encoding: - in I_4x4 mode, some predict mode aren't tested and not supported : when some pixels around are unavailble but could be predicted from others. (see the norm) * Inter coding: - D_4x8 D_8x4 and D_4x4 ME P block -> done but too slow. - B_SUB8x8 types. - better SKIP detection. - long terme ? - ... * B frame: B_L0/L1/BI/SKIP/DIRECT work (need more testing). -> adaptive placement of B-frames -> look at weighted prediction (should give better result) -> better analyse algo (as always ;) -> joint motion estimation of BI types * Speed issue (oprofile is your friend) - mc.c:30% and pixel.c:20% (mc is used by ME) - Motion Estimation -> try better/faster algos. - loop filter - stream writing (bs) - ... * Time spent: (test file: 720x576, mmx, mmxext) CAVLC: analyse=73% encode=15% write=4% filter=6% CABAC: analyse=69% encode=16% write=8% filter=5% * Limitations: - frame width/height %16 == 0 only. * ... Decoder: ######## * Currently decoder/* won't even compile, and anyway is unusable. Build: ###### * Finish to port gcc inlined asm to nasm file. Coding issue: ------------- * table : somes are duplicated -> find a solution (easy). * documentations ? (mouaaaarfff ;) * ...