This paper addresses video error concealment techniques, focusing on motion vector recovery of P-and B-frames, to improve the decoded quality of videos when bit stream data incurs transmission errors. First, we propose a dynamic programming (DP) technique to optimize the path cost in a multistage topology and evaluate the goodness of boundary matching and side smoothness of recovered macroblocks. However, due to the high computational complexity of DP, a suboptimal alternative enhanced with an adaptive Kalman filtering algorithm is adopted instead. Experiments show that by considering the side smoothness between adjacent recovered MBs, the proposed algorithm improves the reconstructed video quality by about 0.4-0.9 dB with a packet loss rate up to 15%, compared to a traditional boundary matching algorithm. In addition, subjective image inspection demonstrates the efficiency of the proposed algorithm in retaining the continuity of lines and image details.Index Terms-Boundary matching algorithm (BMA), dynamic programming (DP), greedy algorithm, Kalman filtering, video error concealment, video error resilience.