The Progressive Fine Granularity Scalable (PFGS) coding is a promising technique for streaming video applications. However, since the original PFGS only chooses its references as framebased, it is very difficult to achieve a good trade-off between high coding efficiency and low drifting errors. In this paper, we present a flexible and effective scheme to control the PFGS coding at the macroblock level. Three INTER modes are first proposed for the enhancement macroblock coding. One of these modes provides a novel method to effectively reduce the drifting errors at low bit rates. Then, a decision-making mechanism based on temporal prediction is developed to choose the optimal coding mode for each enhancement macroblock, which offers a significant coding efficiency improvement for the fine granularity scalable coding scheme. Moreover, the proposed control mechanism can be easily implemented without any additional computation. The experimental results show that the proposed macroblock-based PFGS coding scheme can effectively reduce the drifting errors at low bit rates, while providing further coding efficiency improvement over the FGS and the original PFGS scheme at moderate or high bit rates.