  Video coding is a video compression technique that compresses the original
video sequence to produce a smaller archive file or reduce the transmission
bandwidth under constraints on the visual quality loss. Rate control (RC) plays
a critical role in video coding. It can achieve stable stream output in
practical applications, especially real-time video applications such as video
conferencing or game live streaming. Most RC algorithms either directly or
indirectly characterise the relationship between the bit rate (R) and
quantisation (Q) and then allocate bits to every coding unit so as to guarantee
the global bit rate and video quality level. This paper comprehensively reviews
the classic RC technologies used in international video standards of past
generations, analyses the mathematical models and implementation mechanisms of
various schemes, and compares the performance of recent state-of-the-art RC
algorithms. Finally, we discuss future directions and new application areas for
RC methods. We hope that this review can help support the development,
implementation, and application of RC for new video coding standards.
