Research Article

H.264 SVC Complexity Reduction Based on Likelihood Mode Decision

Pseudocode 1

If (MBencoded == Iframe of Base Layer)
 Calculate RDC of all modes;
 Prime Mode = RDCmin of all modes;
 Check for next MB;
 elseif (MBencoded == P/Bframe of Base Layer)
  Calculate RDC of BL_PRED, SKIP, 16 × 16, 16 × 8, 8 × 16, 8 × 8;
  Prime Mode = RDCmin of BL_PRED, SKIP, 16 × 16, 16 × 8, 8 × 16, 8 × 8;
  Check for next MB;
 elseif (MBencoded == Iframe of Enhancement Layer)
  Build a desired set of intermodes using (3) in highest degree of likeliness
  & add other intermodes not in to the desired set;
  If (Modecurrent == inter mode)
  
  if (Modefirst == SKIP∥INTER 16 × 16)
    Prime Mode = max of DIRECT 8 × 8, INTER 8 × 8;
    Check for next MB;
  elseif (Modefirst == INTER 16 × 8)
    Prime Mode = max of DIRECT 8 × 8, INTER 8 × 8, INTER 8 × 4;
    Check for next MB;
  elseif (Modefirst == INTER 8 × 16)
    Prime Mode = max of DIRECT 8 × 8, INTER 8 × 8, INTER 4 × 8;
    Check for next MB;
  else
    Prime Mode = max of all sub blocks;
    Check for next MB;
  
  else
    Calculate RDC of all intramodes of current MB;
    Prime Mode = RDCmin of all intramodes of current MB;
    Check for next MB;
else
 Calculate RDC of top, left, top right mode of current MB;
 Prime Mode = RDCmin of top, left, top right;
 Check for next MB;